This repository is preserved for historical reasons. Last commit happened on 1st November 2014, almost a full year since it started. Now, project lives on under DebOps name, the corresponding repository can be found at https://github.com/debops/debops/.
DebOps is a set of Ansible playbooks designed to create and maintain a datacenter based on Debian GNU/Linux operating system. It is designed to be very flexible and automatically adapt to whatever environment you throw at it - whether these are real, hardware servers, KVM / VirtualBox / VMWare virtual machines, or OpenVZ / LXC containers - DebOps should manage them just as easily.
-
low-level server management - iptables firewall (using ferm), network interfaces with optional NAT, tcpwrappers, basic user management, its own implementation of PKI certificate infrastructure, optional support for SSH authentication with Monkeysphere;
-
advanced package management using APT, with ability to maintain local package cache (using apt-cacher-ng), create local APT repository with reprepro, maintain security updates with unattended-upgrades and apticron;
-
basic set of services: nginx web server, MySQL and PostgreSQL database servers, SKS OpenPGP/GPG key server, DNSmasq DNS/DHCP/PXE server, NFS server and client, Samba file server, Postfix mail server;
-
set of fully-fledged applications: ownCloud, phpIPAM, GitLab, GitLab CI, Mailman, Etherpad, with more to come;
It's hard to create a screenshot of what Linux server really looks like, so instead here you can see a gallery of what Ansible roles are currently included in DebOps and what's their relationship with each other. Below you can see a basic structure of the main DebOps playbook (click on the image to see it in full size):
Next graph shows Ansible role dependencies, represented by dashed lines. Here you can see what roles depend on each other. Dependencies of a role are executed before that role, and certain roles can be run multiple times by Ansible:
If you like the concept of a giant, general-purpose playbooks, but you don't necessarily like this particular implementation, I suggest that you check out other similar projects:
-
al3x/sovereign: an orginal inspiration for DebOps, playbook with multiple services focused on privacy and personal freedom. Based on Debian 7
-
edx/configuration: allows you to create and manage an instance of Open edX platform. Focused on AWS and cloud services. Based on Ubuntu 12.04
-
iceburg-net/ansible-pcd: Ansible provisioning and deployment framework, inspired by Open edX project. Based on Debian 7
-
jnv/ansible-fedora-infra: cloud infrastructure for Fedora Project, focused on Amazon/AWS services. Based on Fedora
-
pjan/the-ansibles: collection of Ansible roles which can be used to build a Cloudbox, similar to Sovereign. Based on Ubuntu 12.04
If you have or know a project that is not on the list and has similar scope, please let me know!