23

制御マシンにログオンしているアカウント以外のアカウントを使用して、サーバーに対して Ansible Playbook を実行しようとしています。Inventoryansible_userのドキュメントに従って、インベントリ ファイルでを指定しようとしました。

[srv1]
192.168.1.146 ansible_connection=ssh ansible_user=user1

ただし、Ansible が呼び出されたansible-playbook -i inventory playbook.yml -vvvv場合は、次のように出力されます。

GATHERING FACTS ***************************************************************
<192.168.1.146> ESTABLISH CONNECTION FOR USER: techraf

私にとってうまくいったremote_userのは、プレイブックに引数を追加することでした:

- hosts: srv1
  remote_user: user1

これで、同じ Ansible コマンドが次のように接続しuser1ます。

GATHERING FACTS ***************************************************************
<192.168.1.146> ESTABLISH CONNECTION FOR USER: user1

remote_userまた、変数を追加するとansible.cfg、Ansible は、ログオンしているユーザーではなく、目的のユーザーを使用します。

ansible_userインベントリ ファイルとremote_userPlaybook/ansible.cfgは別の目的で使用されていますか?

は何のためにansible_user使われますか?または、Ansible がインベントリーの設定を監視しないのはなぜですか?

4

2 に答える 2