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.
- Project Overview
- Objectives
- Key Features
- Architecture Overview
- Technology Stack
- Repository Structure
- Documentation
- Deployment Workflow
- Project Roadmap
- Current Project Status
- Skills Demonstrated
- Screenshots
- License
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
- 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
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 |
For detailed information about the network architecture, IP addressing, communication flow, and security design, see the Network Design documentation.
| 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 |
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
| 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) |
Clone the repository:
git clone https://github.com/WaelBalhoudi/AutoCloud-Enterprise.gitEnter the project directory:
cd AutoCloud-EnterpriseProvision the infrastructure:
vagrant upDeploy and configure the environment:
ansible-playbook -i ansible/inventory/hosts.yml ansible/site.ymlAfter deployment, the complete infrastructure will be ready for use.
- 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 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
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
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
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.
This project is licensed under the MIT License.


