あるウェブアプリケーションが Auto Scaling グループ内の 4 つの EC2 インスタンスで Elastic Beanstalk 上で稼働しています。デプロイ中も常にフル処理能力(4 インスタンス分)を維持しつつ、コストを最小限に抑えながらローリングデプロイを実施したいと考えています。どのデプロイポリシーを使用すべきですか?
Rolling with additional batch は、追加の新インスタンスバッチを先にデプロイしてから既存インスタンスを順次更新するため、デプロイ中も常にフル処理能力(4インスタンス分)を維持できます。コスト面でも Immutable より効率的です。 All at once は全インスタンスを同時更新するためダウンタイムが発生し、本番環境には不適切です。 Rolling はバッチ単位でインスタンスを順次更新するため、デプロイ中は一部インスタンスがサービス停止し処理能力が一時的に低下します。フル処理能力を維持できません。 Immutable は新しい Auto Scaling グループを丸ごと起動するため最もコストがかかります。フル処理能力は維持できますが、追加コストが発生します。