ハイブリッド管理プレーンにデプロイされたプロキシは、Synchronizer(apigee-sync
)というサービスによりランタイム プレーンにダウンロードされます。ダウンロードされたプロキシはポッド ストレージに保存されます。MP は、このストレージからプロキシを取得し、デプロイします。
もちろん、API プロキシを呼び出してデプロイ状況を確認することもできます。このセクションでは、プロキシの同期とデプロイを確認する別の方法について説明します。
デプロイ済みのプロキシのリストを取得する
MP にデプロイされたプロキシのリストを取得するには、classification/tree
API を使用します。
- クラスタ内のポッドの名前を取得します。
kubectl get pods -n namespace
- ポート転送を使用して、
apigee-runtime
ポッドにアクセスします。ポート転送の構文は次のとおりです。kubectl port-forward -n namespace podname 8843:8843
例:
kubectl port-forward -n apigee \ apigee-runtime-my-organization-test-blue-57965b7789-6j4bp 8843:8843
- 次の例のように、別のターミナル ウィンドウを開き、
curl
などのユーティリティを使用してclassification/tree
API にリクエストを送信します。curl -k https://0:8843/v1/classification/tree
次のレスポンス例には、test 環境にデプロイされたプロキシの情報が含まれています。
[ { "condition" : "(always matches)", "virtualHost" : { "env" : "test", "name" : "default", "org" : "my-organization", "tree" : { "elements" : [ { "application" : "myproxy", "basePath" : "/myproxy", "name" : "default", "revision" : "1" } ], "name" : "IdentificationTree" } } } ]
同期データを直接表示する
ランタイム プレーンと同期されたデータは、apigee-sync
ポッドと apigee-runtime
ポッド内にマウントされたディレクトリに保存されます。このセクションでは、ポッドのファイル システムで同期されたデータの表示方法について説明します。
apigee-runtime ポッドで同期データを表示する
- クラスタ内のポッドの名前を取得します。
kubectl get pods -n namespace
apigee-runtime
ポッドのシェルを取得します。kubectl exec -it -n your_namespace runtime_pod_name \ --container apigee-runtime -- /bin/bash
例:
kubectl exec -it -n my-namespace \ apigee-runtime-hybrid-docs-test-blue-6fb96f5b9-2k8hp \ --container apigee-runtime -- /bin/bash
/opt/apigee/repomnt
ディレクトリのコンテンツを表示します。プロキシデータが同期されている場合、次のようなディレクトリのコンテンツが表示されます。ls /opt/apigee/repomnt 20190207.184443.394 owners versions.properties
cd
を実行して、名前の先頭に最新のタイムスタンプが付いているディレクトリに移動します(この例では20190207.184443.394
)。- このディレクトリに
env.json
ファイルがあります。このファイルには、管理プレーンからダウンロードされた API ランタイム環境が記述されています。これは、プロキシ、環境情報、キーストアなど、ランタイムの機能に必要な共有情報の「契約」を表します。 deployments
ディレクトリにドリルダウンすると、プロキシのデプロイ情報が表示されます。config
ディレクトリにドリルダウンすると、各環境の実際のプロキシ構成(プロキシ バンドル)とキーストアが見つかります。
apigee-sync ポッドの同期データを表示する
- クラスタ内のポッドの名前を取得します。
kubectl get pods -n namespace
apigee-sync
ポッドのシェルを取得します。kubectl exec -it -n your_namespace \ sync_pod_name -- /bin/bash
例:
kubectl exec -it -n my-namespace \ apigee-sync-6wkvq -- /bin/bash
- ポッドで次のディレクトリに移動し、同期データを探します。
/opt/apigee/repomnt/your_org/yourEnv
例:
ls /opt/apigee/repomnt/hybrid/test 20190207.184443.394 owners versions.properties
cd
を実行して、名前の先頭に最新のタイムスタンプが付いているディレクトリに移動します(この例では20190207.184443.394
)。- このディレクトリに
env.json
ファイルがあります。このファイルには、管理プレーンからダウンロードされた API ランタイム環境が記述されています。これは、プロキシ、環境情報、キーストアなど、ランタイムの機能に必要な共有情報の「契約」を表します。 deployments
ディレクトリにドリルダウンすると、プロキシのデプロイ情報が表示されます。config
ディレクトリにドリルダウンすると、各環境の実際のプロキシ構成(プロキシ バンドル)とキーストアが見つかります。