Ansible ist eine Open-Source-IT-Automatisierungs-Engine, die zur Automatisierung der Anwendungsorganisation, Framework-Computerisierung, Cloud-Bereitstellung und zahlreicher IT-Verwaltungsaufgaben verwendet wird. Ansible verbessert die Anpassungsfähigkeit, Konsistenz und Zuverlässigkeit des IT-Klimas.
Podman ist eine Open-Source-Containerisierungsplattform, die alle Abhängigkeiten zum Erstellen, Versenden und Ausführen von Anwendungen als Podman-Container verpackt. Die Verwendung von Container-Virtualisierungstechnologie stellt sicher, dass eine Anwendung in jeder Umgebung nahtlos funktioniert. Die Podman-CLI kann fast alle Befehle der Docker-CLI implementieren.
[ Den Lesern gefiel auch: Verbesserte systemd-Integration mit Podman 2.0 ]
In diesem Artikel zeige ich Ihnen, wie Sie Podman mit Ansible automatisieren, indem ich Ihnen zeige, wie Sie verschiedene Vorgänge auf dem verwalteten Knoten automatisieren. Dies sind die folgenden Vorgänge, die Sie auf einem verwalteten Knoten ausführen können:
- Installieren Sie Podman
- Pull das httpd-Server-Image
- Kopieren Sie den HTML-Code in das Zielverzeichnis
- Führen Sie den httpd-Container aus und stellen Sie ihn der Öffentlichkeit zur Verfügung
- Webserver starten
Für dieses Verfahren verwende ich Ansible 2.10.
Playbook für das gesamte Setup
Podman installieren
Im package
weisen Sie dem Modul den Namen der Software zu, die Sie installieren müssen. Das Zustands-Tag wird verwendet, um den gewünschten Zustand der Software zu beschreiben, hier verwende ich vorhanden , was installieren bedeutet .
- name: installing podman
package:
name: "podman"
state: present
Ziehen Sie das httpd-Server-Image aus dem Podman-Image-Repository
Verwenden des Ansible podman
image-Modul ziehen Sie den httpd
Bild.
- name: Pull an image
containers.podman.podman_image:
name: httpd
Webseite kopieren
Mit dem copy
Modul, kopieren Sie die Webseite von der Quelle zum Ziel.
- name: Copying file into home
copy:
src: /root/ws1/index.html
dest: /home
Führen Sie den httpd-Container aus
Führen Sie den Container im getrennten Modus aus und hängen Sie das Volume an ihn an, nachdem Sie seinen Port freigegeben haben.
- name: Re-create a redis container
containers.podman.podman_container:
name: sarthak
image: httpd
state: started
detach: true
exposed_ports:
- 80
ports:
- 4444:80
volumes: /home/:/usr/local/apache2/htdocs/
Laufendes Playbook zum Ausführen von Podman-Diensten
Bestätigen Sie, dass auf Ihrem verwalteten Knoten Podman installiert ist
Podman ist auf diesem System nicht installiert, installieren Sie es also mithilfe von podman.yml
Spielbuch.
podman --version
Führen Sie als Nächstes das Playbook aus:
ansible-playbook podman.yml
Bestätigen Sie, dass Podman erfolgreich installiert wurde:
podman --version
Überprüfen Sie, ob das httpd-Server-Image erfolgreich abgerufen wurde:
podman ps
Prüfen Sie den Webserver:
curl [ip address]:[port no]
Nachdem Sie alle diese Schritte ausgeführt haben, wird Podman in Ihren Systemen konfiguriert und die Website wird auf dem Port 4444 gehostet.
Die vollständige Playbook-Datei:
---
- hosts: podman
tasks:
- name: installing podman
package:
name: "podman"
state: present
- name: Pull an image
containers.podman.podman_image:
name: httpd
- name: Copying file into home
copy:
src: /root/ws1/index.html
dest: /home
- name: Re-create a redis container
containers.podman.podman_container:
name: sarthak
image: httpd
state: started
detach: true
exposed_ports:
- 80
ports:
- 4444:80
volumes: /home/:/usr/local/apache2/htdocs/
[ Brauchen Sie mehr zu Ansible? Nehmen Sie an einem kostenlosen technischen Überblickskurs von Red Hat teil. Ansible Essentials:Einfachheit in der Automatisierung Technischer Überblick. ]
Abschluss
Ansible kann zum Installieren von Podman und zum Bereitstellen von Podman-Containern verwendet werden, was Ihr Systemadministratorleben vereinfacht und Ihrer Umgebung Skalierbarkeit und Flexibilität verleiht.