投稿日: Dec 4, 2020
Amazon ECS Anywhere:お客様のデータセンター内で Amazon ECS を実行可能に
Amazon EKS Anywhere:お客様のデータセンター内で Amazon EKS を実行可能に
AWS Proton:コンテナとサーバーレスアプリケーションの開発・デプロイを自動化
Amazon Elastic Container Registry Public(Amazon ECR Public):コンテナソフトウェアをパブリックに共有・デプロイする、容易かつ可用性の高い手段を開発者に提供
(シアトル発、2020 年 12 月 1 日発表)Amazon.com, Inc.(NASDAQ:AMZN)の関連会社である Amazon Web Services, Inc.(AWS)は、「AWS re:Invent」にて、お客様のモダンアプリケーション開発、デプロイ、スケーリングをサポートする 4 つの新たなコンテナ分野におけるイノベーションを発表しました。コンテナとは、あらゆる環境下でアプリケーションを迅速かつ確実にパッケージ化して実行する開発者向けの標準的な手段であり、リソースを有効活用し、コストを削減できます。AWS は現在、コンテナアプリケーションのプロビジョニング、デプロイ、管理のさらなる容易化に取り組んでおり、今回、お客様のデータセンター内で Amazon Elastic Container Service(ECS)や Amazon Elastic Kubernetes Service(EKS)の実行を可能にする機能や、コンテナやサーバーレスアプリケーションの開発・デプロイを自動化する新サービスを追加しました。さらに開発者に対して、コンテナソフトウェアをパブリックに共有・デプロイするための、容易かつ可用性の高い手段として、新たなコンテナレジストリを提供します。
多くの企業はお客様に対して、単一のマネージド Kubernetes コンテナサービスを提供していますが、開発者が変わればニーズの優先順位も変わるため、こうした手法には限界があります。そこで AWS は、オープンソースの Kubernetes オーケストレーションエンジンの使用を最も優先する開発者向けには、Amazon EKS を提供しています。一方、AWS の他のサービスとの連携や AWS スタイルの API の快適性、クラスタの管理、スケジューリング、モニタリング向けの合理化された構成を優先する開発者には、Amazon ECS を提供しています。また、サーバーやクラスタのことを考えずにコンテナを実行すること、いわゆるサーバーレスを検討するお客様には、AWS Fargate を提供しています。開発者の多様なニーズに応えるため、サーバーレスコンテナサービスや、コンテナサービスの包括的な製品群を提供しているプロバイダーは、AWS のほかにありません。お客様が異なるワークロードで上記の 3 つのコンテナサービスすべてを同時に使用するケースも珍しくなく、いずれのサービスも急速に成長し続けています。
Amazon ECS Anywhere、Amazon EKS Anywhere:お客様のデータセンター内で Amazon ECS と Amazon EKS を実行可能に
コンテナ内でのアプリケーションの実行を希望するお客様は、オンプレミスのアプリケーションとクラウドのアプリケーションのデプロイと管理において、それぞれ別のプロセスを経る必要があります。こうした状況では、オンプレミス環境のコンテナオーケストレーションソフトウェアを手動でインストール、運用、管理する必要があります。AWS 環境とオンプレミス環境では、異なるツールの使用が求められるため、お客様は、複数の専門領域やスキルセットにおいて、常に最新の知識を備えていることが求められます。これは、運用の負担につながるだけでなく、新しいビジネスにつながる機能の提供のスピードも遅くなってしまいます。その代わりにお客様が求めているのは、Amazon ECS や Amazon EKS で使用しているものと同様のモニタリング、クラスタ管理、デプロイのパイプラインを使用して、自社のデータセンターと AWS 環境で動作する完全マネージド型のソリューションです。
● Amazon ECS Anywhere:お客様は AWS 環境で利用しているものと同様のクラウドベースの完全マネージド型・高可用のコンテナオーケストレーションサービスを使用し、自社のデータセンター内で Amazon ECS を実行できます。Amazon ECS Anywhere によって、すべてのコンテナベースのアプリケーションで一貫したツールとAPIを利用できると同時に、クラウドと自社データセンターの両方の環境におけるクラスタ管理、ワークロードのスケジューリング、モニタリングにおいて、Amazon ECS と同じ体験を提供します。Amazon ECS Anywhere があれば、オンプレミス環境での自社のコンテナオーケストレーターの実行、更新、保守が不要となり、コンテナをクラウドに移行し、ハイブリッド環境で管理することが容易になります。Amazon ECS Anywhere は、2021 年上半期中の提供開始予定です。詳細については、https://aws.amazon.com/ecs をご覧ください。
● Amazon EKS Anywhere:これまでの Amazon EKS と同様の一貫性のある運用により、自社のデータセンターとクラウド環境で Kubernetes を実行できるようになります。Amazon EKS Anywhere は、あらゆるインフラストラクチャ(ベアメタル、VMware vSphere、クラウド仮想マシン)に対応しており、お客様には一貫した Kubernetes 管理ツールを提供します。このツールは、OS、コンテナレジストリ、ログの収集、モニタリング、ネットワーキング、ストレージのデフォルト構成で、クラスタのインストール作業を容易に行えるように最適化されています。Amazon EKS Anywhere は、Amazon EKS で展開される Kubernetes ディストリビューションの mazon EKS Distro を使用しています。そのため、お客様は最新のソフトウェアアップデートやセキュリティパッチの拡大など、Amazon EKS のベストプラクティスと一貫性のある形で、クラスタを容易に作成できます。Amazon EKS Anywhere によって、Kubernetes クラスタをオンプレミス環境にインストールし、運用に必要なベンダーサポート契約や各種ツール群をとりまとめる負担を解消します。Amazon EKS Anywhere は、2021 年上半期中の提供開始予定です。詳細については、https://aws.amazon.com/eks をご覧ください。
AWS Proton:コンテナとサーバーレスアプリケーションの開発とデプロイを自動化する開発者向けの新サービス
コンテナとサーバーレスアプリケーションは運用面で確実なメリットをもたらしますが、それによって、お客様によるコードの開発やデプロイの方法が変わることにもなります。現在、開発者が Amazon EC2 インスタンスで従来型のアプリケーションを構築する場合、アプリケーションが単一ブロックのコードとして構築されるケースが多く、そのため AWS CloudFormation テンプレート(インフラストラクチャのプロビジョニング)、AWS CodePipeline(継続的インテグレーション/継続的デリバリー(CI / CD)プロセスの設定)、Amazon CloudWatch(デプロイのモニタリング)など、コードの開発やデプロイをサポートするための実績あるツール群が揃っています。実際のところ、EC2 上でアプリケーションをいったん稼働させても、アプリケーションのコンポーネントは特に変わらず、一般的にコードは単一のリリース内で保守されるため、それを調整し続けることは比較的容易な作業です。一方で、コンテナやサーバーレスアプリケーションは、比較的小規模なコードの塊(チャンク)で組み立てられており、独立して開発・保守し、アプリケーションを構築・拡張する際につなぎ合わせるケースが多くなっています。それぞれのチャンクには、個々のインフラストラクチャが採用されており、更新と保守が必要となります。こうしたチャンクは、別々のチームが開発・運用することが多く、各チームは自由にコンポーネントを更新できることから、従来型のアプリケーションに比べて、より頻繁に変更が発生します。お客様がコンテナとサーバーレスアプリケーションの開発に移行する中で、インフラストラクチャのプロビジョニング、コードのデプロイ、モニタリングツールにおける様々な変更を調整することは困難です。そのため、お客様はリソースのプロビジョニング、コードのデプロイ、モニタリングなど、あらゆるタスクを一括管理する統合型ソリューションを必要としています。インフラストラクチャチームが開発者へのガイダンスの提供に努め、ベストプラクティスを導入できるよう、自社のカスタムツールを作成するケースもありますが、コンテナとサーバーレスアプリケーションの開発・デプロイの複雑さは、多くの企業でアプリケーションの開発を遅らせるため、課題となっています。
最新のアプリケーション管理サービスである AWS Proton は、コンテナやサーバーレスのように、演算単位が小さく動的な場合において、アプリケーションのプロビジョニング、デプロイ、モニタリングをシンプル化します。AWS Proton を使用すると、アプリケーションコンポーネントを「スタック」(アプリケーションで使用されるコードの塊のさまざまな組み合わせ)として定義できます。AWS Proton には、セキュリティ、アーキテクチャ、ツールなど、AWS のベストプラクティスが組み込まれたキュレーション済みのアプリケーションスタックのセットも備えており、インフラストラクチャチームは開発チームに信頼できるスタックを迅速・容易に配布できます。さらに、様々な用途向けのスタックを開発チームに提供でき、これらのスタックは、複数のチームがスタックを同時にデプロイした場合も標準化され、最新状態が維持されます。AWS Proton を利用することで、開発者はこのようなアプリケーションスタックを保存、再利用できるほか、コンテナとサーバーレスアプリケーションのデプロイ環境と、開発中のアプリケーションのモニタリング機能、さらにはスタックの最新コンポーネントによってアプリケーションの自動更新もできるようになります。また AWS Proton は、コンテナとサーバーレスアプリケーション向けのコード、CI/CD パイプライン、モニタリングなどのインフラストラクチャのデプロイを自動化します。インフラストラクチャチームは AWS Proton を利用することで、アプリケーションの開発プロセスを手動で管理することなく、一貫した方法でサーバーレス/コンテナ技術を自社のアプリケーションに使用できる環境を、開発者に提供できるようになります。AWS Proton は現在、プレビュー版を提供中です。詳細については、https://aws.amazon.com/proton をご覧ください。
Amazon Elastic Container Registry Public(Amazon ECR Public):コンテナソフトウェアをパブリックに共有・デプロイ可能に
コンテナベースのアプリケーションを構築する開発者の多くは、OS、データベース、アプリケーションコンポーネントなど、コンテナイメージとしてパブリックに配布されている共通のソフトウェアパッケージを活用しています。開発者は、Amazon ECR などのコンテナレジストリサービスを使用し、コンテナイメージを社内用に管理しています。現在、Amazon ECR のお客様は、毎週30億個以上のイメージをダウンロードしており、これにより開発者は、自社のアプリケーションで使用するためのコンテナをデプロイできます。しかし、開発者が言語ライブラリ、Web サーバー、データベースなど、人気のソフトウェアをイメージとしてパブリックに配布したい場合、現状では Amazon ECR からこれらをダウンロードすることはできません。その代わりに、Docker Hub のような、パブリックな Web サイトやレジストリからイメージをダウンロードする必要がありますが、匿名ユーザーや無料プランではイメージをプルする際のスピードが制限されるため、可用性が保証されず、結果として非効率的で信頼性の低いソフトウェアデリバリーになります。こうした依存状態を回避するため、開発者はこれらの共通イメージをローカルに複製して管理することが必要となりますが、最新バージョンのイメージとの同期状態を維持することは難しく、運用の複雑さが増すとともに、アプリケーションの迅速なスケーリングも制限されます。複数のリージョンでパブリックイメージからコンテナを実行する AWS のお客様は、イベントのログ管理やネットワークポリシーの管理にあたり、ローカルイメージのコピーをそれぞれのリージョンに複製する必要がありますが、そのプロセスで求められる迅速かつ確実なイメージのダウンロードが課題となっています。
こうした課題を解決できるよう、Amazon ECR では、開発者がコンテナイメージを保存、管理、共有、デプロイするためのパブリックレジストリを追加しており、これによって誰でも検索・ダウンロードが可能となります。お客様は Amazon ECR Public を使用することで、プライベートとパブリック、両方のコンテナイメージをホストでき、パブリックな Web サイトやレジスタの使用が不要になります。今後は、自社のコンテナレポジトリを運用することも、基本インフラストラクチャの拡張を気にする必要もなく、1度のコマンドでパブリックコンテナイメージを迅速に公開できます。これらのイメージは、地理的に複製されており、世界中で高信頼の可用性を実現しており、ダウンロードの高速化によって、イメージをオンデマンドで迅速に提供できます。Amazon ECR Public は、可用性の高いサービスであり、お客様はパブリックコンテナイメージのほか、あらゆる開発者が利用可能なポリシー構成など、関連ファイルを配布できます。さらに、「Amazon ECR Public Gallery」と呼ばれる新たな Web サイトにより、誰でもパブリックコンテナイメージを閲覧・検索し、開発者の提供した詳細情報やプルコマンドを見ることができます。その際、AWS へのサインインは不要です。Amazon ECR Public は、パブリックイメージの最新バージョンを公開した際に、お客様へ通知します。Amazon ECR Public は、現在提供中です。詳細については、https://aws.amazon.com/ecr をご覧ください。
AWS のコンピュートサービス担当バイスプレジデントであるディーパック・シン(Deepak Singh)は、次のように述べています。「移植性の向上、リソースの効率利用、コスト削減のため、お客様はコンテナ内でのワークロードの実行を望まれますが、こうした大きな優位性があるにも関わらず、AWSには、コンテナの管理、デプロイ、共有の容易化に関するご要望が寄せられています。このたび発表したイノベーションは、クラウドとお客様のデータセンター内で Amazon ECSとAmazon EKS の一貫したエクスペリエンスをお届けすることで、AWS の業界をリードするコンテナ機能をさらに拡大しています。これによって、コンテナとサーバーレスアプリケーションの開発・デプロイは大幅にシンプルになり、コンテナイメージをより簡単に保存、管理、共有できる、完全マネージド型のコンテナレジストリを提供します。」
フォルクスワーゲングループ(The Volkswagen Group)は、乗用車のフォルクスワーゲン、アウディ、ベントレー、ブガッティ、ランボルギーニ、ポルシェ、バイクのドゥカティを含む、世界を代表する 12 の自動車ブランドを製造しています。同グループには、小型商用車、トラック、バスの大手メーカーであるトレイトンも含まれます。Volkswagen AG のグループソフトウェア開発担当責任者であるピーター・ガルザレラ(Peter Garzarella)氏は、次のように述べています。「当社は自社のソフトウェア開発チームが、インフラストラクチャのアーキテクチャやコンプライアンスを特に気にすることなく、ビジネス上の課題を解決する環境が必要です。今回の AWS Proton によって、ボタンを押すだけで、コンプライアンスに準拠し、進化を続ける使いやすいクラウドインフラストラクチャを社内チームに提供できます。」
BuzzFeed は、世界をリードする独立系デジタルメディア企業として、データとイノベーションを活用することで、世界中にいる数億の人々に情報を提供しています。BuzzFeed のエンジニアリング担当ディレクターであるクレメント・ウイゲベール(Clément Huyghebaert)氏は、次のように述べています。「当社ではデプロイプラットフォームの Rig を通じて、HTTP API/ユーザーインターフェイス、キューリーダー、ワンオフジョブなど、600 以上のアプリで構成されるマイクロサービスのエコシステムを管理しています。開発チームが必要なインフラストラクチャをいち早く確保しつつ、当社のアーキテクチャの基準を満たし、速度を維持した環境を保証することは、当社にとって極めて重要です。AWS Proton の機能セットの検証を行うことで、当社が開発者に対してさらにスムーズな体験を提供できるか、その結果について非常に楽しみにしています。」