No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Andreas Linz beb73e9b89
Ignore src folders
1 month ago
build Update grafana to 6.2.0-beta1 and use Go modules build 1 month ago
roles Update almost all services 6 months ago
.gitignore Ignore src folders 1 month ago
Makefile Retab all the things 4 months ago Update state of service configurations 1 year ago
Vagrantfile Install Python2 which ansible requires 1 year ago
ansible.cfg Fix some deprecation warnings of ansible 1 year ago Add important option 1 year ago Sign certificates with custom root CA 1 year ago
hosts Fix SSH unreachable error 1 year ago
playbook.yml Remove goaccess log analyzer 1 year ago Merge backup and restore scripts 1 year ago
vagrant_playbook.yml Add missing dash 1 year ago
vault_vars.yml 🤐 1 year ago


A series of articles about configuration managment at the example of Ansible.

By using a configuration management tool, the procedure necessary for bringing up a new server or updating an existing one will be all documented in the provisioning scripts.


  • Inventory stores information about your servers as INI file
  • Playbook is the entry point for Ansible provisionings (imagine it as a set of tasks)
  • Task defines a single procedure to be executed, e.g. updating the package cache
  • Module typically is a abstraction of a system task (more generalized task?)
  • Role is used to organize playbooks and other files for reuse
  • Play names a complete provision process, from start to finish
  • Facts are variables containing information about the system, e.g. OS, hostname etc.
  • Handlers trigger service status changes


The following list of services should be configured and deployed automatically:

  • caddy
  • gitea
  • prometheus
  • grafana
  • jupyter
  • postgres
  • pgweb
  • netdata, node_exporter