templates hinzugefügt

kraeml 2023-09-27 14:20:32 +00:00
parent 0214a8c4a7
commit 4c3a288fb9
1 changed files with 45 additions and 0 deletions

45
templates.md Normal file

@ -0,0 +1,45 @@
# Templates
In Ansible dienen Templates dazu, dynamische Konfigurationsdateien zu erstellen, indem sie Variablen und Jinja2-Vorlagen kombinieren. Dies ermöglicht die Anpassung von Konfigurationen basierend auf unterschiedlichen Umgebungen oder Variablenwerten.
Hier ist ein einfaches Beispiel, wie Templates in einem Ansible-Playbook verwendet werden:
Angenommen, Sie haben eine Vorlage für die Konfigurationsdatei eines Web-Servers namens `nginx.conf.j2` mit folgendem Inhalt:
```nginx
server {
listen 80;
server_name {{ server_name }};
root {{ document_root }};
index index.html;
}
```
In Ihrem Ansible-Playbook können Sie diese Vorlage verwenden, um eine spezifische Konfigurationsdatei für einen Web-Server zu erstellen. Hier ist ein Playbook-Auszug:
```yaml
---
- name: Konfiguriere den Web-Server
hosts: webserver
vars:
server_name: example.com
document_root: /var/www/html
tasks:
- name: Kopiere die nginx-Konfigurationsdatei
template:
src: nginx.conf.j2
dest: /etc/nginx/sites-available/example.com
notify:
- Restart nginx
handlers:
- name: Restart nginx
service:
name: nginx
state: restarted
```
In diesem Beispiel werden die Variablen `server_name` und `document_root` im Playbook definiert und dann in der Jinja2-Vorlage `nginx.conf.j2` verwendet. Wenn das Playbook ausgeführt wird, erstellt es eine Konfigurationsdatei für den Web-Server mit den angegebenen Werten.
Das ist eine grundlegende Verwendung von Templates in Ansible. Sie können Templates auch für komplexere Szenarien verwenden, um Konfigurationsdateien für verschiedene Dienste und Hosts zu generieren.