すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:NGINX Ingress、ALB Ingress、およびMSE Ingress間の比較

最終更新日:Dec 10, 2024

Container Service for Kubernetes (ACK) およびACK Serverlessは、NGINX Ingress、Application Load Balancer (ALB) Ingress、およびMicroservices Engine (MSE) Ingressをサポートしています。 NGINX Ingressは手動メンテナンスが必要です。 ALB IngressとMSE Ingressは完全に管理されています。 このトピックでは、複数のディメンションのNGINX Ingress、ALB Ingress、およびMSE Ingressの違いについて説明します。

背景情報

  • NGINX Ingressは手動メンテナンスが必要です。 ゲートウェイをカスタマイズする場合は、NGINX Ingressを選択できます。

  • ALB IngressはALBインスタンスに基づいており、完全に管理され、O&Mフリーです。 各ALBインスタンスは、1秒あたり100万件のクエリ (QPS) をサポートし、ALB Ingressの拡張トラフィックルーティング機能を提供します。 詳細については、「ALB Ingressの概要」をご参照ください。

  • MSE Ingressは、MSEのクラウドネイティブゲートウェイに基づいており、完全に管理され、O&Mフリーです。 MSEの各クラウドネイティブゲートウェイは100万個のQPSをサポートし、MSE Ingressの拡張トラフィックルーティング機能を提供します。

シナリオ

タイプ

シナリオ

Nginx Ingress

  • クラスターには高度にカスタマイズされたゲートウェイが必要です。

  • クラスターは、クラウドネイティブアプリケーションのカナリアリリースと青緑色のデプロイを実行します。

ALBイングレス

  • クラスターには、完全マネージド型およびO&Mフリーのゲートウェイが必要です。

  • クラスターでは、レイヤー7のインターネットアプリケーションに高性能な自動スケーリングが必要です。

  • クラスターには、サービスレベル契約 (SLA) で最大99.995% のマルチレベルの高可用性が必要です。

  • クラスターは、クラウドネイティブアプリケーションのカナリアリリースと青緑色のデプロイを実行します。

  • クラスターは単一のALBインスタンスを使用して、複数のクラウドサービスのトラフィックを管理します。

  • クラスターには、ハイブリッドクラウドやクロスリージョンクラウドシナリオなど、複数のシナリオでのディザスタリカバリが必要です。

  • クラスターには高いQPSと多数の同時接続が必要です。

MSEイングレス

  • クラスターには、完全マネージド型およびO&Mフリーのゲートウェイが必要です。

  • クラスターには、南北トラフィックと東西トラフィック、マイクロサービスゲートウェイ、およびエンドツーエンドのカナリアリリースの集中管理が必要です。

  • クラスターは、複数のクラスター、複数のPaaSプラットフォーム、および複数のElastic Compute Service (ECS) インスタンス間で共有されるゲートウェイを使用します。

  • クラスターには、ハイブリッドクラウド、複数のデータセンター、および複数のビジネスドメイン内での内部通信が必要です。

  • クラスターには、認証、柔軟な構成、強化されたセキュリティ保護が必要です。

  • クラスターには高いQPSと高い同時実行性が必要です。

特徴の比較

項目

Nginx Ingress

ALB Ingress

MSE Ingress

サービスの位置付け

  • レイヤー7でトラフィック管理と高度なルーティング機能を提供します。

  • ビジネス要件に基づいてカスタマイズできるクラスターコンポーネント。

  • レイヤー7でトラフィック管理と高度なルーティング機能を提供します。

  • アプリケーション層で実行され、コンテナーとの深い統合を提供し、カナリアリリース、A/Bテスト、青緑色の展開、比率によるトラフィック配分など、さまざまなリリースポリシーをサポートします。

  • 超大容量を提供し、自動スケーリングと自動O&Mをサポートします。

  • Web Application Firewall (WAF) 、Function Compute、PrivateLink、トランジットルーター (TR) など、複数のクラウドサービスとの統合をサポートします。

  • 複数のネットワークサービスを統合して、ハイブリッドクラウド、リージョン、データセンター間のトラフィックルーティングを容易にします。

  • 従来のトラフィックゲートウェイ、マイクロサービスゲートウェイ、およびセキュリティゲートウェイとして機能します。 ハードウェアアクセラレーション、WAFローカル保護、プラグインマーケットプレイスなどの機能を使用して、ホットアップデートをサポートする高性能で、高度にスケーラブルで、統合が容易なクラウドネイティブゲートウェイを構築できます。

  • レイヤー7でトラフィック管理と高度なルーティング機能を提供します。 複数のサービス検出モードとサービスカナリアリリースポリシーをサポートします。 サービスカナリアリリースポリシーには、カナリアリリース、A/Bテスト、青緑色展開、およびカスタムトラフィック率に基づくトラフィック分布が含まれます。

  • アプリケーション層の負荷分散シナリオを対象とし、コンテナサービスと深く統合されています。 MSE Ingressは、要求を転送するためにポッドのIPアドレスに直接接続されます。

サービスアーキテクチャ

NGINXとLuaに基づく拡張機能を提供します。

  • Apsara Cloud Network Managementプラットフォームに基づいて開発されました。

  • CyberStarプラットフォームに基づいて開発され、自動スケーリングをサポートします。

  • オープンソースプロジェクトHigressに基づいて開発されました。 コントロールプレーンは、IstiodとEnvoyに基づいて構築されています。 Higressの詳細については、Higressをご覧ください。

  • 個々のユーザー専用。

基本ルーティング

  • コンテンツと送信元IPアドレスに基づくルーティングをサポートします。

  • HTTPの書き換え、リダイレクト、上書き、スロットリング、クロスオリジンリソース共有 (CORS) 、およびセッションの永続性をサポートします。

  • 受信および送信転送ルールをサポートします。 送信転送ルールは、スニペット設定を追加することで設定できます。

  • 転送ルールの最長パスマッチングをサポートします。 複数のパスが一致する場合、最長のパスが使用されます。

  • コンテンツと送信元IPアドレスに基づくルーティングをサポートします。

  • HTTP書き換え、リダイレクト、上書き、スロットリング、CORS、およびセッション永続性をサポートします。

  • 受信および送信転送ルールをサポートします。

  • リクエストは、ルール優先度の降順で転送ルールと照合されます。 複数のパスが一致する場合には、転送ルール番号が最も小さいパスが最も高い優先度で一致する。

  • 標準ポーリング、最小接続、ソースIPアドレスとURLに基づくコンシステントハッシングなどの負荷分散モードをサポートします。

  • コンテンツベースのルーティングをサポートします。

  • HTTPヘッダーの書き換え、リダイレクト、書き換え、スロットリング、CORS、タイムアウト、および再試行などの機能をサポートします。

  • 標準ポーリング、ランダム、最小接続、コンシステントハッシング、プリフェッチなどの負荷分散モードをサポートします。 プリフェッチモードでは、指定された時間ウィンドウ内にバックエンドサーバーに転送されるトラフィックは、安定したレートで増加します。

  • 何千ものIngressルールをサポートします。

プロトコル

  • HTTPとHTTPSをサポートします。

  • WebSocket、WSS、およびgRPCをサポートします。

  • HTTPとHTTPSをサポートします。

  • HTTP3.0、WebSocket、WSS、およびgRPCをサポートします。

  • HTTPとHTTPSをサポートします。

  • HTTP 3.0、WebSocket、およびgRPCをサポートします。

  • HTTP/HTTPSからDubboへの変換をサポートします。

構成変更

  • 非バックエンドエンドポイントを更新する場合は、リロードが必要です。 これは永続的な接続に影響します。

  • エンドポイントの設定変更は、Luaホットアップデートを使用して適用されます。

  • Luaプラグインの設定を変更すると、プロセスがリロードされます。

  • 設定のホットアップデートをサポート

  • 設定変更をリアルタイムで適用するAPI操作を呼び出します。

  • 設定、証明書、プラグインのホットアップデートをサポートします。

  • List-Watchメカニズムは、設定をリアルタイムで更新するために使用されます。

認証

  • Basic Authベースの認証をサポートします。

  • OAuthプロトコルをサポートします。

TLSベースの認証をサポートします。

  • Basic Auth、OAuth、JWT、およびOIDCに基づく認証をサポートします。

  • Alibaba Cloud IDaaSとの統合をサポートします。

  • カスタム認証をサポートします。

パフォーマンス

  • システムパラメータとNGINXパラメータを最適化する手動チューニングが必要です。

  • レプリケートされたポッドの数とリソースの量に適切な設定が必要です。 詳細については、「NGINX Ingressコントローラーの使用に関する注意事項」をご参照ください。

  • インスタンスごとに100万QPSをサポートします。

  • インスタンスごとに数千万の接続をサポートします。

  • 高速化にSSLハードウェアを使用します。

  • CPU使用率が40% に30% されると、MSE Ingressの1秒あたりのトランザクション (TPS) は、オープンソースのNGINX IngressのTPSよりも約90% 高くなります。

  • ハードウェアアクセラレーションを有効にすると、HTTPSのパフォーマンスが約80% 向上します。

可観測性

  • アクセスログを収集できます。

  • Prometheusのマネージドサービス (Prometheus) を使用して、モニタリングとアラートを設定できます。

  • Simple Log Serviceを使用してアクセスログを収集できます。

  • CloudMonitorを使用してメトリクスを収集できます。

  • CloudMonitorに基づいてアラートを設定できます。

  • トレース分析とSkyWalkingをサポートします。

  • Simple Log ServiceとPrometheusを使用してアクセスログを収集できます。

  • Prometheusを使用してモニタリングとアラートを設定できます。

  • トレース分析とSkyWalkingをサポートします。

O&M

  • マニュアルO&Mが必要

  • 水平ポッドオートスケーラー (HPA) ベースのスケーリングを設定できます

  • 最適化のためのコンピューティングリソース仕様を指定できます。

  • 完全に管理され、O&Mフリー。

  • 自動スケーリングと自動設定をサポートし、超大容量を提供します。

  • トラフィックピークを処理する自動スケーリングをサポートし、

完全に管理され、O&Mフリー。

セキュリティ

  • HTTPS に対応しています。

  • ブラックリストとホワイトリストをサポートします。

  • HTTPSによるエンドツーエンドのデータ転送、複数の証明書のサーバー名表示 (SNI) 、Rivest-Shamir-Adleman (RSA) および楕円曲線暗号 (ECC) 証明書、TLS 1.3、TLS暗号スイートをサポートします。

  • WAFをサポートします。

  • Anti-DDoSをサポートします。

  • ブラックリストとホワイトリストをサポートします。

  • HTTPS経由のデータ転送のエンドツーエンド暗号化、複数の証明書のサーバー名表示 (SNI) 、およびカスタムTLSバージョンをサポートします。

  • WAFをサポートします。

  • ブラックリストとホワイトリストをサポートします。

サービスガバナンス

  • ACKクラスターでのサービス検出をサポートします。

  • カナリアリリースをサポートします。

  • 高可用性のためのトラフィックスロットリングをサポートします。

  • ACKクラスターでのサービス検出をサポートします。

  • カナリアリリースをサポートします。

  • 高可用性のためのトラフィックスロットリングをサポートします。

  • Kubernetes、Nacos、ZooKeeper、Enterprise Distributed Application service (EDAS) 、Serverless App Engine (SAE) 、DNS、静的IPアドレスに基づくサービス検出をサポートします。

  • カナリアリリースを使用して3つ以上のアプリケーションバージョンをリリースでき、タグベースのルーティングをサポートし、MSEサービスガバナンスに基づくエンドツーエンドのカナリアリリースをサポートします。

  • MSE IngressはSentinelと統合されており、スロットル、回路遮断、および劣化をサポートします。

  • サービステストはサービスモックをサポートします。

拡張性

拡張機能を設定するためのLuaをサポートします。

拡張機能の構成に使用できるAScriptをサポートします。 詳細については、「AScriptの概要」をご参照ください。

  • WebAssemblyプラグインを使用して、複数のプログラミング言語をサポートします。

  • 拡張機能を設定するためのLuaをサポートします。

Cloud-nativeのサポート

手動メンテナンスが必要なコンポーネントで、ACKクラスターとACKサーバーレスクラスターで使用できます。 詳細については、「Ingressの概要」をご参照ください。

  • WAF、Function Compute、PrivateLink、TRなどの複数のクラウドサービスをサポートします。

  • ACKクラスターとACKサーバーレスクラスターで使用できる管理されたコンポーネント。

ACKクラスターとACKサーバーレスクラスターで使用でき、NGINX Ingressの主要なアノテーションとのシームレスな統合をサポートするユーザー側のコンポーネントです。 MSE Ingressでサポートされているアノテーションの詳細については、「MSE Ingressゲートウェイでサポートされているアノテーション」をご参照ください。