先ごろの Ignite カンファレンスで、Microsoft は Azure Container Apps を使用した新しいクラウドネイティブ製品を発表した。これにより、開発者はコンテナを使用するマイクロサービスアーキテクチャを構築できる。このサーバレス Kubernetes ベースのサービスは公開プレビュー中だ。
Azure Container Apps Service は、Azure Kubernetes インフラストラクチャ (コントロールプレーン) 上に構築され、Kubernetes イベント駆動自動スケーリング (KEDA)、分散アプリケーションランタイム (Dapr)、Envoy などのオープンソースプロジェクトからなる。Microsoft の Azure のプリンシパルプログラムマネージャである Jeff Hollan 氏は、クラウドネイティブアプリと Azure のオープンソースの Ignite セッションで次のように述べた:
Container Apps は、ゼロへのスケーリングを含む組み込みの HTTP ベース自動スケーリングと、キュー、ストリーム、またはデータベースからのメッセージを処理する可能性のあるコンテナを実行するイベント駆動ベースの自動スケーリングの両方の組み合わせを提供する唯一のサーバレスコンテナソリューションです。さらに、任意の言語、フレームワーク、またはランタイムを使用するコンテナで構築されたマイクロサービスアーキテクチャをサポートし、強力なオープンソースプロジェクトとフレームワークへのネイティブアクセスを提供します。
Azure Container Service は、一連の宣言型ルールを通じて水平方向に拡張され、使用されていない時は、サービスはゼロに縮退され、請求が一時停止される。スケールアウトは、KEDA でサポートされているトリガで発生する。
出典: https://docs.microsoft.com/en-us/azure/container-apps/overview
さらに、Azure Container Apps は Dapr API のフルマネージドバージョンを提供し、開発者がサイドカーをアプリケーションインスタンスの横で実行できるようにする。また、アプリケーションバージョンを管理するための複数リビジョンのサポート、トラフィックの分割とアプリケーションバージョン間のバランシング、アプリケーションシークレットの保護、アプリケーション間の通信、および Log Analytics を介した統合監視の提供を可能にしてアプリケーションのライフサイクル管理を簡素化する。
Microsoft は、開発者が Azure Container Instances (ACI)、Azure App Services、Azure Functions、Azure Kubernetes Service (AKS)、および Azure Spring Cloud を使用して Azure 上にクラウドネイティブおよびコンテナ化されたアプリケーションを構築およびデプロイするためのさまざまなオプションを提供している。それでも、Thinktecture AG のコンサルタントである Thorsten Hans 氏がブログ投稿で結論付けているように、Azure Container Apps は Kubernetes API とコントロールプレーンへの直接アクセスを必要としないユーザを対象としている:
率直に認めましょう。Kubernetes は難しい。これは、基盤となるアプリケーションプラットフォームに取り組み、習得するのではなく、ビジネス要件の解決に集中しようとする新規参入者や開発者に特に当てはまります。Azure Container Apps の台頭により、チームと個々の開発者は、ビジネス要件の解決に集中し続け、フルマネージドサービスに簡単にクラウドネイティブアプリケーションをデプロイできます。
さらに、Microsoft の Global Black Belt でクラウドネイティブアプリケーションのスペシャリストの Dennis Zielke 氏は、Medium ブログで次のように述べた:
... 新しい Azure Container Apps は、比較的単純な概念に基づく非常に強力なプラットフォームです。ダウンタイムのない継続的なアプリケーションのアップグレードが必要な場合に、Kubernetes で同様のことを実現するためのインフラストラクチャとの取り組みや概念を比較したとき、この新しいサービスにエキサイトすることでしょう。
Azure Container Apps は現在、East US2 リージョンのみで利用可能で、価格の詳細は価格ページにある。さらに、ドキュメントとガイダンスはランディングページで利用可能だ。