Ответ
Для повышения привилегий используется директива become: yes. По умолчанию она использует sudo, но метод можно изменить с помощью become_method.
Пример задачи с установкой пакета:
- name: Install nginx package
ansible.builtin.apt:
name: nginx
state: present
become: yes
become_user: root # Опционально, указывает пользователя
Ключевые моменты:
- Для работы
become: yesна управляемых хостах должен быть настроенsudo(обычно через файл/etc/sudoers). - Пароль для повышения прав можно передать интерактивно с флагом
--ask-become-passили задать в переменных инвентаря какansible_become_password. - Альтернативные методы повышения прав:
become_method: su(требует пароль root) илиpbrunдля PowerBroker.