このドキュメントでは、Developer Connect 分析情報を設定して、Gemini Cloud Assist Investigations と Cloud Logging で Developer Connect 分析情報を使用できるようにする方法について説明します。
Developer Connect 分析情報の詳細をご確認ください。
始める前に
-
ログイン Google アカウントにログインします。
Google アカウントをまだお持ちでない場合は、 新しいアカウントを登録します。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Developer Connect API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.- Google Cloud CLI をインストールします。
以前にインストールした場合は、
gcloud components updateを実行して、最新バージョンがインストールされていることを確認します。 -
Developer Connect サービス エージェントを作成します。
gcloud beta services identity create \ --service=developerconnect.googleapis.com \ --project=PROJECT_NUM
ロール
roles/developerconnect.serviceAgentは、このサービス エージェントに自動的に追加されます。
Developer Connect を有効にすると、 Secret Manager API も有効になります。
必要なロール
管理プロジェクトで管理される App Hub アプリケーションを使用している場合:
- 管理プロジェクトに対する Developer Connect 分析情報管理者(
roles/developerconnect.insightsAdmin)と App Hub 閲覧者(roles/apphub.viewer)。 - 管理プロジェクトの Developer Connect サービス エージェントに対する Developer Connect サービス エージェントのロール(
roles/developerconnect.serviceAgent)と Developer Connect 分析情報エージェントのロール(roles/developerconnect.insightsAgent)。
ホスト プロジェクトで管理される App Hub アプリケーションを使用している場合:
- ホスト プロジェクトに対する Developer Connect 分析情報管理者(
roles/developerconnect.insightsAdmin)と App Hub 閲覧者(roles/apphub.viewer) - ホスト プロジェクトの Developer Connect サービス エージェントに対する Developer Connect サービス エージェントのロール(
roles/developerconnect.serviceAgent)と Developer Connect 分析情報エージェントのロール(roles/developerconnect.insightsAgent) - すべてのサービス プロジェクトに対する Developer Connect 分析情報エージェント(
roles/developerconnect.insightsAgent)- 同じフォルダにない既存のリソース(Cloud Build や Artifact Registry など)を使用している場合は、これらのプロジェクトの Developer Connect サービス エージェントに Developer Connect 分析情報エージェントのロールを付与します。
コマンドラインから分析情報を表示するには:
- ホスト プロジェクトに対する Developer Connect 分析情報閲覧者(
roles/developerconnect.insightsViewer) - ホスト プロジェクトに対する Container Analysis 実行回数の閲覧者のロール(
roles/containeranalysis.occurrences.viewer)
個々のツールを使用する場合や特定のユースケースでは、追加の Google Cloud ロールや Google 以外のロールと 権限が必要になる場合があります。権限エラーが発生した場合は、適切なロールと権限があることを管理者に確認してください。
これらのロールと権限に加えて、インタラクティブ ワークフローを使用して新しい分析情報構成を構成する場合は、指定したすべてのリソースにアクセスする権限が必要です。
追加の前提条件
Developer Connect 分析情報のスコープを App Hub アプリケーションに設定する場合は、そのアプリケーションを作成する必要があります。
Developer Connect 分析情報は、アプリケーションのすべての App Hub 設定モデルをサポートしています。 Gemini Cloud Assist やその他の アプリケーション中心の機能を使用できるように、アプリケーション管理用に構成された フォルダ を使用することをおすすめします。
Developer Connect 分析情報のスコープを App Hub アプリケーションではなくプロジェクトに設定することもできます。
Cloud Build とサポートされているソースコード管理システム(GitHub、GitLab、Bitbucket)を使用する必要があります。
ログに Provenance 情報を含めるには、ビルドで Provenance を生成する必要があります。
これは、次のいずれかのソースから取得できます。
Cloud Build と Artifact Registry を使用する。
Cloud Build を使用してイメージをビルドできます。ビルドはトリガーを使用して開始する必要があり、ビルドプロセスで Provenance を生成する必要があります。 ビルドで生成されたアーティファクトは Artifact Registry に保存されます。
GitHub 構成証明を使用する。
docker/build-push-actionバージョン 4 以降を使用する場合、このアクションにより Provenance 構成証明がイメージに自動的に追加されます。または、
actions/attest-build-provenanceをpush-to-registryオプションとともに使用して、Provenance 構成証明を コンテナ レジストリに公開することもできます。これにより、レジストリ プロバイダに関係なく、 Developer Connect 分析情報で読み取ることができます。docker buildx provenanceフラグを使用する。docker buildxレジストリ エクスポータを使用する。また、
oci-artifactをtrueに設定します。 詳細
GitHub 構成証明は、一般公開されているリポジトリから取得する必要があります。
docker buildxアーティファクトは、コンテナ レジストリで一般公開されている必要があります。Provenance がなくても Developer Connect 分析情報を使用できますが、分析情報の有用性は低下します。
Gemini Cloud Assist
Developer Connect 分析情報では、アプリケーションのデプロイ イベントを調査コンテキストに追加することで、Gemini Cloud Assist のエクスペリエンスが向上します。Gemini Cloud Assist Investigations で Developer Connect 分析情報を使用するように Gemini Cloud Assist を有効にできます。
Developer Connect 分析情報のスコープを App Hub アプリケーションに設定する場合は、分析情報構成がそのアプリケーションと同じプロジェクトにある必要があります。
プロジェクトでスコープ設定されている場合、構成はスコープ内のプロジェクトと同じプロジェクトにある必要はありません。
他の該当するリソース(Developer Connect 分析情報、Google Kubernetes Engine クラスタ、Cloud Run サービス、Cloud Build、Artifact Registry リポジトリなど)を同じ場所に配置することをおすすめしますが、必須ではありません。
App Hub でアプリケーションを作成する
これは、Developer Connect 分析情報のスコープを App Hub アプリケーションに設定する場合にのみ該当します。
App Hub を設定します。Gemini Cloud Assist やその他の アプリケーション中心の機能を使用できるように、アプリケーション管理用に構成された フォルダ を使用することをおすすめします。
App Hub アプリケーションを作成します。
- 既存の Google Cloud リソースからアプリケーションを作成するには、 リソースをアプリケーションに登録するをご覧ください。
- 新しいアプリケーションを設計してデプロイするには、 App Design Center を使用します。
アプリケーションの Developer Connect 分析情報を構成する
次のコマンドを使用して、Developer Connect 分析情報の分析情報を作成します。
gcloud developer-connect insights-configs create DCI_CONFIG_NAME \
--project PROJECT_ID \
--app-hub-application APP_HUB_APPLICATION_NAME \
--target-projects TARGET_PROJECT_IDS \
--location LOCATION
ここで
DCI_CONFIG_NAME は、生成される分析情報 構成の名前です。
PROJECT_ID は、Developer Connect 分析情報構成を 作成するプロジェクトの ID です。
APP_HUB_APPLICATION_NAME は、以前に作成した App Hub アプリケーションの完全修飾名です。
これは、この分析情報構成のスコープをプロジェクトではなく App Hub アプリケーションに設定する場合にのみ適用されます。
TARGET_PROJECT_IDS は、この Developer Connect 分析情報構成のスコープを設定するプロジェクトの ID のカンマ区切りのリストです。
これは、この分析情報構成のスコープを App Hub アプリケーションではなくプロジェクト に設定する場合にのみ適用されます。
LOCATION は、この分析情報構成を作成するリージョンです。
このコマンドは自動検出プロセスをトリガーし、プロジェクト内のすべての App Hub ワークロードとサービスを検出します。このプロセスでは、必要な権限があるかどうかも確認します。
このコマンドは、構成のステータスを確認するために使用できる OPERATION_ID も返します。
Developer Connect 分析情報構成のステータスを確認できます。
gcloud developer-connect operations describe OPERATION_ID
ここで、OPERATION_ID は gcloud developer-connect insights-configs create
コマンドから返された完全指定のオペレーション ID
です。
このオペレーションは、最初のリクエストの領収書です。その中の response フィールドは、作成タスクが受け入れられた瞬間のリソースのスナップショットです。
検出プロセスの状態を取得するには、insights-configs describe コマンドを実行します。
自動検出プロセスが完了したら、次のコマンドを実行して、この Developer Connect 分析情報のステータスを確認できます。
gcloud developer-connect insights-configs describe DCI_CONFIG_NAME \
--location=REGION
ここで
DCI_CONFIG_NAME は、
gcloud developer-connect insights-configs createコマンドで使用した名前です。REGION は、構成を作成したリージョンです。
次のステップ
- Developer Connect 分析情報の詳細を確認する
- Developer Connect 分析情報の使用方法を確認する