Bereitstellen von Dateivorlagen auf Remote-Hosts
Sobald Sie Ihre Ansible-Dateivorlagen erstellt haben, können Sie sie mit dem template
-Modul auf Remote-Hosts bereitstellen. So geht's:
Bereitstellen einer einzelnen Dateivorlage
Um eine einzelne Dateivorlage bereitzustellen, können Sie die folgende Ansible-Aufgabe verwenden:
- name: Deploy Nginx configuration
template:
src: nginx.conf.j2
dest: /etc/nginx/conf.d/default.conf
notify:
- restart nginx
In diesem Beispiel wird das template
-Modul verwendet, um die nginx.conf.j2
-Vorlagendatei an den Speicherort /etc/nginx/conf.d/default.conf
auf den Remote-Hosts bereitzustellen. Der notify
-Abschnitt löst einen Handler aus, um den Nginx-Dienst neu zu starten, nachdem die Konfigurationsdatei bereitgestellt wurde.
Bereitstellen mehrerer Dateivorlagen
Wenn Sie mehrere Dateivorlagen bereitstellen müssen, können Sie in Ihrem Ansible-Playbook eine Schleife verwenden:
- name: Deploy configuration files
template:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
loop:
- { src: "nginx.conf.j2", dest: "/etc/nginx/conf.d/default.conf" }
- { src: "app.conf.j2", dest: "/etc/app/app.conf" }
notify:
- restart nginx
- restart app
In diesem Beispiel wird das template
-Modul verwendet, um zwei Konfigurationsdateien, nginx.conf.j2
und app.conf.j2
, an ihre jeweiligen Ziele auf den Remote-Hosts zu deployen. Der loop
-Abschnitt ermöglicht es Ihnen, mehrere Dateivorlagen zur Bereitstellung anzugeben.
Nachdem die Konfigurationsdateien bereitgestellt wurden, löst der notify
-Abschnitt Handler aus, um den Nginx- und den Anwendungsdienst neu zu starten.
Umgang mit sensiblen Daten
Wenn Ihre Dateivorlagen sensible Daten wie Datenbankzugangsdaten oder API-Schlüssel enthalten, können Sie Ansible Vault verwenden, um diese Informationen sicher zu speichern und bereitzustellen. Ansible Vault ermöglicht es Ihnen, Ihre sensiblen Daten zu verschlüsseln, sodass sie nicht im Klartext in Ihren Playbooks oder Vorlagen gespeichert werden.
Indem Sie diese bewährten Verfahren für die Bereitstellung von Ansible-Dateivorlagen befolgen, können Sie Ihre Infrastrukturverwaltung optimieren und die Konsistenz über alle Remote-Hosts hinweg gewährleisten.