Automatisiertes Software-Deployment mit Ansible auf Linux-Systemen
Ansible ist ein Open-Source-Tool für Konfigurationsmanagement und Softwarebereitstellung. Diese Anleitung zeigt, wie du Ansible einrichtest und für Deployment-Aufgaben nutzt.
1. Ansible installieren
- Für Debian/Ubuntu:
- Update das System:
sudo apt update && sudo apt upgrade
- Installiere Ansible:
sudo apt install ansible
- Update das System:
- Für RedHat/CentOS:
- Installiere das EPEL-Repository:
sudo yum install epel-release
- Installiere Ansible:
sudo yum install ansible
- Installiere das EPEL-Repository:
2. Inventardatei erstellen
- Erstelle eine Datei namens
inventory
, um die Zielsysteme zu definieren:[webserver] 192.168.1.101 ansible_user=root 192.168.1.102 ansible_user=root
- Füge Gruppen hinzu, um Server zu organisieren (z. B. webserver, dbserver).
3. Einfacher Ansible-Befehl
- Teste die Verbindung zu den Zielsystemen:
- Befehl:
ansible all -i inventory -m ping
- Befehl:
- Führe einen Befehl auf allen Zielsystemen aus:
- Befehl:
ansible all -i inventory -a "uptime"
- Befehl:
4. Playbooks erstellen
- Erstelle ein Playbook namens
deploy.yml
:- name: Beispiel Deployment hosts: webserver tasks: - name: Installiere Apache apt: name: apache2 state: present update_cache: yes
- Führe das Playbook aus:
- Befehl:
ansible-playbook -i inventory deploy.yml
- Befehl:
5. Tipps zur Optimierung
- Verwende Variablen, um Playbooks dynamisch zu gestalten.
- Nutze Rollen, um Playbooks in wiederverwendbare Komponenten zu unterteilen.
- Setze Tags ein, um bestimmte Teile eines Playbooks auszuführen:
- Befehl:
ansible-playbook -i inventory deploy.yml --tags "apache"
- Befehl: