13

serverChef 、workstationclient、および を区別するのに苦労していnodeます。さらに重要なことは、初期環境をセットアップするときの彼らの立場は何ですか? 無数の記事やドキュメントを読みましたが、さまざまな役割と、それらが完全に自動化された設定でどのように機能するかを理解できないようです。つまり、すべてが稼働しているときに、どのようにしてクックブックを更新し、シェフが管理するすべてのサーバーを同期するのでしょうか?

現在、正常に実行されている Chef サーバーのセットアップ (Ubuntu 上) がありますchef-server-webui。リポジトリのクックブックをセットアップするには、自分のコンピューターをワークステーションとして使用する必要がありますか? それとも、リポジトリを格納する別の専用ワークステーションが必要ですか?

最後に、インスタンスをブートストラップしたい場合、それらのインスタンスに何をインストールする必要がありますか? シェフ/ナイフなどをセットアップする必要がありますか?

4

1 に答える 1

21

要するに、それがドキュメントです。

  • ノードは、シェフクライアントによって維持されるように構成されたサーバーまたは仮想サーバーです。ノードは、物理またはクラウドベースにすることができます。Chef 組織は、物理ノードとクラウドベース ノードの任意の組み合わせで構成されます。シェフクライアントは各ノードで実行されます。Ohai はシステムに関するデータを収集するために使用され、Chef の実行中にすべての Chef クライアントがデータを利用できるようにします。
  • ワークステーション: ワークステーションは、Knife を実行し、Chef リポジトリと同期し、単一の Chef Server と対話するように構成されたコンピューターです。ワークステーションは、Chef のほとんどのユーザーがほとんどの作業を行う場所です。
  • Chef サーバーは、構成データのハブとして機能します。Chef Server は、クックブック、クックブックに適用されるポリシー、およびインフラストラクチャに登録されている各ノードを説明するメタデータを格納します。ノードは、chef-client を使用して、レシピ、テンプレート、ファイル配布などの構成の詳細を Chef Server に要求します。次に、chef-client はノード自体 (Chef サーバーではなく) で可能な限り多くの構成作業を行います。このスケーラブルなアプローチにより、構成作業が組織全体に分散されます。

すべてが稼働しているときに、どのようにクックブックを更新し、シェフが管理するすべてのサーバーを同期するのでしょうか?

PC でクックブックをローカルにチェックアウトしました。knifeそれらを変更した後、 (または)を使用してそれらをchef-serverにアップロードしberks、変更をGitリポジトリにコミットします(変更の履歴を保持するため)。

リポジトリのクックブックをセットアップするには、自分のコンピューターをワークステーションとして使用する必要がありますか? それとも、リポジトリを格納する別の専用ワークステーションが必要ですか?

はい、自分用の管理者ユーザーknifeを作成します。これは、サーバーと通信するために PC (ワークステーション) で使用されます。Knife は Chef の管理ツールであるため、ワークステーションにのみインストールします。Web インターフェイスにログインするには、ユーザー資格情報を使用します。(クックブックをダウンロードして実行する (およびノー​​ドを構成する) の反対ですknife) chef-client

インスタンスをブートストラップしたい場合、それらのインスタンスに何をインストールする必要がありますか? シェフ/ナイフなどをセットアップする必要がありますか?

ブートストラップ プロセスはchef-client、ターゲット ノードに をインストールし、バリデータ ファイルをコピーします。これにより、クライアントはシェフ サーバーに登録できるようになり、最初の実行が開始されます。

于 2013-06-03T18:13:03.120 に答える