第3章 Connectivity Link のテクノロジーとパターン
以下は、Connectivity Link が提供する主なテクノロジーとパターンです。
- Gateway API
ゲートウェイは、アプリケーションの接続およびセキュリティーにおいて重要な役割を担います。Kubernetes ベースの環境では、Gateway API が Ingress ゲートウェイをデプロイし、アプリケーションネットワークを管理するための新しい標準です。
Gateway API は、Ingress トラフィック管理用の標準化された API を提供し、複数のプロトコルをサポートします。Gateway API はユーザーペルソナの役割を想定して設計されており、設定の柔軟性と移植性を提供します。Gateway API を使用して各 OpenShift クラスターに Ingress ポリシーを設定することで、同一性、一貫性、実装の容易性を確保できます。
図3.1 Gateway API ユーザーペルソナベースの設計
- ポリシーベースの設定
プラットフォームエンジニアやアプリケーション開発者は、Kubernetes カスタムリソース定義 (CRD) として定義された Connectivity Link ポリシーを使用して、簡単にアプリケーションとインフラストラクチャーの安全性を保護し、接続できます。Connectivity Link では、TLS、認証と認可、流量制御、および DNS を管理するためのポリシーを使用できます。
ポリシーアタッチメント パターンは、オブジェクト
spec
フィールドに記述できない設定を使用して、ネットワークオブジェクトに動作を追加するために使用できます。ポリシーアタッチメントでは、デフォルトとオーバーライドの概念も提供されます。これにより、オブジェクト階層の各レベルのポリシー API で各種ロールを使用できます。これらのポリシーは、特定のルールおよびストラテジーにマージされ、効果的なポリシーを形成します。以下に示すシンプルな流量制御ポリシーは、独自の流量制御ポリシーが定義されていないターゲットゲートウェイで定義された各リスナーに対し、10 秒ごとのリクエスト数を 5 個に指定する制限を設定します。
シンプルな流量制御ポリシーの例
apiVersion: kuadrant.io/v1beta2 kind: RateLimitPolicy metadata: name: gw-rlp spec: targetRef: # Specifies Gateway API policy attachment group: gateway.networking.k8s.io kind: Gateway name: external defaults: # Means it can be overridden limits: # Limitador component configuration "global": rates: - limit: 5 window: 10s
- WebAssembly プラグイン
Connectivity Link は、他の接続管理システムのようなスタンドアロンゲートウェイではありません。Connectivity Link は、Envoy プロキシー用に開発された WebAssembly (WASM) プラグインです。つまり、Ingress に OpenShift Service Mesh、Istio、または Envoy を使用しているユーザーは、Connectivity Link を使用するために既存の Ingress オブジェクトとポリシーに大きな変更を加える必要はありません。
また、WebAssembly プラグインの設計特性として、Connectivity Link も軽量、高速、ハードウェアへの非依存、非侵入的、セキュアです。
- マルチクラスター設定ミラーリング
Connectivity Link では、マルチクラウド環境とハイブリッドクラウド環境全体でマルチクラスター設定ミラーリングを使用して、ルーティング、設定、およびポリシーを必要な場所に設定できます。クラウドサービスプロバイダーごとに異なる方法で各種ポリシーを設定する必要がなくなり、代わりに独自のポリシーを使用できます。
また、後で想定外の事態が発生しないように、開発環境、テスト環境、および実稼働環境が同じように設定されるようにすることもできます。つまり Connectivity Link を使用することで、一貫性、シンプルさ、統一されたエクスペリエンス、グローバル管理、セキュリティーコンプライアンスを確保できます。
図3.2 マルチクラウド環境およびハイブリッドクラウド環境でのマルチクラスター設定ミラーリング
- API コントローラー 1.0 開発者プレビュー
Connectivity Link では、API コントローラー 1.0 開発者プレビューコンポーネントが導入されています。これは、他製品が提供する従来の API 管理機能を超えて拡張された、次世代の API 管理アプローチを提供します。
API 管理には接続が必須であり、Connectivity Link では拡張可能なマルチクラスターおよびマルチゲートウェイ接続管理に加え、API 設計、API レジストリー、API 可観測性、認証、流量制御などの API 管理機能が提供されます。
詳細は、API コントローラー 1.0 開発者プレビューのスタートガイド を参照してください。
重要開発者プレビュー機能は、Red Hat ではいかなる形でもサポートされていません。また、機能的には完全ではなく、実稼働環境に対応していません。開発者プレビュー機能を実稼働ワークロードまたはビジネスクリティカルなワークロードには使用しないでください。開発者プレビュー機能は、Red Hat 製品に追加される可能性がある機能をいち早く提供することを目的としています。お客様はこの機能を使用してテストし、開発プロセス中にフィードバックを提供できます。
開発者プレビュー機能は、ドキュメントが提供されていない場合があり、随時変更または削除される可能性があります。また、限定的なテストしか行われていません。Red Hat は、SLA を関連付けずに開発者プレビュー機能に関するフィードバックを送信する方法を提供している場合があります。詳細は、Red Hat 開発者プレビューのサポート範囲 を参照してください。
図3.3 Connectivity Link の API 管理と接続性