Modificare i consigli sui rischi
I suggerimenti sui rischi delle modifiche ti aiutano a ridurre il rischio di errori di configurazione dell'infrastruttura cloud segnalando in modo intelligente le modifiche rischiose comuni alle tue risorse più importanti e fornendo suggerimenti per prevenire e mitigare i problemi.
Introduzione
Le configurazioni errate sono una causa comune di incidenti cloud. Possono verificarsi a causa di errori umani o variazioni impreviste del carico di lavoro e possono causare una serie di problemi, tra cui problemi di prestazioni, problemi di affidabilità e persino interruzioni. Molte configurazioni errate possono passare inizialmente inosservate, rendendo difficile individuarle e risolverle.
I suggerimenti sui rischi delle modifiche sono una nuova famiglia di suggerimenti e approfondimenti di Active Assist all'interno del servizio Recommender. I suggerimenti per la modifica del rischio contrassegnano automaticamente le modifiche rischiose alle risorse cloud identificate come importanti in base al loro utilizzo e ad altri indicatori, per contribuire a prevenire, rilevare e mitigare i problemi (ad esempio, interruzioni del servizio) causati da configurazioni errate di queste importanti risorse cloud. Ad esempio, se provi a eliminare un progetto molto utilizzato o a modificare una policy IAM che potrebbe essere una dipendenza essenziale in base alla sua recente attività di utilizzo, i consigli sui rischi di modifica possono aiutarti a evitare problemi imprevisti avvisandoti in modo proattivo dei rischi associati a una determinata modifica.
Modificare l'ambito dei consigli sui rischi
I consigli sul rischio di modifica sono attualmente supportati solo per le risorse e le azioni elencate nella tabella seguente.
Risorsa | Azione | Piattaforme | Criteri utilizzati per determinare l'importanza della risorsa |
---|---|---|---|
Progetto | Eliminazione |
|
|
Service account | Eliminazione |
|
|
Policy IAM | Cambia |
|
|
Prima di iniziare
Prima di iniziare a utilizzare questa funzionalità, devi configurare il servizio:
- Abilita l'API Recommender in un singolo progetto di fatturazione. Puoi quindi utilizzare lo stesso progetto di fatturazione per recuperare consigli e approfondimenti per altri progetti, l'intera organizzazione o l'account di fatturazione, utilizzando la funzionalità billing-project di gcloud/API.
- Concedi le autorizzazioni all'utente o account di servizio che verrà utilizzato per accedere a questa funzionalità.
Autorizzazioni
Per visualizzare i suggerimenti per i suggerimenti sul rischio di modifica, devi disporre delle autorizzazioni specifiche per la risorsa specifica.
Progetto
recommender.resourcemanagerProjectChangeRiskRecommendations.get
recommender.resourcemanagerProjectChangeRiskRecommendations.list
recommender.resourcemanagerProjectChangeRiskInsights.get
recommender.resourcemanagerProjectChangeRiskInsights.list
Service account
recommender.iamServiceAccountChangeRiskRecommendations.get
recommender.iamServiceAccountChangeRiskRecommendations.list
recommender.iamServiceAccountChangeRiskInsights.get
recommender.iamServiceAccountChangeRiskInsights.list
Criterio IAM
recommender.iamPolicyChangeRiskRecommendations.get
recommender.iamPolicyChangeRiskRecommendations.list
recommender.iamPolicyChangeRiskInsights.get
recommender.iamPolicyChangeRiskInsights.list
Puoi anche concedere il ruolo roles/recommender.viewer per coprire queste autorizzazioni.
Comprendere la risposta per i suggerimenti/gli approfondimenti sui rischi delle modifiche
La tabella seguente fornisce una descrizione dei campi presentati nell'oggetto suggerimento e insight:
Consiglio
Nome campo | Tipo | Descrizione |
---|---|---|
associatedInsights
|
string
|
L'insight associato a questo suggerimento.
projects/[project_number]/locations/global/
insightTypes/google.resourcemanager.project.
ChangeRiskInsight/insights/[fingerprint]
|
asset
|
object
|
Contiene il nome e il tipo di risorsa associata. |
etag
|
string
|
Impronta di RecommenderConfig. Fornisce il blocco ottimistico durante l'aggiornamento. |
updateTime
|
string
|
Timestamp dell'ultimo aggiornamento del consiglio. Un timestamp in formato Zulu UTC RFC 3339, preciso al nanosecondo.
Esempio: 2022-01-10T22:47:38.421626Z .
|
Insight
Nome campo | Tipo | Descrizione |
---|---|---|
associatedRecommendations
|
string
|
Suggerimento associato a questo suggerimento.
projects/[project_number]/locations/global/
recommenders/google.resourcemanager.project.
ChangeRiskRecommender/recommendations/
[recommendation_id]
|
constraint
|
object
|
Contiene il vincolo dei consigli sul rischio di modifica che l'utente è sconsigliato di eseguire.
This project should not be deleted.
|
importance
|
object
|
Contiene l'elenco dei motivi per cui abbiamo stabilito che questa risorsa è importante. Ad esempio, un utilizzo elevato. |
risk
|
object
|
Contiene i dettagli della valutazione del rischio. Ad esempio,i valori dell'attività di utilizzo delle risorse vengono utilizzati per determinare l'importanza. |
updateTime
|
string
|
Timestamp dell'ultimo aggiornamento del consiglio.
Un timestamp in formato Zulu UTC RFC 3339, preciso al nanosecondo. Esempio: 2022-01-10T22:47:38.421626Z .
|
Visualizzazione dei suggerimenti sui rischi delle modifiche
Oltre al modello di utilizzo descritto sopra, puoi utilizzare l'approccio standard per il servizio Recommender per visualizzare i suggerimenti e gli approfondimenti sui rischi di modifica per un progetto, un service account o un criterio IAM:
- ConsoleGoogle Cloud
- API
- gcloud
ConsoleGoogle Cloud
Puoi visualizzare i suggerimenti e gli approfondimenti sui rischi delle modifiche nelle pagine dei prodotti. I consigli verranno attivati automaticamente finché disponi delle autorizzazioni elencate sopra.
Active Assist ti avvisa dei pericoli di eliminare una risorsa importante e indica cosa fare quando viene visualizzato l'avviso nelle seguenti situazioni:
gcloud e API
Le sezioni seguenti presentano i comandi per richiedere insight e suggerimenti sui rischi di modifica tramite gcloud
e l'API per un progetto, un service account o una policy IAM.
Progetto
Approfondimenti e consigli sono accessibili tramite la Google Cloud console, gcloud
o l'API Recommender per tutti i clienti.
gcloud
Per visualizzare consigli e approfondimenti utilizzando gcloud
, segui questi passaggi.
Per saperne di più, consulta Utilizzo dell'API - Approfondimenti e Utilizzo dell'API - Suggerimenti.
Consigli:
Per elencare i consigli per il progetto in cui hai abilitato l'API Recommender, esegui questo comando:
gcloud recommender recommendations list
--recommender=google.resourcemanager.project.ChangeRiskRecommender
--project=PROJECT_ID --location=global --format=yaml
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto.
Approfondimenti:
È possibile utilizzare un insieme simile di comandi per elencare gli approfondimenti:
gcloud recommender insights list
--insight-type=google.resourcemanager.project.ChangeRiskInsight
--project=PROJECT_ID --location=global --format=yaml
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto.
API
Per visualizzare consigli e approfondimenti, puoi utilizzare curl
per inviare una richiesta alle API Recommender.
Consigli
Per elencare i consigli per il progetto in cui hai abilitato l'API Recommender, esegui questo comando:
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"
Sostituisci quanto segue:
BILLING_PROJECT_ID
: l'ID progetto di fatturazione.
Approfondimenti:
È possibile utilizzare un insieme simile di comandi per elencare gli approfondimenti:
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"
Sostituisci quanto segue:
* BILLING_PROJECT_ID
: l'ID progetto di fatturazione.
Service account
Approfondimenti e consigli su un service account sono accessibili tramite la console Google Cloud , gcloud
o l'API Recommender per tutti i clienti.
gcloud
Per visualizzare consigli e approfondimenti utilizzando gcloud
, segui questi passaggi.
Per saperne di più, consulta Utilizzo dell'API - Approfondimenti e Utilizzo dell'API - Suggerimenti.
Consigli:
Per elencare i consigli per un service account in cui hai abilitato l'API Recommender, esegui questo comando:
gcloud recommender recommendations list
--recommender=google.iam.serviceAccount.ChangeRiskRecommender
--project=PROJECT_ID --location=global --format=yaml
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto.
Approfondimenti:
È possibile utilizzare un insieme simile di comandi per elencare gli approfondimenti:
gcloud recommender insights list
--insight-type=google.iam.serviceAccount.ChangeRiskInsight
--project=PROJECT_ID --location=global --format=yaml
Sostituisci quanto segue:
* PROJECT_ID
: l'ID progetto.
API
Per visualizzare consigli e approfondimenti, puoi utilizzare curl
per inviare una richiesta alle API Recommender.
Consigli:
Per elencare i consigli per un service account in cui hai abilitato l'API Recommender, esegui questo comando:
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"
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto.BILLING_PROJECT_ID
: l'ID progetto di fatturazione.
Approfondimenti:
È possibile utilizzare un insieme simile di comandi per elencare gli approfondimenti:
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"
Sostituisci quanto segue:
* PROJECT_ID
: l'ID progetto.
* BILLING_PROJECT_ID
: l'ID progetto di fatturazione.
Criterio IAM
Approfondimenti e suggerimenti su una policy IAM sono accessibili tramite la console Google Cloud , gcloud
o l'API Recommender per tutti i clienti.
gcloud
Per visualizzare consigli e approfondimenti utilizzando gcloud
, segui questi passaggi.
Per saperne di più, consulta Utilizzo dell'API - Approfondimenti e Utilizzo dell'API - Suggerimenti.
Consigli:
Per elencare i suggerimenti per un criterio IAM in cui hai abilitato l'API Recommender, esegui questo comando:
gcloud recommender recommendations list --recommender=google.iam.policy.ChangeRiskRecommender --project=PROJECT_ID --location=global --format=yaml
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto.
Approfondimenti:
È possibile utilizzare un insieme simile di comandi per elencare gli approfondimenti:
gcloud recommender insights list --insight-type=google.iam.policy.ChangeRiskInsight --project=PROJECT_ID --location=global --format=yaml
Sostituisci quanto segue:
* PROJECT_ID
: l'ID progetto.
API
Per visualizzare consigli e approfondimenti, puoi utilizzare curl
per inviare una richiesta alle API Recommender.
Consigli:
Per elencare i suggerimenti per un criterio IAM in cui hai abilitato l'API Recommender, esegui questo comando:
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"
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto.
Approfondimenti:
È possibile utilizzare un insieme simile di comandi per elencare gli approfondimenti:
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"
Sostituisci quanto segue:
* PROJECT_ID
: l'ID progetto.
* BILLING_PROJECT_ID
: l'ID progetto di fatturazione.
Eliminazioni rischiose con gcloud CLI
Quando elimini risorse tramite gcloud CLI, puoi utilizzare il flag nascosto facoltativo --recommend=yes
nella traccia ALPHA per interrompere le modifiche rischiose. Di seguito sono riportati esempi di modifiche rischiose supportate con consigli. Se non viene visualizzata alcuna valutazione del rischio, la modifica non è considerata rischiosa.
Eliminazione del progetto
Il seguente comando elimina un progetto:
gcloud alpha projects delete PROJECT_ID --recommend=yes
Vedrai le seguenti modifiche rischiose supportate con i consigli:
Shutting down this project will immediately:
- Stop all traffic and billing.
- Start deleting resources.
- Schedule the final deletion of the project after 30 days.
- Block your access to the project.
- Notify the owner of the project.
Learn more about the shutdown process at
https://cloud.google.com/resource-manager/docs/creating-managing-projects#shutting_down_projects
WARNING: If you shut down this project you risk losing data or interrupting your services. In the last 30 days we observed this project had:
- It had significant usage, including 9942 API calls.
- It contains at least 1 highly utilized service account.
- It included at least 211 resources.
We recommend verifying this is the correct project to shut down.
View the full risk assessment at: https://console.cloud.google.com/home/recommendations/view-link/projects/123456/locations/global/recommenders/google.resourcemanager.project.ChangeRiskRecommender/recommendations/reco-id-0000-0000-000000000
Do you want to continue (Y/n)? n
Eliminazione del service account
Il comando seguente elimina un service account:
gcloud alpha iam service-accounts delete example@PROJECT_ID .iam.gserviceaccount.com --recommend=yes
Vedrai le seguenti modifiche rischiose supportate con i consigli:
You are about to delete service account [example@PROJECT_ID .iam.gserviceaccount.com]
Deleting this service account (SA) will delete all associated key IDs, and will prevent the account from authenticating to any Google Cloud service API.
You cannot restore or roll back this change easily. We highly recommend disabling the account first, testing for any unexpected impact, and only then deleting.
WARNING: If you delete this SA you risk interrupting your service, as we observed it was substantially used in the last 90 days.
We recommend verifying this is the correct account to delete.
View the full risk assessment at: https://console.cloud.google.com/home/recommendations/view-link/projects/123456/locations/global/recommenders/google.iam.serviceAccount.ChangeRiskRecommender/recommendations/reco-id-0000-0000-000000000
Do you want to continue (Y/n)? n
Se visualizzi il seguente errore:
ERROR: (gcloud.alpha.iam.service-accounts.delete) NOT_FOUND: Method not found.
- '@type': type.googleapis.com/google.rpc.DebugInfo
detail: 'Method ListInsights not found for service recommender.googleapis.com. Method not visible to labels: {PUBLIC}'
Assicurati che la configurazione del progetto sia impostata su un progetto incluso nella lista consentita per l'utilizzo dell'API Alpha Recommender con il seguente comando:
gcloud config set project PROJECT_ID
Eliminazione dell'associazione di policy IAM del progetto
Il seguente comando elimina un'associazione di policy IAM del progetto:
gcloud alpha projects remove-iam-policy-binding PROJECT_ID --member=YOUR_EMAIL@DOMAIN.COM --role=roles/owner --recommend=yes
Vedrai le seguenti modifiche rischiose supportate con i consigli:
You are about to delete the role [roles/owner].
WARNING: If you remove the role [roles/owner], there is a high risk that you might cause interruptions because it was used in the last 90 days.
We recommend you verify the details and replace them with less privileged roles, if necessary.
View the full risk assessment at: https://console.cloud.google.com/home/recommendations/view-link/projects/123456/locations/global/recommenders/google.iam.policy.ChangeRiskRecommender/recommendations/reco-id-0000-0000-000000000
Do you want to continue (Y/n)? n
Feedback e assistenza
In caso di problemi tecnici, domande o feedback, invia un'email all'indirizzo active-assist-feedback@google.com.