ansible ansible-playbook ansible-2.x

Diferencia entre convertirse y convertirse en usuario en Ansible.



ansible-playbook ansible-2.x (1)

Recientemente comencé a indagar en Ansible y a escribir mis propios libros de jugadas. Sin embargo, tengo problemas para entender la diferencia entre become y become become_user . Según tengo entendido, become_user es algo similar a su <username> , y become significar algo como sudo su o "ejecutar todos los comandos como usuario de sudo". Pero a veces estas dos directivas se mezclan.

¿Podrías explicar el significado correcto de ellos?


become_user define el usuario que se utiliza para la escalada de privilegios .

simplemente se become una bandera para activar o desactivar la misma.

Aquí hay tres ejemplos que deberían dejarlo claro:

  1. Esta tarea se ejecutará como root , porque root es el usuario predeterminado para la escalada de privilegios:

    - do: something become: yes

  2. Esta tarea se ejecutará como usuario a someone , porque el usuario está configurado explícitamente:

    - do: something become: yes become_user: someone

  3. Esta tarea no hará nada con become_user , porque no se establece y el valor predeterminado es false / no :

    - do: something become_user: someone

    ... a menos que se haya establecido en true en un nivel superior, por ejemplo, un bloque, el libro de jugadas, grupo o host-vars, etc.

    Aquí hay un ejemplo con un block :

    - become: yes block: - do: something become_user: someone - do: something

    El primero 1 se ejecuta como usuario de someone , el segundo como root .

Según tengo entendido, Become_user es algo similar a su, y llegar a ser significa algo como sudo su o "ejecutar todos los comandos como usuario de sudo".

El become_method defecto es el become_method sudo , así que sudo do something o sudo -u <become_user> do something