1. ホーム
  2. ansible

[解決済み] ansibleのインベントリファイルでhost_key_checking=falseを設定するには?

2022-05-31 10:21:31

質問

私は ansible-playbook コマンドの代わりに vagrant provision '. しかし host_key_checking=false の中に hosts ファイルでは動作しないようです。

# hosts file
vagrant ansible_ssh_private_key_file=~/.vagrant.d/insecure_private_key 
ansible_ssh_user=vagrant ansible_ssh_port=2222 ansible_ssh_host=127.0.0.1 
host_key_checking=false

の外側に設定変数がありますか? Vagrantfile の外側に、この値を上書きするような設定変数はありますか?

どのように解決するのですか?

2014年に回答したため、より最近のバージョンのansibleを考慮し、私の回答を更新しました。

はい、ホスト/インベントリ レベルでそれを行うことができます (これは、次のバージョンで可能になりました。 より新しい ansible バージョン ) またはグローバルレベルで行うことができます。

インベントリ :

以下を追加します。

ansible_ssh_common_args='-o StrictHostKeyChecking=no'

ホスト :

以下を追加します。

ansible_ssh_extra_args='-o StrictHostKeyChecking=no'

hosts/inventory のオプションは接続タイプで動作します。 ssh であり paramiko . 人によっては、インベントリやホストの方が範囲が限定されているため、より安全であると強く主張するかもしれません。

グローバルな

Ansibleユーザーガイド - ホスト鍵のチェック

  • のどちらかで行うことができます。 /etc/ansible/ansible.cfg または ~/.ansible.cfg ファイルを作成します。

    [defaults]
    host_key_checking = False
    
    
  • または、env変数を設定することもできます(新しいansibleのバージョンではうまくいかないかもしれません)。

    export ANSIBLE_HOST_KEY_CHECKING=False