Amazon Web Services ブログ

AWS Elastic Beanstalk で、 2つの新しいデプロイメントポリシーとAmazon Linux AMI 2016.03 が利用可能に

AWS Elastic Beanstalk を利用してアプリケーションコードをデプロイする際に、immutablerolling with additional batch という 2つの新たなデプロイメントポリシーを利用可能になりました。これは、現在 Elastic Beanstalk がサポートしている2つの既存のデプロイメントポリシー(rolling, all at once) に追加されるものです。アプリケーションを更新する際に、これらの4つのポリシーから、1つ選択できます。 これらの 4つのデプロイメントポリシーに加えて、 Elastic Beanstalk では、 DNS ベースの Blue/Green アップデートも利用できます。

Elastic Beanstalk 上のアプリケーションや環境設定を更新する際に、 新たなデプロイメントポリシーである immutable を利用できます。このポリシーは、ダウンタイムを細小にしたり、デプロイメントの失敗によるリスクを小さくしたい商用環境でのアップデートに非常に向いています。このポリシーを利用することによって、デプロイメントの失敗による影響を1つのインスタンスに限定したり、更新中にあなたのアプリケーションがフルキャパシティでトラフィックをさばいたりすることが可能になります。このポリシーでは、新たに作成される 一台のAmazon EC2 インスタンスにコードをデプロイし、新しいバージョンを実行する新規インスタンス群の全台が起動される前に、ヘルスチェックに通るか確認します。ひとたび、新しいアプリケーションバージョンを実行する新規インスタンス群が起動されると、古いインスタンス群は終了されます。

また、アプリケーションを更新する際に、新たなデプロイメントポリシーである rolling with additional batch を利用できます。このポリシーを利用することによって、デプロイメントの失敗による影響を単一バッチに限定したり、更新中にあなたのアプリケーションがフルキャパシティでトラフィックをさばいたりすることが可能になります。このポリシーでは、既存のインスタンス群からなる各バッチに更新を展開する前に、新規に作成される EC2 インスタンスからなるバッチにコードをデプロイします。デプロイメントの終わりに、古いアプリケーションバージョンを実行する最後のバッチを終了します。例えば、もしあなたが、 あなたのアプリケーションを実行する 9台の EC2 インスタンスを持っていて、1/3 ずつ更新するように選択した場合、本ポリシーにより、まずはじめに3台の新バージョンを実行する新規インスタンスが作成されます。新規インスタンス群(バッチ)がヘルスチェックに成功すると、 Elastic Beanstalk は、古いインスタンスのうちの6台を、2回にわけて連続で更新していきます。古いバージョンを実行する残りの3台を終了します。

加えて、Elastic Beanstalk でサポートされる全ての Linux プラットフォームが、 2016.03 Amazon Linux AMI に更新され、環境名に使用できる文字数が、23 文字から 40文字に引き上げられました。

新しいデプロイメントポリシーを使用するには、プラットフォームバージョンが、2.1.0以降である必要があります。デプロイメントポリシーの選択は、 Elastic Beanstalk コンソール、 Elastic Beanstalk CLI, もしくは、SDK から可能です。デプロイメントポリシーに関する詳細は、ドキュメント(2016/4/11現在、英語版のみ記載)を確認してください。

Elastic Beanstalk の情報については下記より確認可能です:

翻訳は江川(@daiti0804)が担当しました(原文はこちらです)。