Ansible es un motor de automatización de TI de código abierto que se utiliza para automatizar la organización de aplicaciones, la informatización del marco, el aprovisionamiento de la nube y numerosas tareas de administración de TI. Ansible mejora la adaptabilidad, la consistencia y la confiabilidad del clima de TI.
Podman es una plataforma de contenedorización de código abierto que empaqueta todas las dependencias para crear, enviar y ejecutar aplicaciones como contenedores Podman. El uso de la tecnología de virtualización de contenedores garantiza que una aplicación funcione sin problemas en cualquier entorno. La CLI de Podman puede implementar casi todos los comandos de la CLI de Docker.
[ A los lectores también les gustó: Integración mejorada de systemd con Podman 2.0 ]
En este artículo, le muestro cómo automatizar Podman con Ansible demostrando cómo automatizar varias operaciones en el nodo administrado. Estas son las siguientes operaciones que aprenderá a realizar en un nodo administrado:
- Instalar Podman
- Extraiga la imagen del servidor httpd
- Copie el código HTML en el directorio de destino
- Ejecute el contenedor httpd y expóngalo al público
- Iniciar el servidor web
Para este procedimiento, estoy usando Ansible 2.10.
Libro de jugadas para toda la configuración
Instalando Podman
En el package
módulo, asigne el nombre del software que necesita instalar. La etiqueta de estado se usa para describir la condición deseada del software, aquí uso presente , lo que significa instalar .
- name: installing podman
package:
name: "podman"
state: present
Extraiga la imagen del servidor httpd del repositorio de imágenes de Podman
Uso del Ansible podman
módulo de imagen, tira del httpd
imagen.
- name: Pull an image
containers.podman.podman_image:
name: httpd
Copiar página web
Usando la copy
módulo, copie la página web de origen a destino.
- name: Copying file into home
copy:
src: /root/ws1/index.html
dest: /home
Ejecute el contenedor httpd
Ejecute el contenedor en modo desconectado y adjunte el volumen después de exponer su puerto.
- 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/
Guía de ejecución para ejecutar los servicios de Podman
Confirme que su nodo administrado tiene Podman instalado
Podman no está instalado en este sistema, así que instálelo usando podman.yml
libro de jugadas.
podman --version
A continuación, ejecute el libro de jugadas:
ansible-playbook podman.yml
Confirme que Podman se instaló correctamente:
podman --version
Verifique que la imagen del servidor httpd se extrajo con éxito:
podman ps
Compruebe el servidor web:
curl [ip address]:[port no]
Después de seguir todos estos pasos, Podman estará configurado en sus sistemas y el sitio web estará alojado en el puerto 4444.
El archivo completo del libro de jugadas:
---
- 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/
[ ¿Necesita más información sobre Ansible? Realice un curso gratuito de descripción técnica de Red Hat. Ansible Essentials:descripción técnica de la simplicidad en la automatización. ]
Resumir
Ansible se puede usar para instalar Podman y para implementar contenedores de Podman, simplificando su vida de administrador de sistemas y agregando escalabilidad y flexibilidad a su entorno.