Some restructuring (#3)

This commit is contained in:
n0trax 2017-09-06 12:05:22 +02:00 committed by Tobias Hachmer
parent ed03ad8573
commit d05233a26d
15 changed files with 18 additions and 19 deletions

View file

@ -3,11 +3,13 @@
Wir, die Freifunk MWU Community, nutzen Ansible um unsere Freifunk Server aufzusetzen und zu konfigurieren. In Wir, die Freifunk MWU Community, nutzen Ansible um unsere Freifunk Server aufzusetzen und zu konfigurieren. In
diesem Repository verwalten wir unsere Ansible Roles und Playbooks. diesem Repository verwalten wir unsere Ansible Roles und Playbooks.
Ein Server muss minimal vorbereitet sein, bevor dieser per Ansible z.B. zu einem Freifunk-Gateway gemacht werden kann. Insbesondere müssen die folgenden Voraussetzungen erfüllt sein (diese werden vom playbook `playbook-test-prereqs.yml` getestet): Ein Server muss minimal vorbereitet sein, bevor dieser per Ansible z.B. zu einem Freifunk-Gateway gemacht werden
kann. Insbesondere müssen die folgenden Voraussetzungen erfüllt sein (diese werden vom playbook `test-prereqs.yml` getestet):
- Ein dedizierter (v)server muss existieren und unter einer IPv4- und einer IPv6-Adresse öffentlich erreichbar sein. - Ein dedizierter (v)server muss existieren und unter einer IPv4- und einer IPv6-Adresse öffentlich erreichbar sein.
- Die Adressen müssen im MWU-DNS eingetragen sein. - Die Adressen müssen im MWU-DNS eingetragen sein.
- Als Betriebssystem muss das aktuelle Debian Stable installiert sein. - Als Betriebssystem muss Debian stretch installiert sein.
- Für ansible muss Python 2.5 oder Python 2.4 + python-simplejson installiert sein.
- Es muss einen User admin geben, auf den die Admins Zugriff haben; dieser muss Root-Zugang über sudo haben. - Es muss einen User admin geben, auf den die Admins Zugriff haben; dieser muss Root-Zugang über sudo haben.
Die Server werden mit ihren FQDNs im Ansible Inventory hinterlegt, bedenkt das für eure ssh-config. Die Server werden mit ihren FQDNs im Ansible Inventory hinterlegt, bedenkt das für eure ssh-config.
@ -132,7 +134,7 @@ ffrl_exit_server:
tunnel_ipv6_netmask: tunnel_ipv6_netmask:
``` ```
- Testen, ob alle Voraussetzungen erfüllt sind: `ansible-playbook playbook-test-prerequisites.yml` - Testen, ob alle Voraussetzungen erfüllt sind: `ansible-playbook playbooks/test-prerequisites.yml`
- Neues Gateway aufsetzen per `ansible-playbook playbook-gateways.yml` - Neues Gateway aufsetzen per `ansible-playbook playbooks/gateways.yml`
- Hierbei werden die definierten Rollen auch auf schon aufgesetzte Gateways angewandt, was unkritisch ist, weil wir unsere Rollen idempotent schreiben. - Hierbei werden die definierten Rollen auch auf schon aufgesetzte Gateways angewandt, was unkritisch ist, weil wir unsere Rollen idempotent schreiben.
- Um die Rollen nur auf das neu aufzusetzende Gateway anzuwenden: `ansible-playbook playbook-gateways.yml --limit=$FQDN` - Um die Rollen nur auf das neu aufzusetzende Gateway anzuwenden: `ansible-playbook playbooks/gateways.yml --limit=$FQDN`

View file

@ -1,9 +1,10 @@
[defaults] [defaults]
inventory = ./inventory/hosts inventory = ./inventory
retry_files_save_path = ~/.ansible/retry-files retry_files_enabled = False
#vault_password_file = ~/.ansible/vault-password-file #vault_password_file = ~/.ansible/vault-password-file
remote_tmp = $HOME/ansible_tmp remote_tmp = $HOME/ansible_tmp
ansible_managed = Ansible managed - don't edit this file! ansible_managed = Ansible managed - don't edit this file!
roles_path = ./roles
#[ssh_connection] #[ssh_connection]
#pipelining = True #pipelining = True

View file

@ -0,0 +1,2 @@
[ffmwu-build-servers]
milchreis.freifunk-mwu.de

1
inventory/ffmwu-gateways Normal file
View file

@ -0,0 +1 @@
[ffmwu-gateways]

2
inventory/ffmwu-servers Normal file
View file

@ -0,0 +1,2 @@
[ffmwu-servers]
milchreis.freifunk-mwu.de

View file

@ -1,11 +0,0 @@
[ffmwu-servers:children]
ffmwu-gateways
ffmwu-build-servers
[ffmwu-gateways]
[ffmwu-build-servers]
milchreis.freifunk-mwu.de
[test-vms]
local-test-vm.ffmwu.local ansible_host=192.168.137.7 require_dns=False

2
inventory/test-vms Normal file
View file

@ -0,0 +1,2 @@
[test-vms]
local-test-vm.ffmwu.local ansible_host=192.168.137.7 require_dns=False