Active Assist でのサーバーレス パイプラインの使用

Last reviewed 2021-06-09 UTC

このドキュメントは、Google Cloud 組織で Active Assist を使用するために、自動化パイプラインを構築する、企業のアーキテクトとソフトウェア デベロッパーを対象としています。これは、Active Assist を使用してクラウド フットプリントを大規模に最適化するために企業が使用できるアーキテクチャ パターンについて説明するシリーズの一部です。このシリーズは、次のパートで構成されています。

このチュートリアルでは、Google Cloud サーバーレス テクノロジーを使用して、Active Assist の推奨事項を取得および処理する自動化パイプラインを構築する方法を説明します。推奨事項は、企業が設定したビジネスルールに基づきます。このチュートリアルで設定する自動化パイプラインは、チーム主導の確認と作動のプロセスを維持しながら、Active Assist を大規模に操作する際に役立ちます。このアプローチは、企業が Active Assist ポートフォリオの使用を拡大しながら、チーム内での確認と作動のプロセスを管理する場合に便利です。これは、継続的インテグレーションと継続的デリバリー(CI/CD)のパイプラインの代わりに使用できます。

このチュートリアルで示すアーキテクチャは汎用的なものなので、他のサーバーレス プロダクトと連携するように拡張できます。このチュートリアルでは、次の Google Cloud テクノロジーに精通していることを前提としています。

このチュートリアルを完了するには、Slack や同様の通知ツールやチケット処理ツールのアカウントが必要です。このツールは、マシンにセットアップしていつでも使用できる状態にしておく必要があります。

アーキテクチャ

このチュートリアルで示すアーキテクチャはモジュール式であるため、通知コンポーネントをビジネスの要件に合わせて適応させることができます。このチュートリアルでは、通知を生成して Slack に送信する方法を説明します。Pub/Sub やその他の通知 / チケット処理ツールに通知を送信することを選ぶこともできます。

次のアーキテクチャの図に、このチュートリアルで使用するコンポーネントを示します。

サーバーレス パイプライン。

このアーキテクチャは、次のコンポーネントから構成されています。

  • スケジューラが一定の間隔でトリガーする Cloud Run サービス。このサービスは、Firestore コレクションで定義および保持されているメタデータ(プロジェクト ID と Recommender タイプ)を読み取って、Recommender API を呼び出します。
  • Active Assist の推奨事項が push され、処理される Pub/Sub トピック。
  • Active Assist の推奨事項を解析する 2 番目の Cloud Run サービス。このサービスでは、企業によって定義され、Firestore コレクションに保存されているビジネスルールに基づいて、推奨事項の処理方法が決定されます。
  • ビジネス メタデータとビジネスルールを保存する 2 つの Firestore コレクション。Firestore コレクションは次のように動作します。
    • 最初のコレクションには、Active Assist の推奨事項の取得に関連するビジネス メタデータが保存されています。このチュートリアルでは、recommendation typeGoogle Cloud project IDslocations の各属性がビジネス メタデータとして使用されます。これらの属性は、取得する推奨事項のタイプを決定するために、recommendation-collector Cloud Run サービスによって使用されます。
    • 2 番目のコレクションには、推奨事項の処理時に適用されるビジネスルールが保存されます。

目標

  • サンプルの Cloud Run サービスを作成してサンプル プロジェクト用の Active Assist の推奨事項を取得し、Pub/Sub トピックに push します。
  • サンプル メタデータとビジネスルールをそれぞれ保存する 2 つの Firestore コレクションを作成します。
  • このチュートリアルで定義したサンプル ビジネスルールに従って推奨事項を処理する 2 番目の Cloud Run サービスを作成します。
  • Cloud Run サービスで Active Assist の推奨事項のサンプルが送信される Slack チャネルを作成します。
  • Active Assist の推奨事項のサンプルを使用して、エンドツーエンドのパイプラインをテストします。

費用

このドキュメントでは、Google Cloud の次の課金対象のコンポーネントを使用します。

料金計算ツールを使うと、予想使用量に基づいて費用の見積もりを生成できます。 新しい Google Cloud ユーザーは無料トライアルをご利用いただける場合があります。

このドキュメントに記載されているタスクの完了後、作成したリソースを削除すると、それ以上の請求は発生しません。詳細については、クリーンアップをご覧ください。

始める前に

  1. In the Google Cloud console, go to the project selector page.

    Go to project selector

  2. Select or create a Google Cloud project.

  3. 推奨事項のマネージャー プロジェクト用の Google Cloud プロジェクト ID をメモしておきます。この ID は、次のセクションの環境設定で必要になります。
  4. Enable the Cloud Build, Firestore, App Engine,Pub/Sub, Cloud Run, Cloud Scheduler, and Cloud Source Repositories APIs.

    Enable the APIs

    このチュートリアルでは、デフォルトのアプリケーション認証情報を使用します。[プロジェクトへの認証情報の追加] ページで認証情報の作成を求められたら、[キャンセル] をクリックします。
  5. Make sure that billing is enabled for your Google Cloud project.

  6. 以下を作成します。
    • Slack チャネルのサンプル。
    • recommendation-rules-engine という名前のエンジンによって生成された通知を受信する、Slack アプリと受信 Webhook のサンプル。エンジンは、このチュートリアルの後半で設定します。
    詳細については、Slack チャネルを作成受信 Webhook を使用してメッセージを送信をご覧ください。

    Slack アプリと受信 Webhook URL を作成したら、このチュートリアルの後半で必要になるので、その URL をメモしておきます。

サーバーレス パイプラインの構築

このセクションでは、サーバーレス パイプラインの構築に必要なコンポーネントを作成します。プラットフォームでは、使用パターンとシステム指標に基づいて Active Assist の推奨事項が生成されます。生成される推奨事項に応じて、各推奨事項カテゴリでは、使用状況データと指標を分析するために、過去の異なるデフォルト期間が使用される場合があります。

既存のリソースと Active Assist の推奨事項がある Google Cloud プロジェクトのサンプルがある場合は、提供されたサンプルコードに適切な変更を加えた後に、パイプラインを実行してそれらの推奨事項を処理できます。

Firestore コレクションを作成する

このセクションでは、2 つの Firestore コレクションを作成します。1 つ目の activeassist-metadata コレクションには、Active Assist の推奨事項の取得に関連するビジネス メタデータが保存されます。2 つ目の activeassist-business-rules コレクションには、パイプラインで推奨事項が処理されるときに適用されるビジネスルールが保存されます。

Firestore コレクションのビジネスルールに基づいて Active Assist の推奨事項が解析されると、通知が生成されて送信されるか、推奨事項が関連する Google Cloud リソースに自動的に適用されます。

activeassist-metadata コレクションを作成する

  1. Google Cloud コンソールで、[Firestore] ページに移動します。

    Firestore を開く

  2. Firestore データベースがまだない場合は、作成します。また、Firestore データベースがすでにある場合は、次のステップに進みます。

    データベースを作成します。

    1. [ネイティブ モードを選択] をクリックして、Firestore を有効にします。
    2. Cloud Run サービスが実行されているリージョンに近いリージョンのロケーションを選択します。
    3. [データベースを作成] をクリックします。構成が完了するまで、少し時間がかかります。
  3. [Firestore] ページで [コレクションを開始] をクリックします。

  4. [コレクション ID] フィールドに、次の activeassist-metadata を入力します。

  5. 次のテーブルに示すように、フィールドにデータを入力します。次のフィールドを追加するには、[フィールドを追加] をクリックします。

    フィールド名 フィールド タイプ フィールド値
    project string Stub-Project-ID このチュートリアルでは、フィールド値のスタブが使用されます。既存の Google Cloud プロジェクトの推奨事項を使用する場合は、代わりにプロジェクト ID を入力します。
    locations array global 一部の推奨事項は、リージョン固有またはゾーン固有の可能性があります(VM 適正化の推奨事項など)。その他の推奨事項はグローバルです(例えば、IAM の推奨事項など)。
    recommenderType string google.iam.policy.Recommender なし

  6. フィールドにデータを入力したら、[保存] をクリックします。

activeassist-business-rules コレクションを作成する

  1. [コレクションの開始] をクリックします。
  2. [コレクション ID] フィールドに、次の activeassist-business-rules を入力します。

    次のテーブルに示すように、ドキュメントにデータを入力します。次のフィールドを追加するには、[フィールドを追加] をクリックします。

    フィールド名 フィールド タイプ フィールド値
    action string Notify 値を Apply に設定すると、サービスで推奨事項が適用され、未使用のロールが削除されます。
    projectId string Stub-Project-ID このチュートリアルでは、スタブの推奨事項が使用されます。既存の Google Cloud プロジェクトの推奨事項を使用する場合は、代わりにプロジェクト ID を入力します。
    projectNumber string 999999999 このチュートリアルでは、スタブの推奨事項が使用されます。

    既存の Google Cloud プロジェクトの推奨事項を使用する場合は、代わりにプロジェクト番号を入力します。プロジェクト番号は Google Cloud コンソールのようこそページで確認できます。
    recommenderType string google.iam.policy.Recommender なし
    recommenderSubtype string REMOVE_ROLE なし
    slackWebhookURL string 前の手順で生成した Slack Webhook URL を入力します。URL は次のようになります。

    https://hooks.slack.com/services/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

    このチュートリアルでは、推奨事項が自動的に適用されるかどうか、または通知が生成されて Slack などのプラットフォームに送信されるかどうかを決定するルールを作成する方法について説明します。設定したビジネスルールのサンプルの評価に基づいて推奨事項を自動的に適用する方法については、関連するリポジトリをご覧ください。

  3. ドキュメントにデータが入力されたら、[保存] をクリックします。

スケジュールされた Cloud Run サービスの作成

このセクションでは、recommendation-collector というスケジュールされた Cloud Run サービスを作成します。このサービスによって、Recommender API が呼び出されてアクティブな推奨事項が取得されます。このチュートリアルでは、Identity and Access Management Recommender API が Recommender API として使用されます。このサービスでは、取得する推奨事項を決めるために作成した activeassist-metadata Firestore コレクションからメタデータが読み取られます。

  1. [Cloud Shell で開く] をクリックして、推奨事項マネージャー プロジェクトの Cloud Shell を開きます。

    Cloud Shell で開く

    Cloud Shell が開かれると、次のコマンドが実行されます。

    [Cloud Shell で開く] ダイアログが表示されたら、[信頼] を選択して [確認] をクリックします。

  2. 現在の推奨事項のマネージャー プロジェクトのプロジェクト ID とプロジェクト番号を変数として設定します。

    export RECO_MGR_PROJECT=PROJECT_ID
    gcloud config set project $RECO_MGR_PROJECT
    export RECO_MGR_PROJECT_NUMBER=$(gcloud projects describe $DEVSHELL_PROJECT_ID --format='value(projectNumber)')
    

    PROJECT_ID を実際のプロジェクト ID に置き換えます。コマンドを入力したら、プロンプトが表示されたときに [承認] をクリックします。

  3. デプロイ リージョンの変数を設定します。

    export REGION=us-central1
    

    このチュートリアルでは us-central1 リージョンを使用しますが、Cloud Run が利用可能なすべてのリージョンを使用できます。

  4. Docker イメージ用の環境変数を作成します。

    export RECOMMENDER_IMAGE=gcr.io/$RECO_MGR_PROJECT/recommendation-collector:1.0
    
  5. Docker イメージを構築し、Container Registry にアップロードします。

     gcloud builds submit --tag $RECOMMENDER_IMAGE
    
  6. recommendation-collector サービス用のサービス アカウントを作成して、パイプライン内の他の Google Cloud サービスとやり取りします。

    gcloud iam service-accounts create recommendation-collector-sa \
      --description "Service Account that the recommendation-collector service uses to invoke other Google Cloud services" \
      --display-name "recommendation-collector-sa" \
      --project $RECO_MGR_PROJECT
    

    事前定義ロールをサービス アカウントに割り当てることで、Cloud Run サービスにきめ細かい権限を付与することをおすすめします。詳細については、サービス ID をご覧ください。

  7. recommendation-collector サービス用のサービス アカウントに Firestore と Recommender API へのアクセスを許可します。

    gcloud projects add-iam-policy-binding $RECO_MGR_PROJECT \
      --member serviceAccount:recommendation-collector-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role roles/datastore.user
    gcloud projects add-iam-policy-binding $RECO_MGR_PROJECT \
      --member serviceAccount:recommendation-collector-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role roles/pubsub.publisher
    
  8. クローンを作成したリポジトリにあるサンプル stub を使用して、このチュートリアルを実行している場合は、次のステップに進みます。

    このチュートリアルで、既存の Google Cloud プロジェクト用に生成された推奨事項を使用してパイプラインを構築している場合は、2 つの Cloud Run サービスを実行するために作成したサービス アカウントに IAM 権限を割り当てる必要があります。

    コマンドを実行する前に、このパイプラインを実行するためのプロジェクトの ID を使って、環境変数 TEST_PROJECT_ID を設定します。

    export TEST_PROJECT_ID=TEST_PROJECT_ID
    gcloud projects add-iam-policy-binding $TEST_PROJECT_ID \
      --member serviceAccount:recommendation-collector-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role roles/recommender.iamAdmin
    gcloud projects add-iam-policy-binding $TEST_PROJECT_ID \
      --member serviceAccount:recommendation-collector-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role roles/serviceusage.serviceUsageConsumer
    gcloud services enable recommender.googleapis.com --project $TEST_PROJECT_ID
    

    使用するプロジェクト ID が、Firestore コレクションの作成で入力したものと一致していることを確認します。

  9. このチュートリアルでは、STUB_RECOMMENDATIONS という環境変数を使用してサービスをデプロイします。この変数では、スタブを使用してパイプラインをテストできます。

    Cloud Run サービスをデプロイします。

    gcloud run deploy recommendation-collector \
      --image=$RECOMMENDER_IMAGE \
      --no-allow-unauthenticated \
      --region $REGION \
      --platform managed \
      --service-account recommendation-collector-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --set-env-vars="STUB_RECOMMENDATIONS=true" \
      --project $RECO_MGR_PROJECT \
    

    システムからのメッセージは、すべて受け入れます。

    Google Cloud プロジェクト用に生成された Active Assist の推奨事項を使用してパイプラインを実行する場合は、デプロイする前にコマンドから次の行を削除します。

    --set-env-vars="STUB_RECOMMENDATIONS=true"
    

Cloud Scheduler ジョブを設定して recommender-collector service を実行する

  1. Cloud Shell で、recommendation-collector サービスの実行に使用する Cloud Scheduler ジョブのサービス アカウントを作成します。

    gcloud iam service-accounts create recommender-scheduler-sa \
      --description "Service Account used by Cloud Scheduler to invoke the recommender-parser service" \
      --display-name "recommender-scheduler-sa" \
      --project $RECO_MGR_PROJECT
    
  2. サービス アカウントに run/invoker ロールを付与して、Cloud Run サービスを起動できるようにします。

    gcloud run services add-iam-policy-binding recommendation-collector \
      --member=serviceAccount:recommender-scheduler-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role=roles/run.invoker \
      --region=$REGION \
      --platform=managed
    
  3. recommendation-collector サービスの URL を取得します。

    export RECOMMENDER_SERVICE_URI=`gcloud run services describe recommendation-collector \
      --platform managed \
      --project $RECO_MGR_PROJECT \
      --region $REGION \
      --format="value(status.url)"`/run
    
  4. recommender-iam-scheduler という名前の Cloud Scheduler ジョブを作成します。

    gcloud scheduler jobs create http recommender-iam-scheduler \
      --project $RECO_MGR_PROJECT \
      --time-zone "America/Los_Angeles" \
      --schedule="0 */3 * * *" \
      --uri=$RECOMMENDER_SERVICE_URI \
      --description="Scheduler job to invoke recommendation pipeline" \
      --oidc-service-account-email="recommender-scheduler-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com" \
      --headers="Content-Type=application/json" \
      --http-method="POST"
    

    お住まいの地域に合わせてタイムゾーンを設定してください。タイムゾーン値の形式は tz database に基づきます。

    詳細については、gcloud scheduler jobs create http をご覧ください。

    Cloud Scheduler ジョブは、recommendation-collector サービス用の /run ルートを呼び出します。

    --schedule="0 */3 * * *" フラグを設定すると、3 時間ごとに Scheduler ジョブが実行されます。この設定は要件に従って変更できます。詳細については、cron ジョブ スケジュールの構成をご覧ください。

推奨事項を処理する最適化案ルールエンジンを作成する

このセクションでは、recommendation-rules-engine という名前の 2 番目の Cloud Run サービスを作成して、recommendation-collector サービスで収集する推奨事項を処理します。recommendation-rules-engine サービスは、新しい推奨事項が activeassist-recommendations トピックに push されると、Pub/Sub によって呼び出されます。

このサービスでは、activeassist-business-rules コレクションで定義したビジネスルールに基づいて推奨事項が解析されます。

  1. Cloud Shell で、recommendation-rules-engine ディレクトリを開きます。

    cd ../recommendation-rules-engine
    
  2. Docker イメージ用の環境変数を作成します。

    export RULES_ENGINE_IMAGE=gcr.io/$RECO_MGR_PROJECT/recommendation-rules-engine:1.0
    
  3. Docker イメージを構築し、Container Registry にアップロードします。

    gcloud builds submit --tag $RULES_ENGINE_IMAGE
    
  4. recommendation-rules-engine サービス用のサービス アカウントを作成して、パイプライン内の他の Google Cloud サービスとやり取りします。

    gcloud iam service-accounts create recommendation-rules-sa \
     --description "Service Account that recommendation-rules-engine uses to invoke other Google Cloud services" \
     --display-name "recommendation-rules-sa" \
     --project $RECO_MGR_PROJECT
    
  5. recommendation-rules-engine サービス用のサービス アカウントに Firestore へのアクセスを許可します。

    gcloud projects add-iam-policy-binding $RECO_MGR_PROJECT \
      --member serviceAccount:recommendation-rules-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role roles/datastore.user
    

    このチュートリアル用に用意されたスタブを使用している場合は、次のステップに進みます。

    このチュートリアル用に用意されたスタブではなく、Google Cloud プロジェクト用に生成された推奨事項を使用してパイプラインをテストしている場合は、次のコマンドを実行して、ルールエンジン サービス アカウントにプロジェクトへのアクセスを許可してください。

    gcloud projects add-iam-policy-binding $TEST_PROJECT_ID \
      --member serviceAccount:recommendation-rules-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role roles/serviceusage.serviceUsageConsumer
    gcloud projects add-iam-policy-binding $TEST_PROJECT_ID \
      --member serviceAccount:recommendation-rules-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role roles/recommender.iamAdmin
    gcloud projects add-iam-policy-binding $TEST_PROJECT_ID \
      --member serviceAccount:recommendation-rules-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role roles/resourcemanager.projectIamAdmin
    
  6. Cloud Run サービスをデプロイします。

    gcloud run deploy recommendation-rules-engine \
      --image=$RULES_ENGINE_IMAGE \
      --no-allow-unauthenticated \
      --region $REGION \
      --platform managed \
      --service-account recommendation-rules-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --project $RECO_MGR_PROJECT
    

    システムからのメッセージは、すべて受け入れます。

  7. recommendation-rules-engine の URL を取得します。

    export RECOMMENDER_SERVICE_RULES_URI=`gcloud run services describe recommendation-rules-engine \
      --platform managed \
      --project $RECO_MGR_PROJECT \
      --region $REGION \
      --format="value(status.url)"`/process
    

    この手順で取得した URL は、次のステップで作成する Pub/Sub トピックで新しい推奨事項が使用可能になると呼び出されます。

アクティブな推奨事項用の Pub/Sub トピックを作成する

このセクションでは、recommender-collector サービスで Recommender API を呼び出して取得する Active Assist の推奨事項用の Pub/Sub トピックを作成します。

  1. Cloud Shell で Pub/Sub トピックを作成します。

    gcloud pubsub topics create activeassist-recommendations
    
  2. recommendation-rules-engine Cloud Run サービスの呼び出しに使用する Pub/Sub 用のサービス アカウントを作成します。

    gcloud iam service-accounts create recommendation-engine-sub-sa \
      --description "Service Account used by Pub/Sub to push recommendations to the recommendation-rules-engine service" \
      --display-name "recommendation-engine-sub-sa" \
      --project $RECO_MGR_PROJECT
    
  3. Pub/Sub サービス アカウントは、メッセージのパブリッシュと recommendation-rules-engine サービスの呼び出しに必要なロールに関連付けられている必要があります。

    gcloud projects add-iam-policy-binding $RECO_MGR_PROJECT \
      --member serviceAccount:recommendation-engine-sub-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role roles/run.invoker \
      --project $RECO_MGR_PROJECT
    

Pub/Sub トピック用のサブスクリプションを作成する

  1. recommendation-rules-engine サービス用のサブスクリプションを作成します。

    # grant Pub/Sub the permission to create tokens
    PUBSUB_SERVICE_ACCOUNT="service-$RECO_MGR_PROJECT_NUMBER@gcp-sa-pubsub.iam.gserviceaccount.com"
    gcloud projects add-iam-policy-binding $RECO_MGR_PROJECT \
      --member="serviceAccount:$PUBSUB_SERVICE_ACCOUNT"\
      --role='roles/iam.serviceAccountTokenCreator'
    # configure the subscription push identity
    gcloud pubsub subscriptions create active-assist-recommendations-for-rules-engine \
      --topic=activeassist-recommendations \
      --topic-project=$RECO_MGR_PROJECT \
      --push-auth-service-account=recommendation-engine-sub-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --ack-deadline=60 \
      --push-endpoint=$RECOMMENDER_SERVICE_RULES_URI
    
  2. 作成した recommendation-engine-sub-sa サービス アカウントで recommendation-rules-engine サービスを呼び出すことができるようにします。

    gcloud run services add-iam-policy-binding recommendation-rules-engine \
      --member=serviceAccount:recommendation-engine-sub-sa@$RECO_MGR_PROJECT.iam.gserviceaccount.com \
      --role=roles/run.invoker \
      --region=$REGION \
      --platform=managed
    

スタブを使用したエンドツーエンド テストの実行

Active Assist の推奨事項は、使用パターンとシステム指標に基づくプラットフォームによって生成されます。推奨事項の各カテゴリは、生成される推奨事項に基づいて使用状況データと指標を分析するために、過去の別のデフォルト時間枠を使用する場合があります。たとえば、IAM の推奨事項は、過去 90 日間の使用パターンに基づくプラットフォームによって生成されます。

エンドツーエンドのパイプラインをテストするために、このチュートリアル用にクローンを作成したリポジトリには、エンドツーエンドのパイプラインの実行に使用する推奨事項(スタブ)のサンプルが用意されています。

このセクションでは、次の操作を行います。

  • スタブの推奨事項を調べます。
  • パイプラインを手動で呼び出します。
  • 通知が生成され、作成した Slack チャネルに送信されたかどうかを確認します。
  1. リポジトリにある推奨事項のサンプルを確認します。

    cat ../recommendation-collector/stub.json
    

    このファイルには、roles/gkehub.connect というロールのサンプル用の REMOVE アクションを含む推奨事項のサンプルが用意されています。

  2. 次回にスケジュールされた実行を待たずに、次のコマンドを実行して、Cloud Scheduler でジョブをすぐに実行します。

    gcloud scheduler jobs run recommender-iam-scheduler
    
  3. Cloud Scheduler コンソール ページの、recommender-iam-scheduler ジョブの [結果] 列で、結果が [成功] であることを確認します。

    各サービスで実行される手順の詳細を表示するには、recommendation-collector サービスと recommendation-rules-engine サービス用の Cloud Run のサービスログを表示することもできます。

  4. このチュートリアルで構築するサーバーレスのエンドツーエンド パイプラインが正常に実行されると、削除を推奨するロール バインディングの詳細を含む Slack 通知が生成されます。受け取る通知の例を次に示します。

    Project xxxxxxxx\
    **Impact**: SECURITY\
    This role has not been used during the observation window.\
    **Role**: roles/gkehub.connect\
    **Member**:
    serviceAccount:sample-sa@recommendation-sample.iam.gserviceaccount.com\
    **Action**: remove
    

クリーンアップ

このチュートリアルで使用したリソースについて、Google Cloud アカウントに課金されないようにするには、リソースを含むプロジェクトを削除するか、プロジェクトを維持して個々のリソースを削除します。

  • In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  • In the project list, select the project that you want to delete, and then click Delete.
  • In the dialog, type the project ID, and then click Shut down to delete the project.
  • 次のステップ