はい、これをインベントリ/ホストレベルで設定できます。
すでに受け入れられている回答が存在するので、これは在庫レベルでこれをどのように処理するかという質問に対するより良い回答だと思います。私は、この安全でない設定を、これに必要なホスト(テストシステム、ローカル開発マシンなど)に分離することで、より安全だと考えています。
在庫レベルでできることは追加です
ansible_ssh_common_args='-o StrictHostKeyChecking=no'
または
ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
ホスト定義に追加します(Ansible Behavioral Inventory Parametersを参照)。
これは、ssh
接続タイプを使用する場合にのみ機能しますparamiko
。
たとえば、Vagrantホスト定義は次のようになります…
vagrant ansible_port=2222 ansible_host=127.0.0.1 ansible_ssh_common_args='-o StrictHostKeyChecking=no'
または
vagrant ansible_port=2222 ansible_host=127.0.0.1 ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
Ansibleの実行は、環境変数を変更せずに成功します。
$ ansible vagrant -i <path/to/hosts/file> -m ping
vagrant | SUCCESS => {
"changed": false,
"ping": "pong"
}
ホストのグループに対してこれを行う場合は、次のように、既存のグループの補足グループ変数にすることをお勧めします。
[mytestsystems]
test[01:99].example.tld
[insecuressh:children]
mytestsystems
[insecuressh:vars]
ansible_ssh_common_args='-o StrictHostKeyChecking=no'
ANSIBLE_HOST_KEY_CHECKING
機能しますが-e 'host_key_checking=False'
機能しません。