ansible-vault を使用するために ansible インベントリーを作り直しています。すべてが正常に機能していますが、変数の優先順位に問題があると思います。ansiblemaster ( localhost 127.0.0.1 ) にローカル接続しようとすると、host_vars のパスワードではなく、グローバル構成の sudo パスワードを使用しているようです。
これは私のセットアップです:
- ホスト.ini
- group_vars/all/config.yml
- group_vars/all/secrets.yml
- host_vars/ansiblemaster
したがって、これを group_vars/all/config.yml で定義しています。
### GLOBAL ###
ansible_become_password: "{{ secret_ansible_become_password }}"
ansible_password: "{{ secret_ansible_password }}"
ansible_user: "{{ secret_ansible_user }}"
そして、これを host_vars/ansiblemaster で定義しています。
ansible_ssh_host: 127.0.0.1
ansible_user: "{{secret_master_ansible_user}}"
ansible_password: "{{secret_master_ansible_password}}"
ansible_become_password: "{{secret_master_ansible_become_password}}"
ansible_become_user: "{{secret_master_ansible_become_user}}"
ansible_connection: local
私は得続けます:
パスワード: \nsudo: 1 回の不正なパスワード試行\n" ローカル接続を確立して sudo を実行する Playbook を実行すると、.
host_vars/ansiblemaster の定義は group_vars/all/config を上書きしませんか?