Apigee Operator for Kubernetes の概要

このページは ApigeeApigee ハイブリッドに適用されます。

Apigee Edge のドキュメントを表示する。

Apigee Operator for Kubernetes を使用すると、API プロダクトオペレーションの定義などの API 管理タスクを Kubernetes ツールによって行えます。kubectl などの使い慣れた Kubernetes ツールと統合されたコマンドライン インターフェースを提供することで、クラウドネイティブ デベロッパーをサポートするように設計されています。APIM Operator はさまざまな APIM リソースを使用して、Google Kubernetes Engine クラスタを Apigee ランタイムと同期させます。

利点

Apigee Operator for Kubernetes を使用すると、組織は次のようなメリットを得られます。

  • API 管理の簡素化: API プロデューサーは Kubernetes リソース定義を使用して API を管理し、保護できるようになります。他の Kubernetes リソースに使用するものと同じツールとワークフローを API の管理に使用できます。
  • ネットワークの簡素化: APIM Operator はロードバランサ レベルで API ポリシーを適用します。これにより、ネットワークの設定が簡素化され、API アクセスとセキュリティの管理の複雑さが軽減されます。
  • 詳細なアクセス制御: Apigee カスタム リソース定義に Kubernetes のロールベース アクセス制御(RBAC)が追加されることで、API デベロッパー、プラットフォーム管理者、インフラストラクチャ管理者など、さまざまなロールに対して詳細なアクセス制御が可能になります。
  • Kubernetes との統合: APIM Operator はカスタム リソース定義(CRD)や Helm チャートといった Kubernetes に固有のコンセプトと統合されており、クラウドネイティブ デベロッパーにシームレスなエクスペリエンスがもたらされます。
  • コンテキストの切り替えの削減: Kubernetes 環境から API の管理を直接行えるため、デベロッパーはさまざまなツールやインターフェースを切り替える必要が少なくなります。

Apigee Operator for Kubernetes を使用するケース

Apigee Operator for Kubernetes は、Kubernetes ツールを使用して API を管理する API プロデューサーが使用するように設計されています。これは、Kubernetes に精通しており、他の Kubernetes リソースに使用しているのと同じツールとワークフローを使用して API を管理する必要があるクラウド ネイティブ デベロッパーにとって特に有効です。Apigee Operator for Kubernetes を使用すると、既存の Apigee ユーザーは Cloud Native Computing Foundation(CNCF)テクノロジーに基づくツールを使用して API 管理インフラストラクチャを拡張できます。

Apigee Operator for Kubernetes の仕組み

Apigee Operator for Kubernetes は、アプリケーション ロードバランサの GKE Gateway とトラフィック拡張機能を使用して、ポリシー適用ポイント(PEP)として機能します。トラフィック拡張機能は、Apigee Extension Processor を使用して Apigee を呼び出し、Apigee はポリシー決定点(PDP)の役割を果たします。

Apigee Operator for Kubernetes を構成するときに、次のいずれかの方法でトラフィック拡張機能を記述できます。

  • APIMExtensionPolicy を作成します。このアプローチでは、Apigee Operator for Kubernetes が、適切な構成で GKE Gateway に必要なトラフィック拡張機能を作成します。他のトラフィック拡張機能がない場合や、自身で作成したくない場合は、この方法を使用することをおすすめします。Apigee トラフィック拡張機能との連携が必要な他のトラフィック拡張機能が GKE Gateway にある場合は、APIMExtensionPolicy を使用しないでください。

    この方法で Apigee Operator for Kubernetes を実装する方法については、APIMExtensionPolicy を作成するをご覧ください。

  • ApigeeBackendService を使用します。Cloud Load Balancing トラフィック拡張機能を作成して管理し、トラフィック拡張機能リソースに拡張機能として Apigee を追加する場合は、この方法を使用することをおすすめします。Apigee トラフィック拡張機能を他のトラフィック拡張機能と連携させる必要がある場合は、ApigeeBackendService を使用する必要があります。

    このアプローチを使用して Apigee Operator for Kubernetes を実装する方法については、ApigeeBackendService を作成するをご覧ください。

要件

Apigee Operator for Kubernetes をインストールする前に、次の点に注意してください。

  • Apigee Operator for Kubernetes には、GKE バージョン 1.27 以降を搭載した GKE クラスタが必要です。
  • Apigee Operator for Kubernetes は、Apigee バージョン 1-15-0-apigee-4 以降でのみ使用できます。現在のところ、Apigee ハイブリッドでは使用できません。
  • Apigee Operator for Kubernetes には、Helm バージョン 3.13.3 以降が必要です。

既知の制限事項

Apigee Operator for Kubernetes には次の制限が適用されます。

  • REST API のみがサポートされています。gRPC と GraphQL はサポートされていません。
  • API 管理ポリシーが適用されたリージョンまたはグローバルの GKE Gateway リソースが最大 25 個サポートされています。
  • 1 つの環境に適用できる APIM 拡張機能ポリシーは最大 50 個です。追加の APIM 拡張機能ポリシーを追加するには、新しい環境を作成する必要があります。
  • API 管理ポリシーは Gateway リソースにのみ接続でき、HTTPRoutes には接続できません。API 管理ポリシーを使用して HTTPRoute を制御することはできません。代わりに、ApimTemplate リソースの条件付きポリシー機能を使用して、ルート(ベースパスまたはヘッダー)に条件付きでポリシーを適用することもできます。
  • リージョン拡張はサポートされていません。構成した Apigee Operator for Kubernetes を他のリージョンに拡張することはできません。
  • ApigeeBackendService を使用して GKE トラフィック拡張機能を実装する場合は、GKE バージョン 1.34.x 以降を使用し、すべてのゲートウェイ リソースを default Namespace にデプロイする必要があります。
  • API バージョンが公開プレビュー版から変更されました(現在のバージョンは apim.googleapis.com/v1 です)。Apigee Operator for Kubernetes の一般提供版は以前にリリースされた公開プレビュー版と互換性がなく、公開プレビュー版からアップグレードすることはできません。

次のステップ