問題タブ [blue-green-deployment]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
amazon-ec2 - CodeDeploy を使用した ECS Blue/Green デプロイ - インスタンス数の自動スケーリング
AWS CodeDeploy を利用した Blue/Green デプロイで ECS (EC2 上) を使用しています。
新しいタスク定義を作成し、それを使用するようにサービスを更新した後、AWS CodeDeploy での新しいデプロイが開始されます。ただし、次のエラーのため、サービスで新しいタスクを実行できません。
service my-service-dev was unable to place a task because no container instance met all of its requirements...
クラスターで使用されている現在のインスタンスが新しいタスクを実行できないことを理解しています。クラスターの自動スケーリング グループの最小容量を増やして新しいインスタンスを手動で追加すると、デプロイは正常に行われます。
これを自動的に行う方法があるかどうか知りたかったのです。最大容量を (同じ場所で) 増やしても効果がないようです。
node.js - Cloud Foundry の展開でダウンタイムを「正しく」減らすにはどうすればよいですか?
Cloud Foundry アプリケーション (NodeJS) の展開のダウンタイムを短縮するために、Blue-Green 展開を使用しています。私は Cloud Foundry Command Line Interface (cf CLI) ( https://github.com/bluemixgaragelondon/cf-blue-green-deploy ) に BlueGreenDeploy プラグインを使用しており、私のアプリは PM2 クラスター モードを使用する単一インスタンスに対して複数のプロセスを実行しています。
すべて正常に動作していますが、「ベスト プラクティス」や正しく行っていないことがあるかどうかを知りたいです。
例: アプリケーションをプッシュする前に、手動でアプリケーションを 1 つのインスタンスのみにスケールダウンすると効果がありますか? アプリ インスタンスはマニフェスト ファイルで指定されるため、スケールアップ プロセスを管理するのは CF 自体です。
私を助けてくれるすべての人に前もって感謝します。
git - AWS Code Deploy と AWS Code Pipeline を使用して複数の git リポジトリを一度にデプロイする方法は?
同じ自動スケーリング グループにデプロイする必要がある 3 つの異なるリポジトリ (deploymentType は Blue/Green) があります。3 つの異なるコード パイプラインと 1 つのデプロイ グループを作成しました。
ここでの問題は、Blue/Green デプロイメントが起動テンプレートで提供された AMI-id を使用して新しい自動スケーリング グループを作成するため、一度に 1 つのブランチしかインスタンスに存在しないことです。
Web アプリが機能するには、3 つのリポジトリ コードがすべて必要です。3 つのリポジトリすべてに対して新しい自動スケーリング グループを作成したくないためです。私はこのようにすることを考えました:
ダミー分岐 A:
ProjectName
- Repo1Project
- Repo2Project
- Repo3Project
- appspec.yml
- attach-target-group-to-alb.sh
および appspec.yml で:
次のコマンドを使用して、各フォルダーを更新します。
特定のファイル/フォルダーのみを他のブランチから現在のブランチにマージするには
git checkout Repo1ProjectBranch プロジェクト名/Repo1Project
git commit -m "あなたのコメント"
そして、それを実際のBranchBにプッシュします
しかし、これが有効な方法なのか、それとも他のより良い解決策があるのか はわかりません。誰かがより良い解決策をすでに見つけている場合は、ここに投稿することを考えてください。