handler hinzugefügt
parent
e877526ecd
commit
0214a8c4a7
|
@ -0,0 +1,39 @@
|
|||
# Handler
|
||||
|
||||
Handler in Ansible dienen dazu, Aufgaben (Tasks) auszuführen, die nur dann aktiviert werden, wenn bestimmte vorherige Aufgaben in einem Playbook Änderungen auf einem Zielhost durchgeführt haben. Sie sind nützlich, um beispielsweise Dienste neu zu starten oder Konfigurationsdateien zu aktualisieren, nachdem eine Änderung vorgenommen wurde.
|
||||
|
||||
Hier ist ein einfaches Beispiel:
|
||||
|
||||
```yaml
|
||||
---
|
||||
- name: Konfiguriere und starte den Webserver
|
||||
hosts: webserver
|
||||
tasks:
|
||||
- name: Aktualisiere die Konfigurationsdatei
|
||||
template:
|
||||
src: nginx.conf.j2
|
||||
dest: /etc/nginx/nginx.conf
|
||||
notify: Restart nginx
|
||||
|
||||
- name: Stelle sicher, dass der Webserver läuft
|
||||
service:
|
||||
name: nginx
|
||||
state: started
|
||||
|
||||
handlers:
|
||||
- name: Restart nginx
|
||||
service:
|
||||
name: nginx
|
||||
state: restarted
|
||||
```
|
||||
|
||||
In diesem Playbook:
|
||||
|
||||
1. Zwei Tasks werden ausgeführt, um die Nginx-Konfigurationsdatei zu aktualisieren und den Webserver zu starten.
|
||||
|
||||
2. Der `notify` Parameter im ersten Task weist Ansible an, den Handler `Restart nginx` auszulösen, wenn die Konfigurationsdatei tatsächlich geändert wurde.
|
||||
|
||||
3. Der Handler `Restart nginx` wird definiert, um den Nginx-Service neu zu starten, wenn er ausgelöst wird.
|
||||
|
||||
Wenn die Konfigurationsdatei geändert wird, wird der Handler `Restart nginx` ausgeführt, um den Nginx-Service neu zu starten. Wenn keine Änderungen vorliegen, wird der Handler übersprungen. Handler bieten also eine Möglichkeit, Aufgaben abhängig von Änderungen auf dem Zielhost auszuführen.
|
||||
|
Loading…
Reference in New Issue