Move inventory to separate directory
This commit is contained in:
parent
bbb7c76eef
commit
075b5bd008
13 changed files with 9 additions and 41 deletions
30
README.md
30
README.md
|
|
@ -2,32 +2,18 @@
|
|||
|
||||
## Vorraussetzungen
|
||||
|
||||
[Ansible][] wird nicht auf den Hosts installiert, sondern muss auf dem jeweiligen
|
||||
Rechner, von dem aus die Hosts verwaltet werden sollen installiert werden.
|
||||
[Ansible][] muß auf dem Rechner installiert sein, von dem aus die Hosts
|
||||
verwaltet werden sollen. Zu den Hosts ist SSH-Zugang mit sudo-Rechten
|
||||
erforderlich.
|
||||
|
||||
Ansible kann zusammen mit den benötigten Abhängigkeiten wie folgt installiert
|
||||
werden:
|
||||
[Ansible]: https://docs.ansible.com/ansible/
|
||||
|
||||
pip install -r requirements.txt
|
||||
|
||||
Unter NixOS kann alternativ über die default.nix eine nix-shell erzeugt werden:
|
||||
|
||||
nix-shell
|
||||
|
||||
[Ansible]: https://docs.ansible.com/ansible/
|
||||
|
||||
### SSH
|
||||
|
||||
Zur Konfiguration wird auf den Hosts jeweils ein Nutzer mit sudo-Rechten
|
||||
benötigt. Für diesen muss ein SSH-Key hinterlegt sein.
|
||||
|
||||
## Übernehmen der Änderungen für alle Hosts
|
||||
## Anwenden der Konfiguration auf alle Hosts
|
||||
|
||||
./site
|
||||
|
||||
Das Skript führt das Playbook `site.yml` mit dem Inventar `production` aus.
|
||||
|
||||
Zum Testen kann noch `-C` angehängt werden.
|
||||
Das Skript führt das Playbook `site.yml` aus. Zum Testen kann noch `-C`
|
||||
angehängt werden.
|
||||
|
||||
## Ansible Convenience
|
||||
|
||||
|
|
@ -37,4 +23,4 @@ Einschränken auf bestimmte Tags, z.B. `nginx`:
|
|||
|
||||
Einschränken auf bestimmte Hosts:
|
||||
|
||||
./site -l srv03,srv04
|
||||
./site -l srv01
|
||||
|
|
|
|||
16
default.nix
16
default.nix
|
|
@ -1,16 +0,0 @@
|
|||
with import <nixpkgs> {};
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ffhh-ansible-config";
|
||||
|
||||
buildInputs = [
|
||||
python27
|
||||
python27Packages.virtualenv
|
||||
];
|
||||
|
||||
shellHook = ''
|
||||
virtualenv ENV
|
||||
source ENV/bin/activate
|
||||
pip install -r requirements.txt
|
||||
'';
|
||||
}
|
||||
2
inventory/group_vars/all
Normal file
2
inventory/group_vars/all
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
ansible_python_interpreter: /usr/bin/python3
|
||||
basics_autoupdate_mail: backend@hamburg.freifunk.net
|
||||
3
inventory/group_vars/ffhh
Normal file
3
inventory/group_vars/ffhh
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
---
|
||||
prefix4: 10.112.0.0/18
|
||||
prefix6: 2a03:2267::/64
|
||||
1
inventory/group_vars/vms
Normal file
1
inventory/group_vars/vms
Normal file
|
|
@ -0,0 +1 @@
|
|||
basics_microcode_updates: False
|
||||
1
inventory/host_vars/gw03-new
Normal file
1
inventory/host_vars/gw03-new
Normal file
|
|
@ -0,0 +1 @@
|
|||
ansible_python_interpreter: /usr/bin/python2
|
||||
9
inventory/host_vars/srv01
Normal file
9
inventory/host_vars/srv01
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
basics_ssh_match_blocks:
|
||||
- match: User certsync
|
||||
options:
|
||||
- AuthorizedKeysFile /home/certsync/authorized_keys
|
||||
- ChrootDirectory /home/certsync/root
|
||||
- ForceCommand internal-sftp
|
||||
nginx_resolver: 192.76.134.90 212.12.50.158
|
||||
updates_tls_crt: /etc/letsencrypt/live/updates.hamburg.freifunk.net/fullchain.pem
|
||||
updates_tls_key: /etc/letsencrypt/live/updates.hamburg.freifunk.net/privkey.pem
|
||||
11
inventory/host_vars/srv02
Normal file
11
inventory/host_vars/srv02
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
basics_autoupdate_origins:
|
||||
- o=Node Source,n=${distro_codename}
|
||||
- o=Prosody,n=${distro_codename}
|
||||
- o=TorProject,n=${distro_codename}
|
||||
hopglass_frontend_tls_crt: /etc/letsencrypt/live/hopglass.hamburg.freifunk.net/fullchain.pem
|
||||
hopglass_frontend_tls_key: /etc/letsencrypt/live/hopglass.hamburg.freifunk.net/privkey.pem
|
||||
media_tls_crt: /etc/letsencrypt/live/media.hamburg.freifunk.net/fullchain.pem
|
||||
media_tls_key: /etc/letsencrypt/live/media.hamburg.freifunk.net/privkey.pem
|
||||
meta_tls_crt: /etc/letsencrypt/live/hamburg.freifunk.net/fullchain.pem
|
||||
meta_tls_key: /etc/letsencrypt/live/hamburg.freifunk.net/privkey.pem
|
||||
nginx_resolver: 127.0.0.1
|
||||
9
inventory/host_vars/srv03
Normal file
9
inventory/host_vars/srv03
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
certsync_host: srv01.hamburg.freifunk.net
|
||||
nginx_resolver: 80.252.105.162 80.252.105.194
|
||||
nginx_tls_versions: TLSv1.2
|
||||
updates_group: www-data
|
||||
updates_letsencrypt: srv01
|
||||
updates_owner: ffupdates
|
||||
updates_root: /var/www/updates
|
||||
updates_tls_crt: /etc/ssl/certsync/updates.hamburg.freifunk.net.crt
|
||||
updates_tls_key: /etc/ssl/certsync/updates.hamburg.freifunk.net.key
|
||||
2
inventory/host_vars/srv04
Normal file
2
inventory/host_vars/srv04
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
letsencrypt_webroot: /var/www/mail
|
||||
nginx_resolver: 80.252.105.162 80.252.105.194
|
||||
30
inventory/hosts
Normal file
30
inventory/hosts
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
[ffhh]
|
||||
srv01 ansible_host=srv01.hamburg.freifunk.net
|
||||
#srv02 ansible_host=srv02.hamburg.freifunk.net
|
||||
srv03 ansible_host=srv03.hamburg.freifunk.net
|
||||
|
||||
[certbot]
|
||||
srv01
|
||||
#srv02
|
||||
|
||||
[certsync]
|
||||
srv03
|
||||
|
||||
[media]
|
||||
#srv02
|
||||
|
||||
[meta]
|
||||
#srv02
|
||||
|
||||
[nginx]
|
||||
#gw03-new ansible_host=gw03-new.hamburg.freifunk.net
|
||||
|
||||
[updates]
|
||||
srv01
|
||||
srv03
|
||||
|
||||
[vms]
|
||||
#gw03-new
|
||||
srv01
|
||||
#srv02
|
||||
srv03
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
ansible
|
||||
netaddr
|
||||
2
site
2
site
|
|
@ -1,3 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
ansible-playbook site.yml -i production -bK $*
|
||||
ansible-playbook site.yml -i inventory -bK $*
|
||||
|
|
|
|||
Loading…
Reference in a new issue