Pages

2011/03/12

knifeのInteractiveモードがとてもインタラクティブ(chef)

またChef - knifeの話だ。
 
knife sshにはインタラクティブモードというのがある。
やってみよう。
 


# knife ssh "lsb_id:Ubuntu" interactive  -x root -P passwd


クエリは前回同様だが、コマンド部にて"interactive"を指定しよう。
複数ノードが引っかかるようにクエリしたほうがよくわかる。
 

では動作についてちょっと紹介。

 
 

knife sshのインタラクティブモード起動


# knife ssh "lsb_id:Ubuntu" interactive  -x root -P passwd
Connected to web01, msg01 and stub01

To run a command on a list of servers, do:
on SERVER1 SERVER2 SERVER3; COMMAND
Example: on latte foamy; echo foobar

To exit interactive mode, use 'quit!'

knife-ssh>


クエリで引っかかったノード一覧(stub01,web01,msg01)とプロンプトで入力待ちになった。
じゃあコマンドを入力してみよう。
 


全サーバに操作



時間でも見るか。

knife-ssh> date
stub01 Fri Mar 11 16:14:04 JST 2011
msg01 Fri Mar 11 16:14:15 JST 2011
web01 Fri Mar 11 16:14:04 JST 2011
knife-ssh>


ずれてるなあ、ntpの稼働状況はどうだ。

knife-ssh> ntpq -p
stub01 remote refid st t when poll reach delay offset jitter
stub01 ==============================================================================
stub01 *europium.canoni 193.79.237.14 2 u 11 64 377 247.530 36.822 18.583
msg01 bash: ntpq: command not found
web01 remote refid st t when poll reach delay offset jitter
web01 ==============================================================================
web01 *europium.canoni 193.79.237.14 2 u 3 64 377 248.622 -8.566 15.082
knife-ssh>


msg01にntpd入れるの忘れてるね。
apt-get で入れてしまおう

knife-ssh> apt-get install ntp
--snip--
stub01 ntp is already the newest version.
web01 ntp is already the newest version.
msg01 The following NEW packages will be installed:
msg01 ntp
--snip--


あらためてNTPの稼働を調べよう。

knife-ssh> ntpq -p
stub01 remote refid st t when poll reach delay offset jitter
stub01 ==============================================================================
stub01 *europium.canoni 193.79.237.14 2 u 8 64 377 247.530 36.822 10.277
msg01 remote refid st t when poll reach delay offset jitter
msg01 ==============================================================================
msg01 europium.canoni 193.79.237.14 2 u 54 64 1 249.488 -10874. 0.001
web01 remote refid st t when poll reach delay offset jitter
web01 ==============================================================================
web01 *europium.canoni 193.79.237.14 2 u 3 64 377 248.622 -8.566 9.009
knife-ssh>


動作しているようだ、ほっとけば同期する。
 


ちなみにcdとかは無意味、常に$HOMEにいる前提でフルパスを使って作業しましょう。
more など、プロンプトに戻ってこないことをすると脱出できません。
 

ちなみにコマンド実行は並行して行われ、出力は帰ってくる順に行単位でどんどん表示されます。
ゆえにapt-get のところは実際の画面はだいぶカオスな感じです。

ここらの対策は他のモード(Screen経由になるやつとか)が使えるのかな。
 

0 件のコメント:

コメントを投稿