templates hinzugefügt
parent
0214a8c4a7
commit
4c3a288fb9
|
@ -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.
|
Loading…
Reference in New Issue