2011-02-10 13 views
0

Heya、 簡単な質問。 EC2上に複数のインスタンスがあり、それらの間にロードバランサがあります。私は私のライブenvにプッシュするために使用されるSVNアプリを使用します。意のままに。Amazon EC2複数インスタンス、SVNアプリケーション

複数のEC2を使用すると、コードベース全体を一度にどのようにプッシュできますか? どのような思考/リンクにも感謝します。

答えて

1

これを行う方法はいくつかあります。

あなたはスクリプト書く弾性ロードバランサ

を使用している場合:

  • はにマシンを再追加

    1. はプール
    2. アップデートSVNリポジトリからマシンを削除しますプール
    3. 追加マシンの繰り返し

    一貫性が懸念される場合は、1台のマシンを削除して更新し、他のすべてのマシンを削除して更新することもできます。

    アプリケーション

    バランシングカスタムロードを使用している場合は、Capistranoに見て。 Ruby/Rakeで使用する必要はありません。パラレルデプロイを行うことができるカスタムキャップファイルを書くことができます。

  • 0

    コード配布用のVladやファブリックはどうですか?

    0

    Scalrを使用します。それはサービス(Scalr.net)として利用可能であるか、自分で実行することができます(オープンソースですが、googlecodeリポジトリのソースは時にはサービスが使用するバージョンの少し後ろです)。

    基本的に、Scalrには、スクリプト(例:bash、PHP、#!bangで何か)を指定し、与えられた 'ロール'のすべてのインスタンス(Webインスタンスなど) 。私たちの場合は、必要に応じてsvn checkoutまたはsvn updateだけを行うスクリプトがあります。 Scalrはスクリプトの定期的なスケジューリングをサポートしているので、dev環境ではdevをSVNと同期させるために5分ごとに実行しますが、実際には手動でプロダクションのためにトリガーします。 (使用するSVNブランチを指定するためのスクリプトを持つスクリプトを用意しています)

    関連する問題