ansibleで踏み台サーバ経由でplaybookを実行する方法
ansibleで踏み台サーバ経由でplaybookを実行する方法を紹介します。
1.問題点
ansibleで下記のような構成でゲストOSを構築することになりました。
ansible実行サーバ
↓
ターゲットのホストOS
↓
ターゲットのゲストOS
ansibleサーバから構築対象のゲストOSを操作するには、ホストOSへ一度ログインしなければならないのですが、方法がわかりません。
ということで、ansibleで踏み台サーバ経由でplaybookを実行する方法を紹介します。
2.ansibleで踏み台サーバ経由でplaybookを実行する
ansibleで踏み台サーバ経由でplaybookを実行するには、ansible実行ディレクトリに下記の内容を記述したansible.cfgを配置します。
[ssh_connection]
ssh_args = '-o ControlMaster=auto
-o ControlPersist=60s
-o StrictHostKeyChecking=no
-o UserKnownHostsFile=/dev/null
-o ProxyCommand="sshpass -p [ホストOSのパスワード] ssh -W %h:%p -q [ホストOSのユーザー]@[ホストOSのIPアドレス]"'
3.解説
ControlMaster=auto
ControlPersist=60s
は、2本目以降のsshの接続が早くなる設定です。
StrictHostKeyChecking=no
は、ホスト鍵を無視する設定です。
UserKnownHostsFile=/dev/null
は、デフォルトのknown_hostsの代わりに使用するファイルの設定です。
/dev/nullで、known_hostsに書き込まれることがなくなります。
ProxyCommand="sshpass -p [ホストOSのパスワード] ssh -W %h:%p -q [ホストOSのユーザー]@[ホストOSのIPアドレス]"'
で踏み台を超える設定を行います。
4.参考サイト
参考サイトは下記です。ありがとうございました。
- sshの接続を早くする(ControlMaster)
- sshのホスト鍵を無視する方法
- UserKnownHostsFileとStrictHostKeyChecking【ssh】
- 私の~/.ssh/config
- ProxyCommandを使って踏み台(Bastion)経由で直接ssh/scpする
Posted by yujiro このページの先頭に戻る
- ansibleのcopyモジュールでディレクトリを生成する方法
- ansibleでフィンガープリントを表示させない方法
- ansibleのインベントリに設定した変数にアクセスする方法
- ansibleでrpmアーカイブを展開してyumでインストールする方法
- ansibleでコマンドを実行する方法
- ansibleでリモートホストのアーカイブファイルを展開する方法
- ansibleでアーカイブファイルを転送して展開する方法
- ansibleでファイルを書き替える方法
- ansibleでvisudoする方法
トラックバックURL
コメントする
greeting