Chef だと面倒くさいけど Ansible だとできること:踏み台構成
前提
本業で本格的に ansible 使うようになるんだけれども、本業では次のよーなサーバ構成になっている。
(操作端末)→(踏み台)→(サーバ郡)
これで ansible 使えるんだっけーっていうの調べてた。ついでに Chef も。 この踏み台がなんのためにあるかってのは、DeMilitarized Zone と Militarized Zone を分かつためにあるってことで*1。
本題
で、こんな環境で構成管理ツール使う場合、おそらく次のようになると思う。
構成 | Chef | Ansible |
---|---|---|
操作端末だけで可能 | knife-zero, knife-solo のみ? | ○ |
サーバ郡に構成管理サーバを導入 | ○ | ○ |
サーバ郡に構成管理サーバを導入すればできるってのは、例えば通信が(Install で download すること以外)MZ 内のみで閉じるっていうことなんでほぼ当たり前ですね。
多段 SSH
そもそも踏み台があるなかで直接サーバ群にアクセスするには
- netcatコマンドを利用
- sshの-Wオプションを利用
をすれば多段 ssh がかんたんにできるよう。
ちなみに -W の説明はこんな感じ
-W host:port Requests that standard input and output on the client be forwarded to host on port over the secure channel. Implies -N, -T, ExitOnForwardFailure and ClearAllForwardings. Works with Protocol version 2 only.
つまり、踏み台サーバには
- netcat コマンドが使える
- SSHv2 に対応
という条件がそれぞれ必要。
参考になるぺーじ
netcat コマンドを利用する場合は、
-W
オプションで行う場合には
が参考になるっぽい。(2015/3/1 追記:リンク間違えてたので修正しました)