2016-10-06 2 views
0

私はシェフとMSIのWeb配置をしようとしています。私は同じ構成で約400のWebサーバーを持っています。 2台のスロットにそれぞれ200台のサーバーを配置して展開します。大規模なシェフのためのウィンドウWindowsの展開

は私が

1)料理のバージョンを増やし、新しいリリースのための手順の下に従います。

2)cookbookをサーバーにアップロードします。

3)クックブックのバージョンをロールと実行リストに更新します。

私は7 msiのインストール、IIS設定の更新、web.configureファイルの更新、レジストリエントリの追加などの手順から多くの手順を実行します。導入が完了したら、テストチームを更新してテストを開始する必要があります。私の質問は、どのようにして確実に展開がすべてのマシンで確実に行えるのでしょうか? 1台のマシンに1つのMSIがインストールされていないか、または1つのweb.configファイルが正しく更新されていない場合、どのようにして見つけられますか?

私の理解はシェフのクライアントは30分ごとのデフォルトを実行するので、展開を完了するまで30分待つことにしました。ワークステーションのナイフシェフのクライアントのように、プッシュで他の方法がありますか(私はプッシュジョブを使用できません。シェフはシェフの高可用性サーバーからプッシュジョブのサポートが削除されています)

誰もが大規模なWindowsの展開でシェフを使用して自分の経験を共有する場合、それはいいです。

ありがとうございます。

答えて

2

私は、オンデマンドシェフの実行をトリガーするのに、rundeckを使用します。

あなたの説明によると、2つのprod envを使用します。それぞれのグループに対して1つずつ、それぞれのグループのCookbookのバージョン制限をバンプします。

シェフの管理とシェフのレポートを取得するためのライセンスを購入することを検討してください。完全な概要を把握するには、ハンドラを使用して実行ステータスを報告し、実行中にエラーが発生しました。

+0

あなたのご感想のために天才です。私はそのオプションを試してみます。 – Vinoth

+0

はい、私はこれが主に意見に基づいているのではないかと心配しています:/ rundeckは環境に固定されていないので唯一の選択肢ではありません...バージョン依存性を持つ "グループ"ラッパー料理ブックで行うことができます。実際にあなたの質問にあるものの。おそらくhttps://discourse.chef.ioでよりよく議論することができます – Tensibai

1

ここではWindowsに固有のものはありません。そのため、高寒さの環境でシェフを使用する方法をもっと尋ねています。新しいPolicyfileワークフローをチェックすることを強くお勧めしますが、いくつかの鋭い制限がありますが、多くの成功を収めています。 https://yolover.poise.io/にガイドがあります。調理簿/データリリース側の別の解決策は、調理師の中から、そしてどこかの小さなWebサービスにチューニング可能なもの(例えば、配布するもののバージョン)を移動させることです。チューニングデータ。プッシュとプルの質問については、ほとんどの人がハイブリッドになります。 @Tensibaiが述べたように、RunDeckは一般的なプッシュベースのオプションです。通常、バックグラウンド間隔はより長いサイクル時間(おそらく1または2時間)で実行され、設定ドリフトをキャッチし、より具体的なデプロイメントタスクにプッシュシステムを使用します。 RunDeckを超えて、Fabric、Capistrano、MCollective、SaltStackもチェックできます(CMを使わずにリモート実行レイヤーを使用できます)。シェフも独自のプッシュジョブプロジェクトを持っていますが、現時点では避けなければならないと言っても過言ではないと思います。

関連する問題