変更リスクの推奨事項
変更リスクの推奨事項は、最も重要なリソースに対するリスクの高い変更をインテリジェントにフラグ付けし、問題を防止および軽減するための推奨事項を提供することで、クラウド インフラストラクチャの構成ミスのリスクを軽減します。
はじめに
構成ミスはクラウド インシデントの一般的な原因です。人的エラーや予期しないワークロードの変更によって発生し、パフォーマンスの問題、信頼性の問題、さらにはサービス停止など、さまざまな問題につながる可能性があります。多くの構成ミスは、初めは気づきにくいため、追跡や解決が難しくなります。
変更リスクの推奨事項は、Recommender サービスの Active Assist の推奨事項と分析情報の新しいファミリーです。変更リスクの推奨事項は、使用状況やその他のシグナルに基づいて重要と識別されたクラウド リソースに対するリスクの高い変更を自動的に報告します。これは、重要なクラウド リソースの構成ミスによって引き起こされる問題(サービス停止など)の防止、検出、軽減に役立ちます。たとえば、頻繁に使用するプロジェクトを削除しようとしたり、最近の利用状況に基づいて重要な依存関係のある IAM ポリシーを変更しようとすると、変更リスクの推奨事項により、その変更に関連するリスクが事前に警告されます。これにより、意図しない問題の発生を防ぐことができます。
変更リスクの推奨事項の対象範囲
現在、変更リスクの推奨事項は、以下の表に示すリソースとアクションでのみサポートされています。
| リソース | アクション | サーフェス | リソースの重要度を決定する条件 |
|---|---|---|---|
| プロジェクト | 削除 |
|
|
| サービス アカウント | 削除 |
|
|
| IAM ポリシー | 変更 |
|
|
始める前に
この機能を使用する前に、サービスを設定する必要があります。
- 単一の課金プロジェクトで Recommender API を有効にします。gcloud / API の請求プロジェクト機能により、この請求プロジェクトを使用して、他のプロジェクト、組織全体、または請求先アカウントの推奨事項と分析情報を取得できます。
- この機能へのアクセスに使用する権限をユーザーまたはサービス アカウントに付与します。
権限
変更リスクの推奨事項を表示するには、特定のリソースに対する特定の権限が必要です。
プロジェクト
recommender.resourcemanagerProjectChangeRiskRecommendations.getrecommender.resourcemanagerProjectChangeRiskRecommendations.listrecommender.resourcemanagerProjectChangeRiskInsights.getrecommender.resourcemanagerProjectChangeRiskInsights.list
サービス アカウント
recommender.iamServiceAccountChangeRiskRecommendations.getrecommender.iamServiceAccountChangeRiskRecommendations.listrecommender.iamServiceAccountChangeRiskInsights.getrecommender.iamServiceAccountChangeRiskInsights.list
IAM ポリシー
recommender.iamPolicyChangeRiskRecommendations.getrecommender.iamPolicyChangeRiskRecommendations.listrecommender.iamPolicyChangeRiskInsights.getrecommender.iamPolicyChangeRiskInsights.list
これらの権限を含む roles/recommender.viewer ロールを付与することもできます。
変更リスクの推奨事項 / 分析情報のレスポンスについて
次の表に、推奨事項と分析情報のオブジェクトに表示されるフィールドの説明を示します。
推奨事項
| フィールド名 | タイプ | 説明 |
|---|---|---|
associatedInsights
|
string
|
この推奨事項に関連付けられている分析情報。
projects/[project_number]/locations/global/
insightTypes/google.resourcemanager.project.
ChangeRiskInsight/insights/[fingerprint]
|
asset
|
object
|
関連するリソースのアセット名とアセットタイプが含まれます。 |
etag
|
string
|
RecommenderConfig のフィンガープリント。更新時に楽観ロックを提供します。 |
updateTime
|
string
|
推奨事項が最後に更新された時刻のタイムスタンプ。RFC 3339 UTC Zulu 形式のタイムスタンプ(精度はナノ秒)。例: 2022-01-10T22:47:38.421626Z。
|
分析情報
| フィールド名 | タイプ | 説明 |
|---|---|---|
associatedRecommendations
|
string
|
この推奨事項に関連する推奨事項。
projects/[project_number]/locations/global/
recommenders/google.resourcemanager.project.
ChangeRiskRecommender/recommendations/
[recommendation_id]
|
constraint
|
object
|
ユーザーが実行することをおすすめしない変更リスクの推奨事項の制約が含まれています。
This project should not be deleted.
|
importance
|
object
|
このリソースが重要であると Google が判断した理由のリストが含まれます。たとえば、使用率が高い、などです。 |
risk
|
object
|
リスク評価の詳細が含まれます。たとえば、リソース使用量のアクティビティ値から重要度を判断します。 |
updateTime
|
string
|
推奨事項が最後に更新された時刻のタイムスタンプ。 RFC 3339 UTC Zulu 形式のタイムスタンプ(精度はナノ秒)。例: 2022-01-10T22:47:38.421626Z。
|
変更リスクの推奨事項の表示
上記の使用モデルに加えて、Recommender サービスの標準的なアプローチを使用して、プロジェクト、サービス アカウント、IAM ポリシーの変更リスクに関する推奨事項と分析情報を表示できます。
- Google Cloud コンソール
- API
- gcloud
Google Cloud コンソール
変更リスクに関する推奨事項と分析情報はプロダクト ページで確認できます。この推奨事項は、上記の権限がある限り、自動的に有効になります。
Active Assist は、重要なリソースを削除する危険を警告します。また、次のような状況で警告が表示された場合は、対処方法を示すことがあります。
gcloud と API
以降のセクションでは、gcloud と、プロジェクト、サービス アカウント、または IAM ポリシーの API を介して、変更リスクの推奨事項と分析情報をリクエストするコマンドについて説明します。
プロジェクト
どのお客様も Google Cloud コンソール、gcloud、Recommender API から分析情報と推奨事項にアクセスできます。
gcloud
gcloud を使用して推奨事項と分析情報を確認する手順は次のとおりです。詳細については、API の使用 - 分析情報と API の使用 - 推奨事項をご覧ください。
推奨:
Recommender API を有効にしたプロジェクトについて推奨事項を一覧表示するには、次のコマンドを実行します。
gcloud recommender recommendations list
--recommender=google.resourcemanager.project.ChangeRiskRecommender
--project=PROJECT_ID --location=global --format=yaml
次のように置き換えます。
PROJECT_ID: プロジェクト ID。
分析情報:
同様のコマンドセットを使用して、分析情報を一覧表示できます。
gcloud recommender insights list
--insight-type=google.resourcemanager.project.ChangeRiskInsight
--project=PROJECT_ID --location=global --format=yaml
次のように置き換えます。
PROJECT_ID: プロジェクト ID。
API
推奨事項と分析情報を表示するには、curl を使用して Recommender API にリクエストを送信します。
推奨事項
Recommender API を有効にしたプロジェクトについて推奨事項を一覧表示するには、次のコマンドを実行します。
curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/
recommenders/google.resourcemanager.project.ChangeRiskRecommender/recommendations"
次のように置き換えます。
BILLING_PROJECT_ID: 課金プロジェクト ID。
分析情報:
同様のコマンドセットを使用して、分析情報を一覧表示できます。
curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/insightTypes/google.resourcemanager.project.ChangeRiskInsight/insights"
次のように置き換えます。
* BILLING_PROJECT_ID : 課金プロジェクト ID。
サービス アカウント
どのユーザーも、サービス アカウントに関する分析情報と推奨事項に Google Cloud コンソール、gcloud、Recommender API からアクセスできます。
gcloud
gcloud を使用して推奨事項と分析情報を確認する手順は次のとおりです。詳細については、API の使用 - 分析情報と API の使用 - 推奨事項をご覧ください。
推奨事項:
Recommender API を有効にしたサービス アカウントの推奨事項を一覧表示するには、次のコマンドを実行します。
gcloud recommender recommendations list
--recommender=google.iam.serviceAccount.ChangeRiskRecommender
--project=PROJECT_ID --location=global --format=yaml
次のように置き換えます。
PROJECT_ID: プロジェクト ID。
分析情報:
同様のコマンドセットを使用して、分析情報を一覧表示できます。
gcloud recommender insights list
--insight-type=google.iam.serviceAccount.ChangeRiskInsight
--project=PROJECT_ID --location=global --format=yaml
次のように置き換えます。
* PROJECT_ID : プロジェクト ID。
API
推奨事項と分析情報を表示するには、curl を使用して Recommender API にリクエストを送信します。
推奨事項:
Recommender API を有効にしたサービス アカウントの推奨事項を一覧表示するには、次のコマンドを実行します。
curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/
recommenders/google.iam.serviceAccount.ChangeRiskRecommender/recommendations"
次のように置き換えます。
PROJECT_ID: プロジェクト ID。BILLING_PROJECT_ID: 課金プロジェクト ID。
分析情報:
同様のコマンドセットを使用して、分析情報を一覧表示できます。
curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/insightTypes/google.iam.serviceAccount.ChangeRiskInsight/insights"
次のように置き換えます。
* PROJECT_ID : プロジェクト ID。* BILLING_PROJECT_ID : 課金プロジェクト ID。
IAM ポリシー
どのユーザーも、IAM ポリシーに関する分析情報と推奨事項に Google Cloud コンソール、gcloud、Recommender API からアクセスできます。
gcloud
gcloud を使用して推奨事項と分析情報を確認する手順は次のとおりです。詳細については、API の使用 - 分析情報と API の使用 - 推奨事項をご覧ください。
推奨事項:
Recommender API を有効にした IAM ポリシーの推奨事項を一覧表示するには、次のコマンドを実行します。
gcloud recommender recommendations list --recommender=google.iam.policy.ChangeRiskRecommender --project=PROJECT_ID --location=global --format=yaml
次のように置き換えます。
PROJECT_ID: プロジェクト ID。
分析情報:
同様のコマンドセットを使用して、分析情報を一覧表示できます。
gcloud recommender insights list --insight-type=google.iam.policy.ChangeRiskInsight --project=PROJECT_ID --location=global --format=yaml
次のように置き換えます。
* PROJECT_ID : プロジェクト ID。
API
推奨事項と分析情報を表示するには、curl を使用して Recommender API にリクエストを送信します。
推奨事項:
Recommender API を有効にした IAM ポリシーの推奨事項を一覧表示するには、次のコマンドを実行します。
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/\recommenders/google.iam.policy.ChangeRiskRecommender/recommendations"
次のように置き換えます。
PROJECT_ID: プロジェクト ID。
分析情報:
同様のコマンドセットを使用して、分析情報を一覧表示できます。
curl -H "Authorization: Bearer $(gcloud auth print-access-token)"
-H "x-goog-user-project: BILLING_PROJECT_ID " "https://recommender.googleapis.com/v1/projects/PROJECT_ID /locations/global/insightTypes/google.iam.policy.ChangeRiskInsight/insights"
次のように置き換えます。
* PROJECT_ID : プロジェクト ID。* BILLING_PROJECT_ID : 課金プロジェクト ID。
フィードバックとサポート
技術的な問題、質問、フィードバックについては、active-assist-feedback@google.com までメールでお問い合わせください。