Application Gateway for Containers は、Kubernetes ワークロード用のマネージド アプリケーション レイヤー (レイヤー 7) の負荷分散 とイングレス サービスです。 HTTP、HTTPS、gRPC、AI 推論トラフィックを Azure Kubernetes Service (AKS) 内のアプリケーションにルーティングし、Azureクラスターの外部で基になるデータ プレーンを操作します。
サポートされているイングレス API リソースとゲートウェイ API リソースを使用して、Kubernetes から Application Gateway for Containers を構成します。 この構成モデルを使用すると、プラットフォーム チームは共有Azureマネージド イングレス レイヤーを提供し、アプリケーション チームは Kubernetes ネイティブ リソースを使用してサービスがトラフィックを受信する方法を記述できます。
AI ワークロードの場合、Application Gateway for Containers 推論ゲートウェイは、モデル対応のルーティングと要求時エンドポイントの選択を必要とするセルフホステッド モデル サーバーをサポートします。 詳細については、「 Application Gateway for Containers - Inference Gateway」を参照してください。
Application Gateway for Containers は、Kubernetes 用に一から構築された個別の Application Gateway オファリングであり、 Application Gateway イングレス コントローラー (AGIC) からの学習によって形成された専用のコントロール プレーンとデータ プレーンを備えています。 ALB コントローラーはクラスターで実行され、Kubernetes 構成が Azure の Application Gateway for Containers 構成に変換されます。
製品概要
Application Gateway for Containers では、大まかに言えば、次の機能が提供されます。
- Kubernetes ネイティブ構成: イングレス API リソースとゲートウェイ API リソースを使用して、要求がクラスター内のサービスに到達する方法を定義します。
- Azure管理されたイングレス データ プレーン: Azureがクライアント要求を処理するデータ プレーンを操作している間、AKS クラスターの外部でイングレス トラフィックを保持します。
- 共有イングレス プラットフォーム: プラットフォーム所有のイングレス インフラストラクチャを、アプリケーション所有のルーティング構成から分離します。
- 増分導入: イングレスまたはゲートウェイ API リソースを使用して、ワークロードが時間の経過と同時に Application Gateway for Containers に移行できるようにします。
- AI 推論のサポート: ゲートウェイ API 推論拡張機能を使用して構成された、モデル対応のルーティングと要求時エンドポイントの選択を使用して、推論トラフィックをセルフホステッド モデル サーバーにルーティングします。
- アプリケーション配信制御: レイヤー 7 のルーティング、トラフィックの分割、正常性プローブ、再試行、TLS、相互認証、Web Application Firewall (WAF) ポリシーを使用します。
それはどのように機能しますか?
Application Gateway for Containers では、Kubernetes 構成とAzureトラフィック処理が分離されます。 ALB コントローラーは、イングレス、ゲートウェイ、HTTPRoute、ApplicationLoadBalancer などの Kubernetes リソースを監視し、Azureの Application Gateway for Containers に目的の構成を適用します。
Application Gateway for Containers のデプロイは、次の 4 つのコンポーネントで構成されます。
- Application Gateway for Containers リソース
- フロントエンド
- 協会
- セキュリティ ポリシー
デプロイでは、次の依存関係も参照されます。
- サブネットの委任
- ユーザー割り当てマネージド ID
Application Gateway for Containers のアーキテクチャを次の図に示します。
Application Gateway for Containers が受信要求を受け入れてバックエンド ターゲットにルーティングする方法の詳細については、「Application Gateway for Containers のコンポーネント」を参照してください。
サポートされているトラフィック管理機能
Application Gateway for Containers では、トラフィック管理用に次の機能がサポートされています。
- AI ゲートウェイの機能
- ゲートウェイ API 推論拡張機能のサポート
- マネージド ボディ ベースのルーター (BBR) を使用したモデル対応ルーティング
- エンドポイント ピッカー (EPP) を使用した、レイテンシを低減するための、最も負荷の低いモデル レプリカへの負荷を考慮したルーティング
- Web Application Firewall (WAF) を使用した安全な推論
- AKS マネージド アドオン
- 自動再試行
- 自動スケール
- 可用性ゾーンの回復性
- カスタムおよび既定の正常性プローブ
- ECDSA と RSA 証明書のサポート
- 柔軟な負荷分散戦略
- 最小リクエスト
- 負荷考慮ルーティング
- リング ハッシュ
- ラウンド ロビン
- 重み付けラウンド ロビン
- gRPC
- ヘッダーの書き換え
- HTTP/2
- HTTPS トラフィック管理:
- SSL ターミネーション
- エンドツーエンド SSL
- Ingress API と Gateway API のサポート
- 次のプレフィックス/完全一致に基づくレイヤー 7 の HTTP/HTTPS 要求転送:
- hostname
- Path
- ヘッダー
- クエリ文字列
- メソッド
- ポート (80/443)
- フロントエンド、バックエンド、またはエンドツーエンドへの相互認証 (mTLS)
- サーバー送信イベント (SSE) のサポート
- TLS ポリシー
- URL リダイレクト
- URL 書き換え
- Web アプリケーション ファイアウォール (WAF)
- WebSocket のサポート
デプロイ戦略
Application Gateway for Containers の管理に関しては、次の 2 つのデプロイ戦略があります。
-
Bring Your Own (BYO) デプロイ:Application Gateway for Containers リソース、関連付けリソース、フロントエンド リソースのデプロイとライフサイクルは、Azure ポータル、Azure CLI、Azure PowerShell、または Terraform を使用して管理します。 これらのリソースは、Kubernetes 内の構成で参照します。
- ゲートウェイ API の場合:Kubernetes で新しいゲートウェイ リソースを作成するたびに、まず、Azureでフロントエンド リソースをプロビジョニングし、ゲートウェイ リソースからそれを参照します。 Azure管理者は、フロントエンド リソースの削除を管理します。 Kubernetes のゲートウェイ リソースが削除されると、フロントエンド リソースは削除されません。
-
ALB コントローラーによって管理されます。 Kubernetes にデプロイされた ALB コントローラーは、Application Gateway for Containers リソースとそのサブリソースのライフサイクルを担当します。 ALB コントローラーは、ApplicationLoadBalancer カスタム リソースがクラスターで定義されている場合に、Application Gateway for Containers リソースを作成します。 そのライフサイクルは、カスタム リソースのライフサイクルに基づいています。
- ゲートウェイ API の場合: ApplicationLoadBalancer リソースを参照するゲートウェイ リソースを作成するたびに、ALB コントローラーは新しいフロントエンド リソースをプロビジョニングし、ゲートウェイ リソースのライフサイクルに基づいてそのライフサイクルを管理します。
サポートされているリージョン
Application Gateway for Containers は現在、次のリージョンで使用できます。
- オーストラリア東部
- ブラジル南部
- カナダ中部
- インド中部
- 米国中部
- 東アジア
- 米国東部
- 米国東部 2
- フランス中部
- ドイツ中西部
- 韓国中部
- 米国中北部
- 北ヨーロッパ
- ノルウェー東部
- 米国中南部
- 東南アジア
- スウェーデン中部
- スイス北部
- アラブ首長国連邦北部
- 英国南部
- 米国西部
- 米国西部 2
- 米国西部 3
- 西ヨーロッパ
ゲートウェイ API のサポート
ALB コントローラーは、ゲートウェイ API のバージョン v1.5 を実装します。
| Gateway API リソース | サポート | 説明 |
|---|---|---|
| GatewayClass | はい | |
| ゲートウェイ | はい | リスナーでの HTTP および HTTPS プロトコルのサポート。 リスナーで許可されるポートは 80 と 443 のみです。 |
| HTTPRoute | はい | |
| GRPCRoute | はい | |
| ReferenceGrant | はい | この API は、現在、バージョン v1alpha1 がサポートされています |
| InferencePool | はい | |
| InferenceObjective | はい | 現在、この API のバージョン v1alpha1 を実装しています |
イングレス API のサポート
ALB コントローラーは Ingress のサポートを実装します。
| Ingress API リソース | サポート | 説明 |
|---|---|---|
| イングレス | はい | リスナーでの HTTP および HTTPS プロトコルのサポート。 |
問題の報告およびフィードバックの送信
フィードバックについては、 feedback.azure.com に新しいアイデアを投稿してください。 問題が発生した場合は、Application Gateway for Containers リソースの Azure ポータルからサポート リクエストを送信してください。
料金と SLA
Application Gateway for Containers の価格については、「 Application Gateway の価格」を参照してください。
コンテナーの Application Gateway の SLA については、 オンライン サービスのサービス レベル アグリーメント (SLA) に関する説明を参照してください。
新機能
Application Gateway for Containers の新機能については、「Azure の更新情報」を参照してください。