Cambia las recomendaciones de riesgo

Cambiar las recomendaciones de riego te ayuda a reducir el riesgo de errores de configuración de la infraestructura de nube, ya que marcan de manera inteligente los cambios riesgosos comunes en los recursos más importantes y proporcionan recomendaciones para evitar y mitigar los problemas.

Introducción

Los errores de configuración son una causa común de los incidentes en la nube. Pueden ocurrir debido a errores humanos o cambios inesperados en la carga de trabajo, y pueden generar muchos problemas, incluidos problemas de rendimiento y de confiabilidad, incluso interrupciones. Muchas opciones de configuración incorrectas pueden pasar inadvertidas al principio, lo que dificulta el seguimiento y la resolución.

Cambiar las recomendaciones de riesgo es una nueva familia de recomendaciones y estadísticas de Active Assist dentro del servicio de recomendador. Cambiar las recomendaciones de riesgo marcan automáticamente los cambios riesgosos en los recursos de la nube identificados como importantes según su uso y otros indicadores para ayudar a prevenir, detectar y mitigar los problemas (por ejemplo, interrupciones del servicio) causadas por configuraciones incorrectas de esos elementos importantes. de la nube. Por ejemplo, si intentas borrar un proyecto muy usado o modificar una política de IAM que podría ser una dependencia esencial en función de su actividad de uso reciente, cambiar las recomendaciones de riesgo puede ayudarte a evitar problemas no deseados, ya que te advierte de manera proactiva. sobre los riesgos asociados a un cambio determinado.

Cambia el alcance de las recomendaciones de riesgo

Por el momento, las recomendaciones de cambio de riesgo solo son compatibles con los recursos y las acciones que se enumeran en la siguiente tabla.

Recurso Acción Plataformas Criterios usados para determinar la importancia de los recursos
Proyecto Eliminación
  • Consola de Google Cloud
  • gcloud CLI
  • API de recomendador
  • Uso del proyecto (llamada a la API, tráfico de red y uso de los servicios de Google Cloud)
  • Facturación
  • Uso dentro de los últimos 30 días
Cuenta de servicio Eliminación
  • Consola de Google Cloud
  • gcloud CLI
  • API de recomendador
  • Cantidad de autenticaciones
  • Uso en los últimos 90 días
Política de IAM Cambiar
  • Consola de Google Cloud
  • gcloud CLI
  • API de recomendador
  • Cantidad de permisos ejercidos
  • Uso en los últimos 90 días
  • Pertenece a un proyecto importante

Antes de comenzar

Antes de comenzar a usar esta función, debes configurar el servicio:

  1. Habilita la API del recomendador en un solo proyecto de facturación. Puedes usar este mismo proyecto de facturación a fin de examinar las recomendaciones y estadísticas para otros proyectos, toda la organización o la cuenta de facturación, mediante la funcionalidad de gcloud/API.
  2. Otorga permisos en la cuenta de servicio o usuario que usarás para acceder a esta función.

Permisos

Si deseas ver las recomendaciones de cambio de riesgo, debes tener los permisos específicos para el recurso específico.

  • Proyecto

    • recommender.resourcemanagerProjectChangeRiskRecommendations.get
    • recommender.resourcemanagerProjectChangeRiskRecommendations.list
    • recommender.resourcemanagerProjectChangeRiskInsights.get
    • recommender.resourcemanagerProjectChangeRiskInsights.list
  • Cuenta de servicio

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

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

También puedes otorgar la función roles/recommender.viewer para cubrir estos permisos.

Información sobre la respuesta para los cambios de riesgo visualizador del recomendador

En la siguiente tabla, se proporciona una descripción de los campos presentados en el objeto de recomendación y estadística:

Recomendación

Nombre del campo Tipo Descripción
associatedInsights string Estadísticas asociadas con esta recomendación. projects/[project_number]/locations/global/ insightTypes/google.resourcemanager.project. ChangeRiskInsight/insights/[fingerprint]
asset object Contiene el nombre y el tipo de recurso del recurso asociado.
etag string Huella digital del RecommenderConfig. Proporciona bloqueo optimista cuando se actualiza.
updateTime string Marca de tiempo de la última vez que se actualizó la recomendación. Una marca de tiempo en formato RFC 3339 UTC Zulú, con precisión de nanosegundos. Ejemplo: 2022-01-10T22:47:38.421626Z.

Observación

Nombre del campo Tipo Descripción
associatedRecommendations string Recomendación asociada con esta recomendación. projects/[project_number]/locations/global/ recommenders/google.resourcemanager.project. ChangeRiskRecommender/recommendations/ [recommendation_id]
constraint object Contiene la restricción de recomendaciones de riesgos de cambio que se recomienda al usuario. This project should not be deleted.
importance object Contiene la lista de motivos por los que determinamos este recurso es importante. Por ejemplo, uso alto.
risk object Contiene detalles de la evaluación de riesgos. Por ejemplo,los valores de la actividad de uso de recursos se usan para determinar la importancia.
updateTime string Marca de tiempo de la última vez que se actualizó la recomendación. Una marca de tiempo en formato RFC 3339 UTC Zulú, con precisión de nanosegundos. Ejemplo: 2022-01-10T22:47:38.421626Z.

Visualiza las recomendaciones sobre riesgos de cambio

Además del modelo de uso que se mencionó antes, puedes usar el enfoque estándar para el servicio de recomendador a fin de ver las recomendaciones y estadísticas de riesgos de cambio para un proyecto, una cuenta de servicio o una política de IAM:

  • Consola de Google Cloud
  • API
  • gcloud

Consola de Google Cloud

Puedes ver las estadísticas y recomendaciones de cambios en las páginas de productos. Las recomendaciones se activarán de forma automática siempre que tenga los permisos enumerados arriba.

Active Assist te advierte sobre los peligros de borrar un recurso importante y, además, indica qué hacer cuando esa advertencia aparezca en las siguientes situaciones:

gcloud y API

En las siguientes secciones, se presentan los comandos para solicitar cambios y recomendaciones de riesgos de cambio a través de gcloud y la API para un proyecto, una cuenta de servicio o una política de IAM.

Proyecto

Se puede acceder a las estadísticas y recomendaciones a través de la consola de Google Cloud, gcloud o la API de recomendador para todos los clientes.

gcloud

Para ver recomendaciones y estadísticas de gcloud, sigue los pasos que se indican a continuación. Para obtener más información, consulta Usa la API - Estadísticas y Usa la API - Recomendaciones.

Recomendaciones:

Para mostrar una lista de las recomendaciones del proyecto en el que habilitaste la API de recomendador, ejecuta el siguiente comando:

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

Reemplaza lo siguiente:

  • PROJECT_ID : el ID del proyecto
Estadísticas:

Se puede usar un conjunto similar de comandos para enumerar estadísticas.

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

Reemplaza lo siguiente:

  • PROJECT_ID : el ID del proyecto

API

Para ver recomendaciones y estadísticas, puedes usar curl a fin de enviar una solicitud a las API del recomendador.

Recomendaciones

Para mostrar una lista de las recomendaciones del proyecto en el que habilitaste la API de recomendador, ejecuta el siguiente 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"

Reemplaza lo siguiente:

  • BILLING_PROJECT_ID : el ID del proyecto de facturación.
Estadísticas:

Se puede usar un conjunto similar de comandos para enumerar estadí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"

Reemplaza lo siguiente: * BILLING_PROJECT_ID : el ID del proyecto de facturación.

Cuenta de servicio

Se puede acceder a las estadísticas y recomendaciones sobre una cuenta de servicio a través de la consola de Google Cloud, gcloud o la API de recomendador para todos los clientes.

gcloud

Para ver recomendaciones y estadísticas de gcloud, sigue los pasos que se indican a continuación. Para obtener más información, consulta Usa la API - Estadísticas y Usa la API - Recomendaciones.

Recomendaciones:

Para mostrar una lista de las recomendaciones de una cuenta de servicio en la que habilitaste la API de recomendador, ejecuta el siguiente comando:

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

Reemplaza lo siguiente:

  • PROJECT_ID : el ID del proyecto
Estadísticas:

Se puede usar un conjunto similar de comandos para enumerar estadísticas.

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

Reemplaza lo siguiente: * PROJECT_ID : el ID del proyecto.

API

Para ver recomendaciones y estadísticas, puedes usar curl a fin de enviar una solicitud a las API del recomendador.

Recomendaciones:

Para mostrar una lista de las recomendaciones de una cuenta de servicio en la que habilitaste la API de recomendador, ejecuta el siguiente 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"

Reemplaza lo siguiente:

  • PROJECT_ID : el ID del proyecto
  • BILLING_PROJECT_ID : el ID del proyecto de facturación.
Estadísticas:

Se puede usar un conjunto similar de comandos para enumerar estadí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"

Reemplaza lo siguiente: * PROJECT_ID : el ID del proyecto. * BILLING_PROJECT_ID : el ID del proyecto de facturación.

Política de IAM

Se puede acceder a las estadísticas y recomendaciones sobre una política de IAM a través de la consola de Google Cloud, gcloud o la API de recomendador para todos los clientes.

gcloud

Para ver recomendaciones y estadísticas de gcloud, sigue los pasos que se indican a continuación. Para obtener más información, consulta Usa la API - Estadísticas y Usa la API - Recomendaciones.

Recomendaciones:

Para mostrar una lista de las recomendaciones para una política de IAM en la que habilitaste la API de recomendador, ejecuta el siguiente comando:

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

Reemplaza lo siguiente:

  • PROJECT_ID : el ID del proyecto
Estadísticas:

Se puede usar un conjunto similar de comandos para enumerar estadísticas.

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

Reemplaza lo siguiente: * PROJECT_ID : el ID del proyecto.

API

Para ver recomendaciones y estadísticas, puedes usar curl a fin de enviar una solicitud a las API del recomendador.

Recomendaciones:

Para mostrar una lista de las recomendaciones para una política de IAM en la que habilitaste la API de recomendador, ejecuta el siguiente 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"

Reemplaza lo siguiente:

  • PROJECT_ID : el ID del proyecto
Estadísticas:

Se puede usar un conjunto similar de comandos para enumerar estadí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"

Reemplaza lo siguiente: * PROJECT_ID : el ID del proyecto. * BILLING_PROJECT_ID : el ID del proyecto de facturación.

Eliminaciones riesgosas con gcloud CLI

Cuando borras recursos a través de gcloud CLI, puedes usar la marca oculta opcional --recommend=yes en el segmento de ALFA para interrumpir los cambios riesgosos. A continuación, se muestran ejemplos de cambios riesgosos compatibles con las recomendaciones. Si no se muestra ninguna evaluación de riesgo, el cambio se considera no riesgoso.

Eliminación del proyecto

El siguiente comando borra un proyecto:

  gcloud alpha projects delete PROJECT_ID  --recommend=yes

Verás los siguientes cambios riesgosos admitidos con recomendaciones:

  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

Eliminación de cuentas de servicio

El siguiente comando borra una cuenta de servicio:

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

Verás los siguientes cambios riesgosos admitidos con recomendaciones:

  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

Si ves el siguiente error, haz lo siguiente:

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

Asegúrate de que la configuración del proyecto esté establecida en un proyecto incluido en la lista de entidades permitidas para usar la API del Recomendador Alfa con el siguiente comando:

  gcloud config set project PROJECT_ID

Eliminación de vinculaciones de políticas de IAM de proyectos

El siguiente comando borra una vinculación de política de IAM del proyecto:

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

Verás los siguientes cambios riesgosos admitidos con recomendaciones:

  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

Comentarios y asistencia

Envía un correo electrónico a active-assist-feedback@google.com en caso de problemas técnicos, preguntas o comentarios.