[Ansible] Internal Error: this connection module does not support running commands via sudo 해결
개발/Ansible 2019. 5. 21. 10:35우선 위 에러가 발생하는 경우는 playbook이든 ansible이든 become 메소드를 이용하여 sudo 권한을 획득하려 했으나, Windows 머신 등이 inventory에 포함되어 있는 경우 sudo 가 없기 때문에 발생한다.
Windows 머신의 경우 become 메소드 없이도, Administrator 계정을 inventory에 넣으면 비슷한 효과가 있기 때문에 inventory에서 become 메소드를 아예 활용하지 않도록 아래와 같이 예외처리가 가능하다.
[windows:vars]
ansible_become=false
[windows]
localhost1
localhost2
localhost3
ansible_become을 inventory에 선언해두면, playbook에서 become이 yes로 되어 있더라도, 해당 host들은 inventory에 선언해둔 값을 우선 시 하기 때문에, 문제가 발생하지 않는다.
'개발 > Ansible' 카테고리의 다른 글
[Ansible] win_command 이용 시 escape 처리 (0) | 2019.05.22 |
---|---|
[Ansible] win_package 모듈 사용 시 product_id 찾기 (0) | 2019.05.21 |
[Ansible] playbook 작성 시 ansible_facts 활용 (0) | 2019.05.21 |
[Ansible] Windows 환경에서의 Inventory 구성 (0) | 2019.04.12 |
[Ansible] retry 파일 비활성화 (0) | 2019.02.27 |