GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Ejecución en seco de Ansible Playbook:Ejecutar Playbook en modo de comprobación

Introducción

Ansible es una herramienta de Infraestructura como código que le permite usar un solo nodo de control para monitorear y administrar servidores remotos.

Ansible le permite administrar servidores remotos mediante la creación de libros de jugadas, que contienen listas de tareas para que las realicen los servidores remotos. También proporciona un modo de verificación en el que puede probar un libro de jugadas.

Este tutorial le muestra cómo realizar una ejecución en seco de un libro de jugadas de Ansible mediante el uso de la función de modo de verificación integrada.

Requisitos previos

  • Un sistema Linux (estamos usando Ubuntu 20.04)
  • Acceso a la línea de comandos/ventana de terminal
  • Ansible instalado y configurado (consulte nuestras guías sobre Instalación de Ansible en Windows o Instalación de Ansible en Ubuntu)

Cuándo usar Ansible Dry Run

Uso de la prueba de Ansible La función permite a los usuarios ejecutar un libro de jugadas sin realizar cambios en los servidores. Utiliza el modo de verificación incorporado para probar un libro de estrategias en busca de errores antes de la ejecución.

Esta opción es muy útil cuando se ejecutan libros de jugadas complejos que contienen comandos que realizan cambios importantes en los servidores. Usando el ejercicio de prueba función ayuda a encontrar errores fatales antes de que apaguen los servidores y los dejen inutilizables.

Ansible Dry Run:ejecución de libros de jugadas en modo de comprobación

La forma más fácil de hacer una prueba en Ansible es usar el check mode . Este modo funciona como --syntax-check comando, pero a nivel de libro de jugadas.

Modo de verificación

Usa el -C o --check marca con el ansible-playbook Comando para hacer una ejecución en seco de un libro de jugadas de Ansible:

ansible-playbook playbook.yaml --check

Esto produce el mismo resultado que ejecutar el libro de jugadas, excepto que informará sobre los cambios que habría realizado en lugar de hacerlos.

Otra forma de ejecutar un libro de jugadas en modo de verificación es agregar el check_mode parámetro al contenido del libro de jugadas:

---
- hosts: all
  tasks:
  - name: A command to run in check mode
    command: /your/command
    check_mode: on

Opción de diferencias

Uso de --diff marca con el ansible-playbook El comando informa qué cambios se realizaron al ejecutar el libro de jugadas:

ansible-playbook playbook.yaml --diff

Uso de --diff flag produce una salida larga, por lo que se utiliza mejor cuando se buscan cambios en un solo host.

Combinando verificación y diferencia

Combinando el --check y --diff marca con el ansible-playbook El comando le brinda una descripción más detallada de todos los cambios realizados por su libro de jugadas:

ansible-playbook playbook.yaml --check --diff

Esto produce el mismo resultado detallado que obtienes cuando usas --diff marca, pero sin ejecutar realmente ninguno de los cambios.

Cuándo no usar Ansible Dry Run

Usando el ejercicio de prueba La función es útil para la administración de configuración básica nodo por nodo.

Sin embargo, si su libro de jugadas contiene tareas condicionales o basadas en resultados, no funcionará en modo de verificación. Esto se debe a que las condiciones para esas tareas no se pueden cumplir sin ejecutar el libro de jugadas y realizar cambios.


Ubuntu
  1. Deconstruyendo un libro de jugadas de Ansible

  2. Cómo crear un libro de jugadas de Ansible

  3. Cómo pasar variables adicionales a un libro de jugadas de Ansible

  4. Establecer el modo de aplicación de SELinux con Ansible

  5. ¿Cómo comprobar si tengo acceso a Sudo?

Playbook de Ansible para instalar y configurar Apache en Ubuntu

Cómo crear playbooks de Ansible para la automatización de TI

Primeros pasos con los libros de jugadas de Ansible

Cómo definir y usar controladores en Ansible Playbooks

Cómo crear y ejecutar un archivo de libro de jugadas de Ansible

Ejecutar Docker Container en segundo plano (modo separado)