2017-09-29 4 views
0
  1. ノードを表示するために使用できるコマンドが2つあることに気付きました。ただし、IPアドレスではなくホスト名のみが表示されます。 これらのノードのそれぞれにIPアドレスを表示する方法がある場合はお知らせください。シェフ:ノードの表示方法IPアドレス

  2. knife node listknife client listコマンドの違いは何ですか?出力は同様に見えます。

ナイフノードリスト

C:\chef\cookbooks>knife node list 
cheftestnode1 
cheftestnode2 
cheftestnode3 
C:\chef\cookbooks> 

ナイフクライアントリスト

C:\chef\cookbooks>knife client list 
admin-validator 
cheftestnode1 
cheftestnode2 
cheftestnode3 
C:\chef\cookbooks> 

私はこのようなIPアドレス形式での出力の代わりにホスト名を確認したいと思います。これは可能ですか?

C:\chef\cookbooks>knife node list 
10.1.1.1 
10.1.1.2 
10.1.1.3 
C:\chef\cookbooks> 

などです。それは可能でしょうか?

シェフが ohaiである提供するツールを使用して簡単に静かに行うことができる
C:\chef\cookbooks>knife node list 
cheftestnode1 - 10.1.1.1 
cheftestnode2 - 10.1.1.2 
cheftestnode3 - 10.1.1.3 
C:\chef\cookbooks> 

答えて

1

。したがって、コマンドラインでohaiと入力すると、ホストIPアドレスとその他の属性について/ grepを見ることができます。

次のように2つ目の質問への答えは次のようになります。

ノードは、あなたのレシピを実行するシェフ・サーバーに対して認証

ノード=マシン

クライアント=ユーザーを クライアントには、シェフサーバーにアクセスするためのアクセス許可レベルがあります

だから、のようになります。あなたのホストは、あなたのシェフのサーバーに接続しようとすると

それは、私がクライアントX午前こんにちは言うだろう、私はノードYのための実行リストを持っているだろうか?あなたがシェフノードのIPを取得する場合

knife node show <your node name> -a ipaddress

行うあなたは-aフラグを返すことができる全ての情報の完全なリストを表示するには、次の操作を行い、質問#2に答えるために

1

あなたは、それらのリストを作成し、ループの中でそれを反復処理するノードのセットのすべてのIPアドレスを取得する場合

knife node show <your node name> -l

次。すべてのIPアドレスをつかみ、コンソールに出力の一例:

knife node list > node_list.txt while read p; do eval "knife node show ${p} -a ipaddress"; done < node_list.txt;

2

最も簡単なオプションは、knife execを使用することです:

knife exec -E 'nodes.all.each {|n| puts n["ipaddress"] }' 
関連する問題