[chef] clientとnodeの関係

解りづらいclient

chefの要素でclientとnodeがあります。
いろいろ調べる中で、このことを解説しているところがあるのですが、自分は以下のように解釈していました。
Node = 管理対象サーバ
client = Chef Serverとやり取りするインタフェース

この解釈で概ね誤りは無いようなんですが、一つ大きく勘違いをしているところがありました。

Clientの流用は出来ない

どういうことかというと、一つのclient、もっと言えばClientのPrivate Keyを複数のサーバに配布して「Nodeは増えるけど、Clientは増えない」ということは出来なそうな感じです。

chefを使う理由は関するサーバの台数が増えて来て管理が大変なので、一つ例えば「forServer」というclientを作っておいて、そのprivate keyをchef管理下に入るサーバに置いておいて、clientはそれを使ってもらうということにしたかったのです。

chefの管理下に入るには以下の手順が行われます。

  1. 管理対象サーバにchef-clientをセットアップ
  2. chef-serverのclient[chef-validator]のprivate keyをvalidation.pemとして配置。(通常は/etc/chef/validation.pem
  3. 管理対象サーバでchef-clientコマンドを実行
  4. client[chef-validator]によって、chef-serverにnode登録される
  5. 管理対象サーバ用のclientが作られて、管理対象サーバにはclient.pemが配置される(通常は/etc/chef/client.pem

こんな手順でサーバをchef管理下に入れていきますが、出来れば各サーバごとにclientが増えるのは勘弁してほしいところ。
ちなみにあらかじめ作成したclientのprivate keyを配置してclient.rbに以下の行を指定してもダメでした。

client_key   "/etc/chef/client.pem"

どうにかならないものでしょうか。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です