CodeDeployでの配置構成を使用した作業

AWS上の配置構成ラムダ計算プラットフォーム

あなたはAWSラムダ計算プラットフォームにデプロイする場合、配備構成は、トラフィックがアプリケーションの新しいラムダ関数のバージョンに移行される方法を指定します。

トラフィックが展開中にシフトすることができる3つの方法があります。

  • カナリア:トラフィックは2ずつシフトしています。残りのトラフィックは第二の増分にシフトする前に、数分で最初の増分との間隔で更新したラムダ関数バージョンに移行したトラフィックの割合を指定事前に定義されたカナリアのオプションから選択することができます。

  • リニア:トラフィックは、各増分の間で分の等しい数と等しい増分でシフトされます。あなたは、各増分にシフトトラフィックの割合と各増分間隔を分単位で指定し、定義済みのリニアオプションから選択することができます。

  • すべてのアットワンス:すべてのトラフィックは、すべてを一度に更新ラムダ関数バージョンに元ラムダ関数からずれています。

また、独自のカスタム・カナリアやリニア展開構成を作成することができます。

AWSのための事前定義された配置構成ラムダ計算プラットフォーム

次の表は、AWSラムダ型の展開で使用可能事前に定義された構成を示します。

 

展開の構成 説明

CodeDeployDefault.LambdaCanary10Percent5Minutes

最初の増分でのトラフィックの10%を移動します。残りの90%は5分後に展開されています。

CodeDeployDefault.LambdaCanary10Percent10Minutes

最初の増分でのトラフィックの10%を移動します。残りの90%が10分後に展開されます。

CodeDeployDefault.LambdaCanary10Percent15Minutes

最初の増分でのトラフィックの10%を移動します。残りの90%が15分後に展開されます。

CodeDeployDefault.LambdaCanary10Percent30Minutes

最初の増分でのトラフィックの10%を移動します。残りの90%が30分後に展開されます。

CodeDeployDefault.LambdaLinear10PercentEvery1Minute

すべてのトラフィックがシフトされるまで、トラフィックの10パーセントに毎分をシフト。

CodeDeployDefault.LambdaLinear10PercentEvery2Minutes

すべてのトラフィックがずれている2分ごとまでトラフィックの10%を移動します。

CodeDeployDefault.LambdaLinear10PercentEvery3Minutes

すべてのトラフィックがシフトしている3分毎にまでトラフィックの10%を移動します。

CodeDeployDefault.LambdaLinear10PercentEvery10Minutes すべてのトラフィックがシフトされるまで、10分ごとにトラフィックの10%を移動します。
CodeDeployDefault.LambdaAllAtOnce

一度に更新ラムダ関数へのすべてのトラフィックを移動します。

 

 

定義済みの展開EC2 /ローカルコンピューティング・プラットフォーム構成

次の表は、定義済みの展開構成を示しています。

 

展開の構成 説明
CodeDeployDefault.AllAtOnce

オンプレミス

一回の試みは、多くのインスタンスをデプロイするためにアプリケーションを改正します。アプリケーションは1つ以上のインスタンスを修正するために展開されている場合は、展開の状態として表示されます成功あなたがアプリケーションをデプロイするために、任意のインスタンスを改訂していない場合は、全体の状態の展開は次のように表示されます失敗例では9つのインスタンスを含む、9つのすべてのインスタンスを展開するCodeDeployDefault.AllAtOnce使い捨ての試み。あなたは成功、展開の全体的な成功の単一のインスタンスにデプロイした場合。場合のみ、故障の9つのすべてのインスタンスの展開は、それが失敗します。

ブルー/グリーンの展開

  • 代替の環境にデプロイ:CodeDeployDefault.AllAtOnce同じ場所の展開に適用される規則に従って展開します。

  • トラフィックを再ルーティング:トラフィックは、環境のすべてのインスタンスを置き換えるために、一度ルーティング。流れが正常に少なくとも1つのインスタンスに再ルーティングされた場合は、展開が成功しています。すべてのインスタンスに再ルーティングされた場合は失敗し、展開は失敗します。

CodeDeployDefault.HalfAtATime

就地部署

一次最多可部署到一半实例(小数向下取整)。如果将应用程序修订部署到至少一半实例(小数向下取整),则整个部署成功。否则,部署失败。在包含 9 个实例的示例中,一次部署到最多 4 个实例。如果成功部署到 5 个或更多实例,则整个部署成功。否则,部署失败。

蓝/绿部署

  • 部署到替换环境:遵循的部署规则与适用于就地部署的 CodeDeployDefault.HalfAtATime 相同。

  • 流量重新路由:每次将流量路由到替换环境的最多半数实例中。如果成功地重新路由到至少半数实例,则部署成功。否则,部署失败。

CodeDeployDefault.OneAtATime

就地部署

一次仅将应用程序修订部署到一个实例。

对于包含多个实例的部署组:

  • 如果已将应用程序修订部署到所有实例,则整个部署成功。此规则的例外情况是,如果无法部署到最后一个实例,则整个部署仍将成功。这是因为,CodeDeploy 仅允许通过 CodeDeployDefault.OneAtATime 配置一次使一个实例脱机。

  • 一旦应用程序修订无法部署到任何实例(但最后一个实例除外),整个部署将失败。

  • 在使用 9 个实例的示例中,将一次部署到一个实例。如果部署到前 8 个实例成功,则整体部署成功。如果部署到前 8 个实例中的任何一个实例失败,则整体部署失败。

对于仅包含一个实例的部署组,整个部署仅在成功部署到单个实例时成功.

蓝/绿部署

  • 部署到替换环境:遵循的部署规则与适用于就地部署的 CodeDeployDefault.OneAtATime 相同。

  • 流量重新路由:每次将流量路由到替换环境的一个实例中。如果流量成功地重新路由到所有替换实例,则部署成功。在第一次重新路由失败后,部署失败。此规则的例外情况是,如果最后一个实例无法注册,则整个部署仍将成功。

おすすめ

転載: www.cnblogs.com/cloudrivers/p/11628275.html
おすすめ