ACKマネージドクラスターおよびACKサーバーレスクラスターは、NGINX Ingress、Application Load Balancer (ALB) Ingress、およびMicroservices Engine (MSE) Ingressをサポートしています。 NGINX Ingressは手動メンテナンスが必要です。 ALB IngressとMSE Ingressは完全に管理されています。 このトピックでは、使用シナリオ、使用方法、および機能の観点から、NGINX Ingress、ALB Ingress、およびMSE Ingressの違いについて説明します。 このトピックで説明する比較の詳細に基づいて、ビジネスに適したIngressタイプを選択できます。
背景情報
NGINX Ingressは、オープンソースのIngress NGINX Controllerに基づいて、レイヤー7でトラフィック管理と高度なルーティング機能を提供します。 NGINX Ingressは、アップストリームコミュニティおよびサポート拡張機能と互換性があります。 NGINX Ingressは手動メンテナンスが必要です。 NGINX Ingressには、サービスレベル契約 (SLA) 保証は提供されません。 ゲートウェイをカスタマイズする場合は、NGINX Ingressを選択できます。
ALB IngressはALBインスタンスに基づいて開発され、NGINX Ingressと完全に互換性があります。 ALB Ingressは完全に管理されており、オールインワンアーキテクチャを採用しています。 ALB Ingressは、SSLハードウェアアクセラレーション、自動スケーリング、低レイテンシ、および複雑なルーティングをサポートしています。 各ALBインスタンスは、1秒あたり100万件のクエリ (QPS) をサポートし、ALB Ingressの拡張トラフィックルーティング機能を提供します。 詳細については、「ALB Ingressの管理」をご参照ください。
Higress Enterprise Editionゲートウェイとして、MSE IngressはNGINX Ingressと互換性があり、マイクロサービスのシナリオに適しています。 MSE Ingressは、複数のサービス検出モード、さまざまな認証方法、複数の言語で記述されたプラグインと拡張機能をサポートしています。 ALB Ingressは、カナリアリリース、リソースプリフェッチ、およびトラフィックスロットリングをサポートしています。 各MSEクラウドネイティブゲートウェイは100万個のQPSをサポートし、MSE Ingressの拡張トラフィックルーティング機能を提供します。
シナリオ
タイプ | シナリオ |
Nginx Ingress |
|
ALBイングレス |
|
MSEイングレス |
|
実装
次の図は、NGINX Ingress、ALB Ingress、およびMSE Ingressがwww.example.net/appによって受信したリクエストをバックエンドアプリケーションに転送する方法を示しています。
NGINX Ingresses
NGINX Ingressコントローラは、制御プレーンとデータプレーンの両方を統合する実装です。 NGINX Ingressコントローラの各ポッドは、制御プレーンとして機能するコントローラプロセスと、データプレーンとして機能する他のNGINXプロセスとを実行します。 したがって、NGINX Ingressコントローラーのポッドは、設定の要求とユーザーからの要求の両方を処理します。
ALBイングレス
ALB Ingressコントローラーは、APIサーバーを使用してIngressおよびAlbConfigリソースの変更を動的に取得し、ALBインスタンスを更新します。 NGINX Ingressコントローラとは異なり、ALB Ingressコントローラは、ALBインスタンスのマネージド制御プレーンです。 ALBインスタンスは管理しますが、ユーザーリクエストは処理しません。 ユーザーリクエストはALBインスタンスによって配信されます。
MSEイングレス
MSE Ingressコントローラーは、クラスター内のMseIngressConfigsによって定義されたIngressリソースをリッスンし、MSEクラウドネイティブゲートウェイを調整して、Ingress設定で指定されたトラフィック管理ルールを実装します。 NGINX Ingressコントローラーとは異なり、MSE Ingressコントローラーは、MSEクラウドネイティブゲートウェイとその制御プレーンを管理するために使用されます。 MSE Ingressコントローラーのポッドは、ユーザーからの要求を処理しません。 ユーザーリクエストは、MSEクラウドネイティブゲートウェイによってルーティングおよび転送されます。
特徴の比較
項目 | Nginx Ingress | ALB Ingress | MSE Ingress |
サービスの位置付け |
|
|
|
サービスアーキテクチャ | NGINXとLuaに基づく拡張機能を提供します。 |
|
|
基本ルーティング |
|
|
|
プロトコル |
|
|
|
構成変更 |
|
|
|
認証 |
| TLSベースの認証をサポートします。 |
|
パフォーマンス |
|
|
|
可観測性 |
|
|
|
O&M |
|
| ゲートウェイは完全に管理され、O&Mフリーです。 |
セキュリティ |
|
|
|
費用と費用 |
|
| |
詳細については、「NGINX Ingressコントローラーの管理」をご参照ください。 | 詳細については、「ALB Ingressコントローラーの管理」をご参照ください。 | 詳細については、「MSE Ingress Controllerコンポーネントの管理」をご参照ください。 | |
サービスガバナンス |
|
|
|
拡張性 | 拡張機能を設定するためのLuaをサポートします。 | 拡張機能の構成に使用できるAScriptをサポートします。 詳細については、「AScriptの概要」をご参照ください。 |
|
Cloud-nativeのサポート | 手動メンテナンスが必要なコンポーネントで、ACKクラスターとACKサーバーレスクラスターで使用できます。 詳細については、「Ingressの概要」をご参照ください。 |
| ACKクラスターとACKサーバーレスクラスターで使用でき、NGINX Ingressの主要なアノテーションとのシームレスな統合をサポートするユーザー側のコンポーネントです。 MSE Ingressでサポートされているアノテーションの詳細については、「MSE Ingressゲートウェイでサポートされているアノテーション」をご参照ください。 |
参考情報
NGINX Ingressから他のタイプのIngressまたはService Mesh (ASM) ゲートウェイにワークロードを移行する方法の詳細については、以下のトピックを参照してください。