Skip to content

Latest commit

Β 

History

16 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

AutoCloud Enterprise

Automated Private Cloud Infrastructure

Ubuntu Server Linux Ansible Docker Docker Compose Vagrant Prometheus Grafana

AutoCloud Enterprise Banner


πŸ“– Project Overview

AutoCloud Enterprise is a production-inspired Linux infrastructure project designed to demonstrate real-world Linux System Administration, Infrastructure as Code (IaC), DevOps automation, private cloud deployment, identity management, enterprise storage, monitoring, and security hardening.

The entire infrastructure is automatically deployed using Vagrant and Ansible, while modern applications are delivered through Docker Compose.

This project simulates the IT infrastructure of a medium-sized enterprise and follows industry best practices for automation, documentation, security, and maintainability.


πŸ“š Table of Contents


🎯 Objectives

The goal of this project is to design, automate, deploy, secure, monitor, and maintain a realistic enterprise infrastructure using Infrastructure as Code principles.

The project demonstrates how to:

  • Provision infrastructure automatically
  • Configure Linux servers with Ansible
  • Deploy containerized services
  • Manage enterprise identity
  • Configure centralized storage
  • Monitor infrastructure health
  • Apply security hardening
  • Automate backups
  • Validate infrastructure using automated tests

πŸš€ Key Features

  • Infrastructure as Code (IaC)
  • Automated Virtual Machine Provisioning
  • Enterprise Linux Administration
  • Configuration Management with Ansible
  • Private Cloud Platform
  • Docker & Docker Compose
  • Centralized Identity Management
  • Enterprise Storage (LVM + NFS)
  • Infrastructure Monitoring
  • Security Hardening
  • Backup & Disaster Recovery
  • Automated Infrastructure Validation

πŸ—οΈ Architecture Overview

The infrastructure consists of four machines.

Machine Operating System Purpose
Automation Workstation Host Machine Vagrant & Ansible Control Node
cloud01 Ubuntu Server Private Cloud Platform
idm01 Ubuntu Server Identity Management & Storage
monitor01 Ubuntu Server Monitoring & Security
client01 Windows Employee Workstation

Architecture Diagram

AutoCloud Enterprise Architecture

🌐 Network Topology

AutoCloud Enterprise Network Topology

For detailed information about the network architecture, IP addressing, communication flow, and security design, see the Network Design documentation.


πŸ›  Technology Stack

Category Technologies
Operating System Ubuntu Server
Virtualization VirtualBox, Vagrant
Automation Ansible
Containers Docker, Docker Compose
Cloud Platform Nextcloud
Reverse Proxy Nginx
Database MariaDB
Cache Redis
Identity Management FreeIPA
Storage NFS, LVM
Monitoring Prometheus, Grafana
Security Wazuh, Fail2Ban, Auditd
Version Control Git & GitHub

πŸ“‚ Repository Structure

AutoCloud-Enterprise/
β”‚
β”œβ”€β”€ assets/
β”‚   └── images/
β”‚       β”œβ”€β”€ banner.png
β”‚       β”œβ”€β”€ architecture.png
β”‚       └── dashboards/
β”‚
β”œβ”€β”€ ansible/
β”‚   β”œβ”€β”€ inventory/
β”‚   β”œβ”€β”€ roles/
β”‚   └── site.yml
β”‚
β”œβ”€β”€ docker/
β”‚
β”œβ”€β”€ documentation/
β”‚   β”œβ”€β”€ architecture.md
β”‚   β”œβ”€β”€ network.md
β”‚   β”œβ”€β”€ installation.md
β”‚   β”œβ”€β”€ security.md
β”‚   β”œβ”€β”€ backup.md
β”‚   └── troubleshooting.md
β”‚
β”œβ”€β”€ diagrams/
β”‚
β”œβ”€β”€ scripts/
β”‚
β”œβ”€β”€ tests/
β”‚
β”œβ”€β”€ screenshots/
β”‚
β”œβ”€β”€ Vagrantfile
β”‚
└── README.md

πŸ“– Documentation

Document Description
πŸ“ Architecture Infrastructure architecture, server roles, and design decisions
🌐 Network Design Network topology, IP addressing, DNS, and communication flow
πŸš€ Installation Guide Deployment instructions (Coming Soon)
πŸ”’ Security Guide Security hardening and best practices (Coming Soon)
πŸ’Ύ Backup & Recovery Backup strategy and disaster recovery (Coming Soon)
πŸ›  Troubleshooting Guide Common issues and solutions (Coming Soon)

πŸš€ Deployment Workflow

Clone the repository:

git clone https://github.com/WaelBalhoudi/AutoCloud-Enterprise.git

Enter the project directory:

cd AutoCloud-Enterprise

Provision the infrastructure:

vagrant up

Deploy and configure the environment:

ansible-playbook -i ansible/inventory/hosts.yml ansible/site.yml

After deployment, the complete infrastructure will be ready for use.


πŸ—ΊοΈ Project Roadmap

  • Phase 1 β€” Project Planning & Architecture
  • Phase 2 β€” Enterprise Network Design
  • Phase 3 β€” Infrastructure Provisioning & Networking
  • Phase 4 β€” Ansible Base Configuration
  • Phase 5 β€” Linux Administration
  • Phase 6 β€” Docker Engine Installation
  • Phase 7 β€” Private Cloud Deployment (Nextcloud)
  • Phase 8 β€” Identity Management
  • Phase 9 β€” Enterprise Storage
  • Phase 10 β€” Monitoring & Observability
  • Phase 11 β€” Security Hardening
  • Phase 12 β€” Backup & Disaster Recovery
  • Phase 13 β€” Infrastructure Testing
  • Phase 14 β€” Documentation Finalization
  • Phase 15 β€” GitHub Actions CI/CD
  • Phase 16 β€” Project Release

πŸ“ˆ Current Project Status

Current Phase: Phase 3 – Infrastructure Provisioning & Networking

Completed:

  • βœ… Enterprise architecture design
  • βœ… Network design
  • βœ… Professional documentation
  • βœ… Vagrant infrastructure
  • βœ… Static IP addressing
  • βœ… Ubuntu Server virtual machines
  • βœ… SSH connectivity
  • βœ… Ansible inventory
  • βœ… Infrastructure validation

Next Phase:

  • πŸ”„ Ansible Base Configuration

πŸ’Ό Skills Demonstrated

This project demonstrates practical experience in:

  • Linux System Administration
  • Infrastructure as Code (IaC)
  • Configuration Management
  • Virtualization
  • Docker & Containerization
  • Enterprise Networking
  • Identity & Access Management
  • Storage Administration
  • Monitoring & Observability
  • Security Hardening
  • Backup & Recovery
  • Automation
  • DevOps Practices
  • Documentation

πŸ“Έ Screenshots

Project screenshots will be added throughout development.

Examples include:

  • Infrastructure Diagram
  • Virtual Machines
  • Nextcloud Dashboard
  • Grafana Dashboards
  • Wazuh Dashboard
  • Terminal Automation
  • Ansible Playbook Execution
  • Backup & Restore Process

🀝 Contributing

Contributions, suggestions, and improvements are welcome.

If you discover a bug or have an idea for enhancement, feel free to open an issue or submit a pull request.


πŸ“„ License

This project is licensed under the MIT License.

About

Enterprise Linux infrastructure showcasing Infrastructure as Code, private cloud services, monitoring, identity management, storage, and security automation.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors