2016-05-18 6 views
-1

ロードバランサの背後に複数のamazon ec2インスタンスがあります。私たちのビルドスクリプトはphingで書かれており、gitと統合されています。特定のgitブランチをamazon ec2インスタンスのサブセットに展開するためのビルドスクリプトをトリガーするツールを探る

現在、ロードバランサの背後にあるすべてのアクティブインスタンスを表示し、それらのいくつかを選択(または以前に定義したグループを選択)できるようにするツール(JenkinsやAmazonコードのデプロイなど)を探しています。 (どちらか良い方) -

  • ビルドスクリプトは、ツールがホストされているのと同じ専用サーバーでホストされています。

  • または選択したEC2インスタンス上でホストされているそれぞれのビルドスクリプト。

私たちは、次の操作を行うことができるはず - 私たちは、インスタンスの任意のグループのためのビルドスクリプトをトリガしたときに

  • は、必要に応じて、Gitのブランチ名を指定します。

  • は負荷を監視するためのいくつかの時間を取得するように、箱のバッチで展開することができ、その後、すべてが良好であれば次のバッチに移動します。最良の方法は、バッチのサイズ(たとえば10)を指定することです。その結果、プロセスは、すべてのバッチでのロールアウトが完了した後にユーザープロンプトを待機します。

我々はインスタンスの二つのグループに二つの異なるgitのブランチをロールアウトする必要がある場合(私たちは、バッチサイズを指定しない場合)ので、我々は、2つのステップでそれらを実行することができます。

同様のことに対処した人の経験について知りたいですか?あなたはアプリケーションの展開 のために、工具はローリング展開を実行するためのオプションを持っているかどうかを持っている

選択肢:

+0

@Downvoter、説明してください。正直なところ、知識を得ることはとても難しいことがあります。尋ねる質問はたくさんありますが、ここでは質問することはできません。クオラに答える人が十分ではなく、質問体の長さにもこの制限を設けています。 –

答えて

0

私は質問を構造し直すでしょう。

ジェンキンスは、プラグイン、カスタムスクリプトを使用するか、展開を行うため、既存のオーケストレーションソフトウェアのセットアップを活用する必要がありますCI/CD、ためのソフトウェアです。ソフトウェアのオーケストレーションのために

、あなたは多くの選択肢を持って、より多くの有名なツールのいくつかは、これらのすべては、集中設定のいくつかの種類を管理するために、あなたが必要になります。.. ansibleなどシェフ、人形、です。そのようなソフトウェアはすべて、アプリケーションの展開をサポートします。

あなたは、このような設定を維持するに投資したいと思うかどうかの判断をする必要があります。

あなたは、このような設定に対して決定した場合、あなたは、このようなAWSのOpsWorks、AWS CodeDeployとしてマネージドサービスを使用するオプションを持っているが、これらのサービスのいずれかを選択する際には、シェフなど を主催し、あなたは、ベンダーにオーケストレーションソフトウェアの管理を委任するこれにより、サービスが常に確実に行われます。

AWSコード展開とAWS OpsWorksは、AWS上のサービスを管理し、AWSのセットアップにかなりうまく機能しています。 AWS OpsWorksはシェフをフードの下で使用します。

AWS CodeDeployは、OpsWorksが提供するもののサブセットのみを提供し、展開のみを担当します。 AWSコードをデプロイすると、AWSコンソールを使用してソフトウェアの配置を簡単に視覚化できます。

AWSコードをデプロイすると、ec2インスタンスに部分的にロールアウトするという目標を達成できます。 他のツールでも同じことができますが、AWS環境でのCodeDeployの作業量は最小限に抑えられます。 CodeDeployでは、GITから展開することもできます。コードの展開と落とし穴がインスタンス上で実行するエージェントがためにテストされており、OSの組み合わせの限られた数のためにサポートされているという事実がある http://docs.aws.amazon.com/codedeploy/latest/userguide/github-integ-tutorial.html

次のAWSのマニュアルを参照してください。また、(http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-run-agent.html#how-to-run-agent-supported-oses) AWSから離れることを決定した場合は、展開関連の作業をやり直す必要があります。

CodeDeployサービスは、AWSリソースの下にのみ料金を請求します。 以下の価格文書へのリンクを見つけてください:CodeDeployについては https://aws.amazon.com/codedeploy/pricing/

+0

お返事ありがとうございます。インスタンスを選択するインタフェースのデモを見たいと思っていました。無料のティア設備を使ってテストをセットアップできるかどうか考えていますか?私はまだAWSの初心者であり、無料のティアで利用できるリソースの範囲と混同されています。 –

+0

マイクロインスタンスのみを使用していて、無料のティアを使用している場合は、請求されません。エルボを使用する場合は、最低限の時間料金がかかります。 – Shibashis

+0

あなたのコードのどの枝にデプロイするかの柔軟性が得られる – Shibashis

1

を、それがGitに(より正確には、GitHubの)をサポートしています。また、タグ付きEC2インスタンスにのみデプロイすることもできます。カスタムDeploymentConfig(http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-create-deployment-configuration.html)と組み合わせると、展開する速度(バッチのサイズ)を制御することもできます。

+0

EC2インスタンスのいくつかのサブセットで異なるgitブランチを維持するのがどれくらい簡単か分かりません。私はgitと統合されたphingで書かれたビルドスクリプトを持っており、与えられたgitブランチをインスタンスにロールアウトすることができます。適切なツールを使用してこのスクリプトをトリガして、特定のインスタンスに必要なブランチを展開したいと考えています。 AWSコード化は、私が探しているものに最も近いように見えます。それは無料の階層サービスの下に来るのですか? –

+1

CodeDeployは無料です。起動したインスタンスや他のリソースは使用されていません。 – user6341641

関連する問題