1

次のような環境 ( Graphite ) があります。

  • N ワーカー サーバー
  • これらのワーカー サーバーに作業を転送する 1 つのリレー サーバー
  • リレー サーバーにクエリを実行できる 1 つの Web サーバー。

Chef を使用して、各ワーカー サーバーを個別に作成せずに EC2 でこの環境をセットアップおよび展開し、それらの IP を取得してリレー クックブックの属性として設定し、そのリレーを作成し、IP を取得して、ウェブサーバークックブックなど

シェフを使用して、IP を手動で設定しなくても、環境が適切に展開、構成、および実行されていることを確認する方法はありますか? 特に、ワ​​ーカーサーバーを追加してリレーにワーカーリストを更新させるか、リレーサーバーを別のサーバーに交換して、それに応じてWebサーバーに参照を更新させたいと思います。

おそらく、これは Chef が意図したものではなく、サーバーごとの構成と展開のためのものです。その場合、これを容易にするテクノロジーは何でしょうか?

4

2 に答える 2

2

必要なものは次のとおりです。

  1. knife-ec2 - これは、Amazon EC2 インスタンスを開始/停止するために使用されます。
  2. シェフ サーバー- レシピで検索を使用できるようにします。EC2 インスタンスからもアクセスできる必要があります。
  3. 検索- これにより、シェフによってプロビジョニングされたノードの中から、さまざまなクエリを使用して必要なものを正確に見つけることができます。

私は最近、記事How to Run Dynamic Cloud Tests with 800 Tomcats, Amazon EC2, Jenkins and LiveRebel を書きました。これにはロードバランサーのインストールが含まれ、ロードバランサーはバランスをとるサーバーのすべての IP アドレスを認識している必要があります。Balanced node のレシピ、 loadbalancer の検索方法を確認できます。

search(:node, "roles:lr-loadbalancer").first

そして、loadbalancer レシピを確認してください。バランスの取れたすべてのノードを探して、Apache 構成ファイルを更新する方法を確認してください。

lr_nodes = search(:node, "role:lr-node")

template ::File.join( node[:apache2][:home], 'conf.d', 'httpd-proxy-balancer.conf' ) do
  mode 0644
  variables(:lr_nodes => lr_nodes)
  notifies :restart, 'service[apache2]'
end
于 2012-10-02T14:07:21.150 に答える
1

おそらくあなたはこれを探していますか?

http://www.infochimps.com/platform/ironfan

于 2012-10-24T17:27:17.067 に答える