¿Cómo confirmo la razón por la que la tarea ansible no está en la lista en ejecución?

Aug 18 2020

Cuando ejecuto el libro de jugadas, solo se mostrará una tarea

playbook: test.yaml

  play #1 (lab): lab    TAGS: []
    tasks:
      Install pip       TAGS: []

Y cuando ejecuto el libro de jugadas, es realmente normal

PLAY [lab] *****************************************************************************************************************************

TASK [Gathering Facts] *****************************************************************************************************************
ok: [my_ipaddress]

TASK [Install pip] *********************************************************************************************************************
ok: [my_ipaddress]

PLAY RECAP *****************************************************************************************************************************
my_ipaddress              : ok=2    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

y en /var/log/ansible.log también se ven normales como lo mismo que la salida de ejecución.

Entonces la pregunta es, ¿tengo que hacer menos configuraciones? ¿Por qué hay una tarea que no está en la lista de ejecución o hay otras salidas de depuración que pueden mostrar información de salida más detallada?

aquí está mi
versión del sistema operativo de configuración ansible : Ubuntu 18.04.5 LTS
versión ansible:

ansible 2.9.12
  config file = /etc/ansible/ansible.cfg
  configured module search path = ['/home/primula/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /home/primula/.local/lib/python3.6/site-packages/ansible
  executable location = /home/primula/.local/bin/ansible
  python version = 3.6.9 (default, Jul 17 2020, 12:50:27) [GCC 8.4.0]

mi libro de jugadas:

---
- hosts: lab
  roles:
    - { role: apache2, become: yes }
    - { role: pip, become: yes }

Ruta de configuración del rol apache2
: /etc/ansible/roles/apache2/tasks/maim.yaml

---
  - name: Install apache2
    apt:
      name: apache2
      update_cache: yes


Ruta de configuración del rol pip : /etc/ansible/roles/pip/tasks/main.yaml

---
  - name: Install pip
    apt:
      name: python-pip
      update_cache: yes

aquí está mi invotory ansible y invotory ansible.cfg

[lab]
<ipaddress> ansible_ssh_user=<user_name> ansible_ssh_pass='<ssh_pass>'  ansible_become_user=<root_user> ansible_become=true  ansible_become_pass='<root_pass>'

ansible.cfg

[defaults]
private_key_file = /root/.ssh/id_rsa
roles_path = /etc/ansible/roles
inventory      = /etc/ansible/hosts
timeout = 10
log_path = /var/log/ansible.log
deprecation_warnings = False
strategy = debug
any_errors_fatal = True

Respuestas

1 Zeitounator Aug 18 2020 at 16:14

La tarea que no está en su lista de ejecución cuando se usa ansible-playbook --list-tasks your_playbook.ymles la relacionada con la recopilación de datos realizada por el setupmódulo

Es una tarea automática implícita que está activada de forma predeterminada para todos los hosts de tu juego. Si está implícito, el comando anterior no lo informa.

Puede controlar la recopilación de datos en el nivel de juego con la gather_facts palabra clave de juego , por ejemplo

---
- name: Some play without facts gathering
  hosts: my_group
  gather_facts: false

  tasks:
    - name: dummy demo task
      debug:
        msg: I am dummy task

Con respecto a su pregunta sobre una salida más detallada, puede activar el ansible(-playbook)modo detallado con el -v(vv)interruptor ( cuantos más mensajes v, más detalles).