用語集

このセクションでは、Apigee Hybrid を使用する際に十分に理解しておく必要のある一般用語について説明します。

用語 定義
アプリイメージ 「イメージ」をご覧ください。
Apigee API 環境、組織、API プロキシ、その他のハイブリッド サービスの構成に使用可能なエンドポイント。これには MART 経由でアクセスします。
アプリ / アプリケーション コンテナ内、Pod 上、ノード内、クラスタ内にパッケージ化されてデプロイされたハイブリッド サービス。コンテナ イメージ、マイクロサービス、サービス、コンテナ化アプリケーション、または Docker イメージ(Docker がコンテナの場合)とも呼ばれています。
Cassandra

ゲートウェイで実行中のアプリケーションのアプリケーション構成、分散割り当てカウンタ、API キー、OAuth トークンを格納する Edge ランタイム データ リポジトリ。

これは、リソース消費の多い StatefulSet で、Message Processor とは別のワーカーノード上に配置する必要があります。

詳細については、ランタイム プレーンについてをご覧ください。

中央管理インフラストラクチャ(または「プレーン」) 「管理プレーン」をご覧ください。
CNCF Cloud Native Computing Foundation。ハイブリッド ランタイムは、OpenShift 以外の Kubernetes の任意の CNCF 準拠実装で実行できます。
構成テンプレート 「テンプレート」をご覧ください。
コンテナ

通常は 1 コンテナが 1 アプリに対応します。OS とそのファイル システムから分離され、独自のファイル システムを備えています。他のコンテナのプロセスとは対話できません。Pod 内部に存在します。Docker や rkt がコンテナの例です。

ただし、ハイブリッド ランタイム Message Processor コンテナ(mp)には、ルーターと Message Processor の両方が含まれています。

コンテナ(化)イメージ 「イメージ」をご覧ください。
コントロール プレーン 「管理プレーン」をご覧ください。
コントローラ システムを検査し、必要に応じてリソースを再割り当てします。

スケジューラ、デプロイメント、レプリケーション、エンドポイント、Kubelet などのコントローラがあります。

デプロイ 「アプリ / アプリケーション」をご覧ください。
デプロイメントの仕様 ランタイム プレーンの完全な構成ファイル。values.yaml ファイルからのデフォルト値と overrides.yaml ファイル内のカスタム設定の組み合わせです。
環境 API プロキシを実行するための分離コンテキストまたは「サンドボックス」を提供します。1 つの組織に複数の環境を設置でき、各環境にマップする Istio Ingress ゲートウェイ サービスが 1 つずつあります。クラスタ外部からのすべてのトラフィックが、この TLS で保護された内向きエンドポイントを通過します。
GCR Google Container Repository。
GKE Google Kubernetes Engine。コンテナ化アプリケーションを Kubernetes にデプロイするための、Google が管理する本番対応環境です。GKE を使用すれば、独自の Kubernetes クラスタをインストール、管理、運用する必要性が完全になくなるので、Kubernetes をすぐに起動して実行できます。
イメージ

イメージは、アプリとその依存関係の 2 種類の状態を参照できます。

  • アプリイメージは、アプリのソースコードのバージョンとその依存関係です。たとえば、Git や Perforce などのリポジトリまたはソースコード管理ツールを使用して、アプリの依存関係を管理するビルドシステム内でアプリをバージョン管理できます。

    デプロイメントの作成時にアプリイメージを参照します。

    
    kubectl run kubernetes-bootcamp --image=app_image_location
  • コンテナ イメージ: デプロイメント用にパッケージ化されたアプリイメージと Dockerfile。「コンテナ化アプリイメージ」または「Docker イメージ」とも呼ばれます。現在、Apigee Hybrid は、Docker コンテナ化アプリイメージのみをサポートしています。

    コンテナ イメージを作成するプロセスは次のとおりです。

    
    app image -> [package/build utility] -> container image

    初めてデプロイメントを作成するときは、kubectl run コマンドが image オプションを取ることに注意してください。このオプションは、アプリイメージ(コンテナ化される前)の場所を指定します。ただし、ほとんどの場所で、「イメージ」という用語は、コンテナ化アプリ(実行コマンドの結果またはパッケージング ユーティリティで処理されるアプリイメージの出力)を指します。

イメージ リポジトリ 共有コンテナ イメージのグループ。
上り / 上りコントローラ クラスタ外部からのトラフィックをクラスタ内部のサービスにルーティングするコンテナ化アプリ。
KMS 鍵管理サービス。トラフィックの暗号化と復号用の鍵と OAuth トークンを、格納、保持、提示します。Edge KMS がアプリ、デベロッパー、API プロダクト用の鍵を管理します。
KVM Key-Value マップ。暗号化されることも、暗号化されないこともある Key-Value 文字列ペアのカスタム コレクション。詳細については、Key-Value マップの使い方をご覧ください。
Kubernetes 管理マシン Kubernetes クラスタに対してコマンドを実行するために使用するローカルマシン。通常、このマシンは、Kubernetes VM にアクセス可能なデスクトップ マシンです。
管理プレーン サービス アカウントを介してランタイム プレーンと通信する、Google がホストするセントラル サービス。
MART

ランタイム データ用の API は、ローカル ランタイム データストア(Cassandra)とやり取りします。パブリック Apigee API がランタイム データにアクセスして管理するための API プロバイダとして機能します。

MART は、Message Processor と同様、ステートレス アプリケーションです。これは、Kuberenetes コンテナ化アプリです。

詳細については、ランタイム プレーンについてをご覧ください。

マスターノード apiserver、cloud-controller-manager(CCM)、scheduler、および kube-controller-manager を含むノードを表す Kubernetes 用語。
Message Processor(MP)

Message Processor は、お客様の API ランタイム リクエストを処理し、プロキシ ポリシーを適用します。「API ゲートウェイ」とも呼ばれます。

Message Processor は受信リクエストを評価し、必要に応じて Apigee ポリシーを実行し、バックエンド システムやその他のシステムを呼び出してデータを取得します。システムからのレスポンスを受信すると、Message Processor はレスポンスをフォーマット化してクライアントに返します。

MP は Kubernetes Deployment です。これは、単一の Edge 環境用に構成され、Synchronizer がデータを提供する共有ファイル システム内の範囲指定されたサブディレクトリを指します。

MP は、リソース消費が多く、Cassandra とは別のワーカーノードに配置する必要があります。

詳細については、ランタイム プレーンについてをご覧ください。

名前空間 クラスタ リソースの分割に使用される仮想クラスタ。名前空間はユーザー数の多い大規模なクラスタ向けです。ユーザーが数十人しかいない小規模なクラスタでは、名前空間はほとんど必要ありません。
ノード クラスタに応じて、仮想マシンまたは物理マシンになるワーカーマシン。Kubernetes は、ノード オブジェクトを作成しますが、ノード自体は作成しません。ノードは、Google Compute Engine(GCE)などの外部クラウド プロバイダによって作成されます。
オープンソース Kubernetes Kubernetes の参照実装。Kubernetes をご覧ください。Apigee Hybrid ランタイムは、オープンソース Kubernetes と CNCF 対応の Kubernetes のオープンソース ベースのバージョンで動作します。
組織 API プロキシ、API プロダクト、API パッケージ、アプリ、デベロッパーを含む、Apigee アカウント内のすべてのエンティティのコンテナ。このドキュメントでは、「Apigee 組織」と「ハイブリッド対応組織」を同じ意味で使用しています。

ハイブリッドをインストールして使用するには、GCP プロジェクトにバインドされた Apigee 組織が必要です。この操作は、組織の作成時にプロビジョニングというプロセスで行います。

Apigee 組織は、GCP 組織と同じではありません意味が曖昧になる可能性がある場合、このドキュメントでは組織が Apigee 組織であることを明記します。

Pod Pod は、Kubernetes の基本構成要素であり、ユーザーが作成またはデプロイする Kubernetes オブジェクト モデルの最も小さい単純な単位です。Pod は、クラスタ上で実行中のプロセスを表します。
プロキシ 「API プロキシ」もご覧ください。API プロキシは、バックエンド サービス API の「代役」を務める抽象化レイヤで、セキュリティ、レート制限、割り当て、アナリティクスなどの付加価値機能を提供します。
レプリケーション コントローラ ポッドを再スケジュールして、ポッドの自己回復を処理します。
リソース 「Kubernetes API リソース」もご覧ください。クラスタだけでなく、その中のコンテナ、アプリケーション、およびその他のリソースの管理に使用するオブジェクト。

API リソースには、検出、負荷分散、構成、ストレージを提供するサービスが含まれます。API リソースの例が Ingress コントローラです。

ランタイム プレーン

独自の Kubernetes クラスタで管理する Apigee Hybrid サービスは、ランタイム プレーン内に存在します。これらのサービスは、サービス アカウントを介して管理プレーンと通信します。

MART、Synchronizer、Message Processor、Cassandra などがあります。

詳細については、ランタイム プレーンについてをご覧ください。

サービス

ランタイム プレーン内の Kubernetes クラスタ上で実行されているコンテナ化アプリの総称です。これらのサービスには、MART、Synchronizer、Message Processors、Cassandra などがあります。

詳細については、ランタイム プレーンについてをご覧ください。

Snuffleupagus 子供のテレビ番組で大人気の、ゆっくり動く毛むくじゃらの巨大なマンモス。
ステートフル ノード 状態を維持するために永続ストレージを必要とするクラスタノード。専用ノードプールの構成をご覧ください。
ステートレス ノード 永続ストレージを必要としないクラスタノード。専用ノードプールの構成をご覧ください。
Synchronizer

各環境のデプロイ構成とイベントの管理プレーンをポーリングするランタイム プレーン サービス。デプロイされたプロキシやプロキシ構成ファイルなどの必要なメタデータをランタイム プレーンにダウンロードします。

Synchronizer は、Message Processor が読み取る共有ファイル システムに情報を保存します。これは、DaemonSet アプリケーションとして実行されます。ランタイム API トラフィックはなく、単一のプロセス / Kubernetes Pod から複数の環境のデータを同期できます。

詳細については、ランタイム プレーンについてをご覧ください。

テンプレート

サービスを定義する YAML ファイル。ほとんどのハイブリッド サービスが独自のテンプレートを使用しています。たとえば、mp.yaml は、Message Processor サービスを定義します。

インストール中に、apigeectl コマンドによって、複数のテンプレートがクラスタの構成情報を含む values.yaml という名前の 1 つのファイルに統合されます。overrides.yaml ファイルを使用して、values.yaml ファイル内の一部の値をオーバーライドできます。

ハイブリッド構成テンプレートは、Kubernetes 管理マシンの hybrid_install_dir/templates ディレクトリにあります。

UDCA

Universal Data Collection Agent。アナリティクス、トレース、デプロイのステータス データを抽出して UAP に送信する、ランタイム プレーンのデータ コレクション Pod 内で実行されるサービス。

詳細については、トレース、アナリティクス、デプロイ ステータス データの収集をご覧ください。

UAP

統合分析プラットフォーム。受信したアナリティクス、トレース、デプロイのステータス データを処理し、Apigee Hybrid UI または Apigee API 経由でユーザーが利用できるようにする、管理プレーン内の Apigee サービス。

詳細については、トレース、アナリティクス、デプロイ ステータス データの収集をご覧ください。

Volume Pod 内のすべてのコンテナ化アプリケーションで使用可能な共有ストレージ。