foxit
Well-Known Member
Hallo
Ich habe mir ein kleines Ansible Playbook geschrieben, welches mir meine Lets-Encrypt Zertifikate auf die jeweiligen Jails verteilt. In der Zwischenzeit, habe ich immer mehr Dateien in diesem Playbook, welche kopiert oder geprüft werden wollen. Auch die Anzahl der Jails ist gewachsen. Hier mal ein Auszug von einem kleinen Playbook [1].
Damit das alles automatisiert laufen kann, habe ich mit ein "Master" Playbook [2] gemacht, bei dem alle anderen eingebunden werden. Damit kann ich jetzt alles mit einem Kommando starten. Mein Problem ist jetzt, dass es sehr lange dauern kann, bis alle Playbook durchgelaufen sind. Bei 3-4 Jails, ist das kein Problem aber bei 20-30 (auch per ssh auf andere Hosts) dauert das schon seine Zeit...
Daher die Frage: Gibt es eine Möglichkeit, die importierten Playbook parallel zu starten oder bin ich da auf dem falschen Weg?
Danke
Ich habe mir ein kleines Ansible Playbook geschrieben, welches mir meine Lets-Encrypt Zertifikate auf die jeweiligen Jails verteilt. In der Zwischenzeit, habe ich immer mehr Dateien in diesem Playbook, welche kopiert oder geprüft werden wollen. Auch die Anzahl der Jails ist gewachsen. Hier mal ein Auszug von einem kleinen Playbook [1].
Damit das alles automatisiert laufen kann, habe ich mit ein "Master" Playbook [2] gemacht, bei dem alle anderen eingebunden werden. Damit kann ich jetzt alles mit einem Kommando starten. Mein Problem ist jetzt, dass es sehr lange dauern kann, bis alle Playbook durchgelaufen sind. Bei 3-4 Jails, ist das kein Problem aber bei 20-30 (auch per ssh auf andere Hosts) dauert das schon seine Zeit...
Daher die Frage: Gibt es eine Möglichkeit, die importierten Playbook parallel zu starten oder bin ich da auf dem falschen Weg?
Danke
Code:
1 ---
2 - hosts: mail
3
4 tasks:
5
6 - name: check folder
7 file:
8 path: "/usr/local/etc/letsencrypt/XXX"
9 state: directory
10
11 - name: copy files
12 copy:
13 src: "/usr/local/etc/getssl/XXX/ssl/{{ item.src }}"
14 dest: "/usr/local/etc/letsencrypt/XXX/{{ item.dest }}"
15 mode: "{{ item.mode }}"
16 with_items:
17 - { src: "letsencrypt-XXX.bundle", dest: "letsencrypt-XXX.bundle", mode: "0644" }
18 - { src: "letsencrypt-XXX.cert", dest: "letsencrypt-XXX.cert", mode: "0644" }
19 - { src: "letsencrypt-XXX.crt", dest: "letsencrypt-XXX.crt", mode: "0644" }
20 - { src: "letsencrypt-XXX.key", dest: "letsencrypt-XXX.key", mode: "0600" }
21 notify: restart smtpd
22
23 handlers:
24
25 - name: restart smtpd
26 service:
27 name: "smtpd"
28 state: "restarted"
Code:
1 ---
2 - import_playbook: letsencrypt-copy-cert-mail.yml
3 - import_playbook: letsencrypt-copy-cert-www.yml
4 - import_playbook: letsencrypt-copy-cert-xmpp.yml
Zuletzt bearbeitet: