Altere as recomendações de risco

As recomendações de risco de alterações ajudam a reduzir o risco de configurações incorretas da infraestrutura na nuvem ao sinalizar de forma inteligente alterações arriscadas comuns aos seus recursos mais importantes e fornecer recomendações para evitar e mitigar problemas.

Introdução

As configurações incorretas são uma causa comum de incidentes na nuvem. Podem ocorrer devido a erros humanos ou alterações inesperadas da carga de trabalho e podem originar vários problemas, incluindo problemas de desempenho, problemas de fiabilidade e até indisponibilidades. Inicialmente, muitas configurações incorretas podem passar despercebidas, o que dificulta a sua deteção e resolução.

As recomendações de risco de alterações são uma nova família de recomendações e estatísticas do Active Assist no serviço Recommender. As recomendações de risco sinalizam automaticamente alterações arriscadas aos recursos da nuvem identificados como importantes com base na respetiva utilização e noutros sinais, para ajudar a evitar, detetar e mitigar problemas (por exemplo, interrupções de serviço) causados por configurações incorretas desses recursos da nuvem importantes. Por exemplo, se tentar eliminar um projeto muito usado ou modificar uma política de IAM que possa ser uma dependência essencial com base na respetiva atividade de utilização recente, as recomendações de risco de alteração podem ajudar a evitar problemas não intencionais, avisando-o proativamente sobre os riscos associados a uma determinada alteração.

Altere o âmbito das recomendações de risco

Atualmente, as recomendações de risco de alteração só são suportadas para os recursos e as ações indicados na tabela abaixo.

Recurso Ação Superfícies Critérios usados para determinar a importância dos recursos
Projeto Eliminação
  • Google Cloud consola
  • CLI gcloud
  • Recommender API
  • Utilização do projeto (chamadas API, tráfego de rede e Google Cloud utilização de serviços)
  • Faturação
  • Utilização nos últimos 30 dias
Conta de serviço Eliminação
  • Google Cloud consola
  • CLI gcloud
  • Recommender API
  • Número de autenticações
  • Utilização nos últimos 90 dias
Política IAM Alterar
  • Google Cloud consola
  • CLI gcloud
  • Recommender API
  • Número de autorizações exercidas
  • Utilização nos últimos 90 dias
  • Pertencer a um projeto importante

Antes de começar

Antes de começar a usar esta funcionalidade, tem de configurar o serviço:

  1. Ative a API Recommender num único projeto de faturação. Em seguida, pode usar este mesmo projeto de faturação para obter recomendações e estatísticas para outros projetos, toda a organização ou a conta de faturação, através da funcionalidade de projeto de faturação do gcloud/API.
  2. Conceda autorizações na conta de utilizador ou de serviço que vai usar para aceder a esta funcionalidade.

Autorizações

Para ver as recomendações de alterações de risco, tem de ter as autorizações específicas para o recurso específico.

  • Projeto

    • recommender.resourcemanagerProjectChangeRiskRecommendations.get
    • recommender.resourcemanagerProjectChangeRiskRecommendations.list
    • recommender.resourcemanagerProjectChangeRiskInsights.get
    • recommender.resourcemanagerProjectChangeRiskInsights.list
  • Conta de serviço

    • recommender.iamServiceAccountChangeRiskRecommendations.get
    • recommender.iamServiceAccountChangeRiskRecommendations.list
    • recommender.iamServiceAccountChangeRiskInsights.get
    • recommender.iamServiceAccountChangeRiskInsights.list
  • Política IAM

    • recommender.iamPolicyChangeRiskRecommendations.get
    • recommender.iamPolicyChangeRiskRecommendations.list
    • recommender.iamPolicyChangeRiskInsights.get
    • recommender.iamPolicyChangeRiskInsights.list

Também pode conceder a função roles/recommender.viewer para abranger estas autorizações.

Compreender a resposta para recomendações/estatísticas de risco de alterações

A tabela seguinte apresenta uma descrição dos campos apresentados no objeto de recomendação e estatísticas:

Recomendação

Nome do campo Tipo Descrição
associatedInsights string Estatísticas associadas a esta recomendação. projects/[project_number]/locations/global/ insightTypes/google.resourcemanager.project. ChangeRiskInsight/insights/[fingerprint]
asset object Contém o nome do recurso e o tipo de recurso do recurso associado.
etag string Impressão digital do RecommenderConfig. Fornece bloqueio otimista durante a atualização.
updateTime string Data/hora da última atualização da recomendação. Uma data/hora no formato Zulu UTC RFC 3339, precisa ao nível dos nanosegundos. Exemplo: 2022-01-10T22:47:38.421626Z.

Insight

Nome do campo Tipo Descrição
associatedRecommendations string Recomendação associada a esta recomendação. projects/[project_number]/locations/global/ recommenders/google.resourcemanager.project. ChangeRiskRecommender/recommendations/ [recommendation_id]
constraint object Contém a restrição de recomendações de risco de alteração que o utilizador é aconselhado a não fazer. This project should not be deleted.
importance object Contém a lista de motivos pelos quais determinámos que este recurso é importante. Por exemplo, utilização elevada.
risk object Contém detalhes da avaliação de risco. Por exemplo,os valores de atividade de utilização de recursos são usados para determinar a importância.
updateTime string Data/hora da última atualização da recomendação. Uma data/hora no formato Zulu UTC RFC 3339, precisa ao nível dos nanosegundos. Exemplo: 2022-01-10T22:47:38.421626Z.

Ver as recomendações de risco de alterações

Além do modelo de utilização abordado acima, pode usar a abordagem padrão para o serviço Recommender para ver as recomendações e as estatísticas de risco de alteração para um projeto, uma conta de serviço ou uma política de IAM:

  • Google Cloud consola
  • API
  • gcloud

Google Cloud consola

Pode ver recomendações e estatísticas de risco de alterações nas próprias páginas de produtos. As recomendações são ativadas automaticamente, desde que tenha as autorizações indicadas acima.

O Active Assist avisa-o dos perigos de eliminar um recurso importante e indica o que fazer quando esse aviso é apresentado nas seguintes situações:

gcloud e API

As secções seguintes apresentam os comandos para pedir recomendações e estatísticas de risco de alterações através da gcloud e da API para um projeto, uma conta de serviço ou uma política de IAM.

Projeto

Os insights e as recomendações podem ser acedidos através da Google Cloud consolagcloud ou da API Recommender para todos os clientes.

gcloud

Para ver recomendações e estatísticas com o gcloud, siga os passos abaixo. Para mais informações, consulte os artigos Usar a API – Estatísticas e Usar a API – Recomendações.

Recomendações:

Para apresentar uma lista de recomendações para o projeto onde ativou a API Recommender, execute o seguinte comando:

gcloud recommender recommendations list
--recommender=google.resourcemanager.project.ChangeRiskRecommender
--project=PROJECT_ID  --location=global --format=yaml

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.
Estatísticas:

Pode usar um conjunto semelhante de comandos para listar estatísticas:

gcloud recommender insights list
--insight-type=google.resourcemanager.project.ChangeRiskInsight
--project=PROJECT_ID  --location=global --format=yaml

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.

API

Para ver recomendações e estatísticas, pode usar curl para enviar um pedido às APIs Recommender.

Recomendações

Para apresentar uma lista de recomendações para o projeto no qual ativou a API Recommender, execute o seguinte 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"

Substitua o seguinte:

  • BILLING_PROJECT_ID : o ID do projeto de faturação.
Estatísticas:

Pode usar um conjunto semelhante de comandos para listar estatísticas:

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"

Substitua o seguinte: * BILLING_PROJECT_ID : o ID do projeto de faturação.

Conta de serviço

As estatísticas e as recomendações sobre uma conta de serviço podem ser acedidas através da Google Cloud consolagcloud ou da API Recommender para todos os clientes.

gcloud

Para ver recomendações e estatísticas com o gcloud, siga os passos abaixo. Para mais informações, consulte os artigos Usar a API – Estatísticas e Usar a API – Recomendações.

Recomendações:

Para apresentar uma lista de recomendações para uma conta de serviço na qual ativou a API Recommender, execute o seguinte comando:

gcloud recommender recommendations list
--recommender=google.iam.serviceAccount.ChangeRiskRecommender
--project=PROJECT_ID  --location=global --format=yaml

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.
Estatísticas:

Pode usar um conjunto semelhante de comandos para listar estatísticas:

gcloud recommender insights list
--insight-type=google.iam.serviceAccount.ChangeRiskInsight
--project=PROJECT_ID  --location=global --format=yaml

Substitua o seguinte: * PROJECT_ID : o ID do projeto.

API

Para ver recomendações e estatísticas, pode usar curl para enviar um pedido às APIs Recommender.

Recomendações:

Para apresentar uma lista de recomendações para uma conta de serviço na qual ativou a API Recommender, execute o seguinte 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"

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.
  • BILLING_PROJECT_ID : o ID do projeto de faturação.
Estatísticas:

Pode usar um conjunto semelhante de comandos para listar estatísticas:

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"

Substitua o seguinte: * PROJECT_ID : o ID do projeto. * BILLING_PROJECT_ID : o ID do projeto de faturação.

Política IAM

Os insights e as recomendações sobre uma política de IAM podem ser acedidos através da Google Cloud consolagcloud ou da API Recommender para todos os clientes.

gcloud

Para ver recomendações e estatísticas com o gcloud, siga os passos abaixo. Para mais informações, consulte os artigos Usar a API – Estatísticas e Usar a API – Recomendações.

Recomendações:

Para apresentar uma lista de recomendações para uma Política IAM onde ativou a API Recommender, execute o seguinte comando:

gcloud recommender recommendations list --recommender=google.iam.policy.ChangeRiskRecommender --project=PROJECT_ID  --location=global --format=yaml

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.
Estatísticas:

Pode usar um conjunto semelhante de comandos para listar estatísticas:

gcloud recommender insights list --insight-type=google.iam.policy.ChangeRiskInsight --project=PROJECT_ID  --location=global --format=yaml

Substitua o seguinte: * PROJECT_ID : o ID do projeto.

API

Para ver recomendações e estatísticas, pode usar curl para enviar um pedido às APIs Recommender.

Recomendações:

Para apresentar uma lista de recomendações para uma Política IAM onde ativou a API Recommender, execute o seguinte 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"

Substitua o seguinte:

  • PROJECT_ID : o ID do projeto.
Estatísticas:

Pode usar um conjunto semelhante de comandos para listar estatísticas:

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"

Substitua o seguinte: * PROJECT_ID : o ID do projeto. * BILLING_PROJECT_ID : o ID do projeto de faturação.

Eliminações arriscadas com a CLI gcloud

Quando elimina recursos através da CLI gcloud, pode usar a flag oculta opcional --recommend=yes na faixa ALPHA para interromper alterações arriscadas. Abaixo, são apresentados exemplos de alterações arriscadas suportadas com recomendações. Se não for apresentada nenhuma avaliação de risco, a alteração é considerada não arriscada.

Eliminação do projeto

O seguinte comando elimina um projeto:

  gcloud alpha projects delete PROJECT_ID  --recommend=yes

Vai ver as seguintes alterações arriscadas suportadas com recomendações:

  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

Eliminação da conta de serviço

O comando seguinte elimina uma conta de serviço:

  gcloud alpha iam service-accounts delete example@PROJECT_ID .iam.gserviceaccount.com --recommend=yes

Vai ver as seguintes alterações arriscadas suportadas com recomendações:

  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 vir o seguinte erro:

  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}'

Certifique-se de que a configuração do projeto está definida para um projeto na lista de autorizações para usar a API Recommender alfa com o seguinte comando:

  gcloud config set project PROJECT_ID 

Eliminação da associação da Política IAM do projeto

O comando seguinte elimina uma associação de política IAM do projeto:

  gcloud alpha projects remove-iam-policy-binding PROJECT_ID  --member=YOUR_EMAIL@DOMAIN.COM  --role=roles/owner --recommend=yes

Vai ver as seguintes alterações arriscadas suportadas com recomendações:

  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 apoio técnico

Envie um email para active-assist-feedback@google.com em caso de problemas técnicos, dúvidas ou feedback.