データ所在地を指定してアナリティクス データとデバッグ データを収集する

概要

バージョン 1.13.1 以降では、新しく作成された Apigee ハイブリッド組織で、ランタイム コンポーネントがコントロール プレーンにデータを直接書き込むことができる新しいデータ パイプラインを使用できます。以前は、Google Cloud サービスに書き込む署名付き URL を生成する UDCA コンポーネントを使用して行われていました。新しいパイプラインでは、Google Cloud サービスにアップロードされたデータを処理する UDCA などの関連コンポーネントが必要ありません。Apigee ハイブリッドでのデータ所在地の使用をご覧ください。

構成

次の手順に沿って、個々のコンポーネントに新しいデータ パイプラインを使用するようにハイブリッドを構成できます。

設定認可フロー

新しいパイプラインを操作してコントロール プレーンにデータを push するための権限をランタイム サービス アカウントに設定します。この手順は、デバッグ セッションとアナリティクスが新しいパイプラインで動作できるようにするために必要です。

curl -X  PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type:application/json" \
  "https://apigee.googleapis.com/v1/organizations/ORG_NAME/controlPlaneAccess?update_mask=analytics_publisher_identities" \
  -d '{ "analytics_publisher_identities": ["serviceAccount:apigee-runtime@ORG_NAME.iam.gserviceaccount.com"]}'

レスポンスは次のようになります。

{
  "name": "organizations/newpipeline-hybrid-org/operations/8316aa78-c137-4733-92ec-cc0d2d92fd29",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata",
    "operationType": "UPDATE",
    "targetResourceName": "organizations/newpipeline-hybrid-org/controlPlaneAccess",
    "state": "IN_PROGRESS"
  }
}

更新レスポンスの name パラメータを使用して、オペレーションの状態を確認します。

curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)"  \
  -H "Content-Type:application/json"  \
  "https://apigee.googleapis.com/v1/organizations/ORG_NAME/operations/8316aa78-c137-4733-92ec-cc0d2d92fd29"

レスポンスは次のようになります。

{
  "name": "organizations/newpipeline-hybrid-org/operations/8316aa78-c137-4733-92ec-cc0d2d92fd29",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata",
    "operationType": "UPDATE",
    "targetResourceName": "organizations/newpipeline-hybrid-org/controlPlaneAccess",
    "state": "FINISHED"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.apigee.v1.ControlPlaneAccess",
    "name": "organizations/newpipeline-hybrid-org/controlPlaneAccess"
  }
}

組織の ControlPlaneAccess 構成を確認します。

curl "https://apigee.googleapis.com/v1/organizations/ORG_NAME/controlPlaneAccess" \
-H "Authorization: Bearer $(gcloud auth print-access-token)"

レスポンスは次のようになります。

{
  "synchronizerIdentities": [
    "serviceAccount:apigee-synchronizer@newpipeline-hybrid-org.iam.gserviceaccount.com"
  ],
  "analyticsPublisherIdentities": [
    "serviceAccount:apigee-runtime@newpipeline-hybrid-org.iam.gserviceaccount.com"
  ]
}

デバッグとアナリティクス データの保存場所に応じて新しいパイプラインと古いパイプラインを切り替える

サービス アカウントに適切な認可が付与されたら、新しいパイプラインを使用するように Apigee インスタンスを切り替えることができます。これは、overrides.yaml で次のフラグを設定することで実行できます。

... rest of the overrides.yaml ...
gcp:
  projectID: PROJECT_ID
  region: ANALYTICS_REGION>  # Specifies the analytics region for the hybrid org. This attribute is
                               # the regional endpoint used to push analytics and debug data to the
                               # control plane. For example: us-central1

newDataPipeline:
  debugSession: true  # this flag enables debug session to use the new data pipeline
  analytics: true     # this flag enables analytics to use the new data pipeline

k8sCluster:
  name: CLUSTER_NAME
  region: CLUSTER_LOCATION # Must be the closest Google Cloud region to your cluster. For example, us-west1
org: ORG_NAME

... rest of the overrides.yaml ...

これらの変更を helm upgrade コマンドを使用して適用します。環境を 1 つずつアップグレードします。--set env=ENV_NAME で環境を指定します。

helm upgrade ENV_RELEASE_NAME apigee-env/ \
  --install \
  --namespace APIGEE_NAMESPACE \
  --set env=ENV_NAME \
  -f OVERRIDES_FILE
  • ENV_RELEASE_NAME は、以前に apigee-env チャートをインストールしたときに使用した名前です。
  • ENV_NAME はアップグレードする環境の名前です。