Recomendador de proyectos sin actividad

El recomendador de proyectos sin actividad analiza la actividad de uso que ocurre en los proyectos de tu organización y proporciona recomendaciones que te ayudan a descubrir, recuperar o quitar los proyectos inactivos.

Descripción general

En las organizaciones dinámicas, es común que los recursos de la nube (incluidos proyectos completos) se olviden de vez en cuando. Estos recursos sin actividad pueden ser difíciles de identificar y tienden a generar riesgos innecesarios de seguridad y desperdicio.

El recomendador de proyectos sin actividad analiza la actividad de uso que ocurre en todos los proyectos de tu organización y proporciona las siguientes funciones para ayudarte a descubrir, recuperar y cerrar los proyectos inactivos:

  • Estadísticas de uso para cada proyecto (herramientas de redes, API, propietario del proyecto, actividad de servicio y mucho más)
  • Recomendaciones para dar de baja los proyectos que tienen poca actividad de uso
  • Recomendaciones para asignar propietarios nuevos a los proyectos en los que hay una alta actividad de uso, pero que no tienen un propietario activo

Cerrar o recuperar proyectos sin actividad puede generar los siguientes efectos y beneficios en tu organización:

  • Reducción de riesgos de seguridad (SECURITY)
  • Reducción de los gastos innecesarios (COST)
  • Reducción de la huella de carbono asociada con las cargas de trabajo (SUSTAINABILITY)

Cómo funciona

El recomendador de proyectos sin actividad analiza el uso de los proyectos durante los últimos 30 días. En la siguiente tabla, se indican las recomendaciones y estadísticas que puede generar el recomendador de proyectos sin actividad según el nivel de actividad de uso.

Uso o tipo de proyecto Subtipo de estadística Recomendación Subtipo de recomendación
Proyectos con:
  • Bajo uso durante los últimos 30 días
PROJECT_ACTIVITY Revisa o borra el proyecto. CLEANUP_PROJECT
Proyectos con:
  • Uso alto durante los últimos 30 días
  • Usuarios propietarios asignados, pero ninguno de ellos está activo en el proyecto
PROJECT_ACTIVITY Reclama el proyecto asignándolo a un propietario nuevo. RECLAIM_PROJECT
Todos los demás proyectos que no son de Apps Script PROJECT_ACTIVITY - -

Las recomendaciones y las estadísticas están disponibles en diferentes niveles de la jerarquía de Cloud Organization. Para acceder a esas recomendaciones y estadísticas, se requiere una vinculación de roles de IAM en el nivel correspondiente:

  • A nivel de proyecto: los propietarios de los proyectos pueden descubrir estadísticas de los proyectos a los que tienen acceso y tomar medidas en función de ellas.
  • A nivel de organización: los administradores de la organización pueden descubrir y tomar medidas con base en las estadísticas y recomendaciones de los proyectos dentro de una organización en la nube.
  • A nivel de cuenta de facturación: los administradores de facturación pueden descubrir y tomar medidas con respecto a las estadísticas y las recomendaciones de los proyectos asociados con una cuenta de facturación determinada.
.

Clasifica la actividad de uso de un proyecto

Se puede clasificar un proyecto como con actividad de uso baja o alta según las recomendaciones que se proporcionen. La clasificación de la actividad de uso de un proyecto se calcula en función del contenido incluido en las estadísticas de uso del proyecto.

Para los proyectos que se identifican como con actividad de uso baja, se aplican las siguientes condiciones:

Clasificación de uso Condición
Organizaciones que tienen más de 50 proyectos
  • Un proyecto se clasifica según el nivel de actividad de uso de todo el contenido incluido en las estadísticas de uso del proyecto.
  • Un proyecto se clasifica como sin actividad si se encuentra en el 10% de la actividad de uso en comparación con todos los demás proyectos de esa organización.
Organizaciones que tienen menos de 50 proyectos
  • El promedio diario de llamadas a la API que consume un proyecto (consumedApiDailyCount) es inferior a 100.
  • Cloud Logging es el único servicio que usa un proyecto.
  • Todas las demás estadísticas de uso del proyecto tienen un valor igual a cero.

Impacto y prioridad de la recomendación

Las recomendaciones de proyectos sin actividad contienen los siguientes campos que ayudan a priorizar y estimar los beneficios de aplicarlas:

  • priority: Es un valor de prioridad entre P1-P4, en el que P1 es la prioridad más alta.
  • primaryImpact - SECURITY. El recuento de recomendaciones de seguridad de prioridad alta en un proyecto sin actividad.
  • additionalImpact(s) - COST y SUSTAINABILITY. El costo ($) y la reducción de las emisiones de sustentabilidad (kgCO2e) que se realizarían si se quitara el proyecto.

Prioridad de recomendación

La prioridad de la recomendación de proyecto sin actividad varía de P1 a P4 y P1 es la más alta.

Primero, revisa las recomendaciones de seguridad en cada proyecto sin actividad. Desde allí, establece la prioridad de la recomendación del proyecto sin actividad que es la misma que tiene la recomendación de mayor prioridad dentro del proyecto. Por ejemplo, si un proyecto sin supervisión tiene 10 recomendaciones de seguridad, ocho recomendaciones de P2 y dos recomendaciones de P1, la recomendación de proyecto sin actividad tendrá asignado un valor de prioridad de P1.

Las recomendaciones de seguridad que se encuentran con más frecuencia en proyectos sin actividad son del recomendador de IAM. Una recomendación de proyecto sin actividad con una prioridad de P1 probablemente significa que hay un bucket de Cloud Storage de acceso público en el proyecto sin actividad (obtén más información sobre cómo el recomendador de IAM establece prioridades).

Impacto en la seguridad

El campo primaryImpact - SECURITY ofrece un securityProjection igual al recuento de recomendaciones de seguridad de prioridad alta (P2 y superiores) en el proyecto sin actividad. Por ejemplo, cuando un proyecto tiene una recomendación para reemplazar un rol amplio de editor por un rol más detallado, esa recomendación tiene una prioridad de P2 y se cuenta en el priorityRecommendationCount.

Impacto en los costos

El campo additionalImpact - COST ofrece una costProjection que es una estimación de los ahorros de costos si se quitara el proyecto sin actividad. Esto se basa en los costos generados en los recursos que se ejecutan en el proyecto sin actividad durante los últimos 30 días.

Impacto en la sustentabilidad

El campo additionalImpact - SUSTAINABILITY ofrece una sustainabilityProjection que es una estimación de las emisiones de carbono que contribuyen los recursos que se ejecutan en el proyecto sin actividad los últimos 30 días. La estimación se mide en kilogramos de equivalente de átomos de carbono (kgCO2e).

Contenido de una estadística de uso del proyecto

El contenido de las estadísticas de uso de un proyecto son valores de campo que se usan para clasificar la actividad de uso del proyecto y generar recomendaciones CLEANUP_PROJECT o RECLAIM_PROJECT.

En la siguiente tabla, se indican los diversos campos que muestra el recomendador como parte de la estadística PROJECT_ACTIVITY:

Campo Descripción
Nivel de uso
usagePercentile Percentil del nivel de uso de este proyecto en comparación con otros de la misma organización.

Si el percentil es -1, el valor no se calculó, lo que ocurre cuando las organizaciones tienen menos de 50 proyectos.

Actividad de la API
activeServiceAccountDailyCount Promedio diario de cuentas de servicio con actividad de autenticación en este proyecto
apiClientDailyCount Promedio diario de clientes distintos de llamadas a la API que generó este proyecto
consumedApiDailyCount Promedio diario de llamadas a la API que consume este proyecto
datastoreApiDailyCount Promedio diario de llamadas a la API de Datastore que consume este proyecto
Actividad de Herramientas de redes
vpcEgressDailyBytes Promedio diario de bytes de salida de VPC de este proyecto
vpcIngressDailyBytes Promedio diario de bytes de entrada de VPC en este proyecto
Uso de facturación
hasBillingAccount Verifica si el proyecto tiene una cuenta de facturación al final de la observación
serviceWithBillableUsage Nombres de los servicios facturables que se usaron en los últimos 30 días
Uso de servicios en la nube
activeAppengineInstanceDailyCount: system/instance_count Promedio diario de la cantidad de instancias de App Engine activas en este proyecto
activeCloudsqlInstanceDailyCount Promedio diario de la cantidad de instancias de Cloud SQL activas en este proyecto
activeGceInstanceDailyCount Promedio diario de la cantidad de instancias de Compute Engine activas en este proyecto
bigqueryInflightJobDailyCount Promedio diario de trabajos de BigQuery en tránsito en este proyecto
bigqueryInflightQueryDailyCount Promedio diario de recuento de consultas de BigQuery en este proyecto.
bigqueryStorageDailyBytes Promedio diario de almacenamiento en BigQuery en tránsito en este proyecto
bigqueryTableDailyCount Promedio diario de recuento de tablas de BigQuery en este proyecto
gcsObjectDailyCount Promedio diario de cantidad de objetos de Cloud Storage en este proyecto
gcsRequestDailyCount Promedio diario de cantidad de API de Cloud Storage en este proyecto
gcsStorageDailyBytes Promedio diario de bytes de almacenamiento usados por Cloud Storage en este proyecto
Actividad del usuario
numActiveUserOwners La cantidad de propietarios de proyectos de tipo de usuario activo al final del período de observación (activo significa que la cuenta de usuario no está inhabilitada y que se identificó actividad en este proyecto durante el período de observación)
owners Lista de propietarios del proyecto y sus actividades
Otros campos
hasActiveOauthTokens Comprueba si el proyecto tiene algún token de OAuth activo que se usó en los últimos 180 días.
carbonFootprintDailyKgCO2 Promedio diario de emisiones de carbono que aporta este proyecto según los últimos 30 días de datos disponibles.
costProjection Ahorro de costos proyectado durante el tiempo especificado si se quitara el proyecto. Se muestra un precio personalizado o de lista según los permisos de la cuenta de facturación. Es una estimación basada en los últimos 30 días de datos disponibles y no constituye una factura.
severity severity se establece en el valor correspondiente de la estadística de seguridad de mayor gravedad que se encuentra en el proyecto. Por ejemplo, según la forma en que el Recomendador de IAM establece la gravedad de sus estadísticas, una gravedad CRITICAL en la estadística del proyecto sin actividad probablemente significa que hay un bucket de Cloud Storage accesible en el proyecto sin actividad.

Recomendaciones para borrar un proyecto

Se recomienda borrar un proyecto cuando tiene un uso bajo en los últimos 30 días y no hay tokens de OAuth que se usaron en los últimos 180 días.

Recomendaciones para asignar un propietario nuevo a un proyecto

Se recomienda asignar un propietario nuevo a un proyecto cuando cumpla con todas las condiciones que se indican a continuación:

  • Todos los propietarios asignados están inactivos en el proyecto durante los últimos 90 días o ya no están en la empresa.
  • El proyecto tiene una actividad de uso alta.

Precios

Para obtener más detalles sobre los precios de Active Assist, consulta los precios del recomendador.

Antes de comenzar

Antes de que puedas ver las estadísticas y las recomendaciones, debes hacer lo siguiente:

  • Debes habilitar la API de Recommender. Solo necesitas habilitar la API en un 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 --billing-project de gcloud/API.
  • Asegúrate de tener asignada uno de esos roles necesarios:
Descripción Funciones
Ver recomendaciones recommender.projectUtilViewer
Visualiza y actualiza recomendaciones recommender.projectUtilAdmin
Inhabilita las estadísticas y recomendaciones en el Centro de transparencia y control dataprocessing.admin

Estos roles proporcionan un conjunto de permisos que te permiten acceder a las estadísticas y recomendaciones. Para obtener más información sobre los roles, consulta Comprende los roles y Otorga permisos de IAM.

Otorgar estos roles a nivel de organización te permite acceder a las recomendaciones y estadísticas de los proyectos de la organización de forma individual o colectiva (todos los proyectos sin supervisión de la organización) mediante la API a nivel de organización.

Otorgar estos roles a nivel de cuenta de facturación te permite acceder a las recomendaciones y estadísticas de los proyectos que usan la cuenta de facturación especificada.

Si buscas más información para inhabilitar las recomendaciones, consulta Inhabilita las estadísticas y recomendaciones.

ID del recomendador

Estos son el ID del recomendador del proyecto sin actividad y el tipo de estadística:

  • google.resourcemanager.projectUtilization.Recommender
  • google.resourcemanager.projectUtilization.Insight

Permisos de IAM obligatorios

Para acceder a la lista de recomendaciones y estadísticas, se requieren los siguientes permisos:

  • recommender.resourcemanagerProjectUtilizationRecommendations.get
  • recommender.resourcemanagerProjectUtilizationRecommendations.list
  • recommender.resourcemanagerProjectUtilizationInsights.get
  • recommender.resourcemanagerProjectUtilizationInsights.list

Para actualizar recomendaciones y estadísticas (por ejemplo, para descartar una recomendación), se requieren los siguientes permisos:

  • recommender.resourcemanagerProjectUtilizationRecommendations.update
  • recommender.resourcemanagerProjectUtilizationInsights.update

Visualiza las recomendaciones de proyectos sin actividad

En esta sección, se describe cómo verificar las estadísticas y recomendaciones sin actividad con gcloud y curl para enviar solicitudes a la API del recomendador.

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

  1. Para mostrar una lista de las recomendaciones de proyectos sin actividad del proyecto en el que habilitaste la API de Recommender, ejecuta el siguiente comando:

      gcloud recommender recommendations list \
      --project=PROJECT_ID \
      --location=global \
      --recommender=google.resourcemanager.projectUtilization.Recommender
    

    Reemplaza lo siguiente:

    • PROJECT_ID: El ID del proyecto
  2. Para mostrar una lista de las recomendaciones de proyectos sin actividad de un proyecto diferente mientras usas un proyecto en el que habilitaste la API de Recommender (como en el paso anterior), ejecuta el siguiente comando:

      gcloud recommender recommendations list \
      --billing-project=BILLING_PROJECT_ID \
      --project=PROJECT_ID \
      --location=global \
      --recommender=google.resourcemanager.projectUtilization.Recommender
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo PROJECT_ID que se indicó en el paso anterior)
    • PROJECT_ID: El ID de un proyecto diferente para el que deseas ver las recomendaciones sobre proyectos sin actividad.
  3. Para enumerar las recomendaciones de proyectos sin supervisión de toda la organización, mientras usas un proyecto en el que habilitaste la API de recomendador (como en el paso anterior), ejecuta el siguiente comando:

      gcloud recommender recommendations list \
      --billing-project=BILLING_PROJECT_ID \
      --organization=ORGANIZATION_ID \
      --location=global \
      --recommender=google.resourcemanager.projectUtilization.Recommender
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo que se indicó en el paso anterior).
    • ORGANIZATION_ID: El ID de la organización en la que deseas ver las recomendaciones de proyectos sin supervisión.
  4. Para enumerar las recomendaciones de proyectos sin supervisión que usan una cuenta de facturación específica, mientras usas un proyecto en el que habilitaste la API de recomendador (como en el paso anterior), ejecuta el siguiente comando:

      gcloud recommender recommendations list \
      --billing-project=BILLING_PROJECT_ID \
      --billing-account=BILLING_ACCOUNT_ID \
      --location=global \
      --recommender=google.resourcemanager.projectUtilization.Recommender
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo que se indicó en el paso anterior).
    • BILLING_ACCOUNT_ID: El ID de tu cuenta de facturación de Google Cloud.

Estadísticas

  1. Para enumerar las estadísticas de uso de un proyecto determinado, ejecuta el siguiente comando:

      gcloud recommender insights list \
      --project=PROJECT_ID \
      --location=global \
      --insight-type=google.resourcemanager.projectUtilization.Insight
    

    Reemplaza lo siguiente:

    • PROJECT_ID: El ID del proyecto
  2. Para enumerar las estadísticas de uso de un proyecto diferente mientras usas un proyecto en el que habilitaste la API de recomendador (como en el paso anterior), ejecuta el siguiente comando:

      gcloud recommender insights list \
      --billing-project=BILLING_PROJECT_ID \
      --project=PROJECT_ID \
      --location=global \
      --insight-type=google.resourcemanager.projectUtilization.Insight
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo PROJECT_ID que se indicó en el paso anterior)
    • PROJECT_ID: El ID de un proyecto diferente para el que deseas ver las estadísticas del recomendador sobre proyectos sin actividad
  3. Para enumerar las estadísticas de uso de toda la organización, mientras usas un proyecto en el que habilitaste la API de Recomendador (como en el paso anterior), ejecuta el siguiente comando:

      gcloud recommender insights list \
      --billing-project=BILLING_PROJECT_ID \
      --organization=ORGANIZATION_ID \
      --location=global \
      --insight-type=google.resourcemanager.projectUtilization.Insight
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo que se indicó en el paso anterior).
    • ORGANIZATION_ID: El ID de la organización para la que deseas ver las estadísticas de uso.
  4. Para mostrar una lista de las estadísticas de uso que usan una cuenta de facturación específica, en el mismo proyecto que habilitaste la API de recomendador (como en el paso anterior), ejecuta el siguiente comando:

      gcloud recommender insights list \
      --billing-project=BILLING_PROJECT_ID \
      --billing-account=BILLING_ACCOUNT_ID \
      --location=global \
      --insight-type=google.resourcemanager.projectUtilization.Insight
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo que se indicó en el paso anterior).
    • BILLING_ACCOUNT_ID: El ID de tu cuenta de facturación de Google Cloud.

API

Para ver recomendaciones y estadísticas, puedes usar curl a fin de enviar una solicitud a las API del recomendador. Para autorizar solicitudes desde la línea de comandos, usa tokens de acceso de OAuth. Un token de acceso OAuth es una string que otorga acceso temporal a una API.

Recomendaciones

  1. Para mostrar una lista de las recomendaciones de proyectos sin actividad del proyecto en el que habilitaste la API de Recommender, 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.resourcemanager.projectUtilization.Recommender/recommendations"
    

    Reemplaza lo siguiente:

    • PROJECT_ID`: la ID del proyecto.
  2. Para mostrar una lista de las recomendaciones de proyectos sin actividad de un proyecto diferente mientras usas un proyecto en el que habilitaste la API de Recommender (como en el paso anterior), 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.projectUtilization.Recommender/recommendations"
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo PROJECT_ID que se indicó en el paso anterior)
    • PROJECT_ID: El ID de un proyecto diferente para el que deseas ver las recomendaciones sobre proyectos sin actividad.
  3. Para enumerar las recomendaciones de proyectos sin supervisión de toda la organización, mientras usas un proyecto en el que habilitaste la API de recomendador (como en el paso anterior), 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/organizations/ORGANIZATION_ID/locations/global/\
    recommenders/google.resourcemanager.projectUtilization.Recommender/recommendations"
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo PROJECT_ID que se indicó en el paso anterior)
    • ORGANIZATION_ID: El ID de la organización en la que deseas ver las recomendaciones de proyectos sin supervisión.
  4. Para enumerar las recomendaciones de proyectos sin supervisión que usan una cuenta de facturación específica, mientras usas un proyecto en el que habilitaste la API de recomendador (como en el paso anterior), 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/billingAccounts/BILLING_ACCOUNT_ID/locations/global/\
    recommenders/google.resourcemanager.projectUtilization.Recommender/recommendations"
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo PROJECT_ID que se indicó en el paso anterior)
    • BILLING_ACCOUNT_ID: El ID de tu cuenta de facturación de Google Cloud.

Estadísticas

  1. Para enumerar las estadísticas de uso de un proyecto determinado, ejecuta el siguiente comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/global\
    /insightTypes/google.resourcemanager.projectUtilization.Insight/insights"
    

    Reemplaza lo siguiente:

    • PROJECT_ID`: la ID del proyecto.
  2. Para enumerar las estadísticas de uso de un proyecto diferente mientras usas un proyecto en el que habilitaste la API de recomendador (como en el paso anterior), 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\
    /insightTypes/google.resourcemanager.projectUtilization.Insight/insights"
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo PROJECT_ID que se indicó en el paso anterior)
    • PROJECT_ID: El ID de un proyecto diferente para el que deseas ver las estadísticas del recomendador sobre proyectos sin actividad
  3. Para enumerar las estadísticas de uso de toda la organización, mientras usas un proyecto en el que habilitaste la API de Recomendador (como en el paso anterior), ejecuta el siguiente comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)"  \
    -H "x-goog-user-project: PROJECT_ID/" \
    "https://recommender.googleapis.com/v1/organizations/ORGANIZATION_ID/locations/global/\
    insightTypes/google.resourcemanager.projectUtilization.Insight/insights"
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo PROJECT_ID que se indicó en el paso anterior)
    • ORGANIZATION_ID: El ID de la organización en la que deseas ver las recomendaciones de proyectos sin supervisión.
  4. Para mostrar una lista de las estadísticas de uso que usan una cuenta de facturación específica, en el mismo proyecto que habilitaste la API de recomendador (como en el paso anterior), ejecuta el siguiente comando:

    curl \
    -H "Authorization: Bearer $(gcloud auth print-access-token)"  \
    -H "x-goog-user-project: PROJECT_ID/" \
    "https://recommender.googleapis.com/v1/billingAccounts/BILLING_ACCOUNT_ID/locations/global/\
    insightTypes/google.resourcemanager.projectUtilization.Insight/insights"
    

    Reemplaza lo siguiente:

    • BILLING_PROJECT_ID: El ID del proyecto que habilitaste con la API de Recommender (que sería el mismo PROJECT_ID que se indicó en el paso anterior)
    • BILLING_ACCOUNT_ID: El ID de tu cuenta de facturación de Google Cloud.

Configura parámetros de recomendación

En esta sección, se describe cómo ver y configurar este recomendador mediante gcloud y curl.

En la siguiente tabla, se enumeran varios parámetros que se pueden configurar:

Parámetro Descripción Valores esperados
minimum_observation_period El período de observación mínimo define la cantidad de días que se analizan las actividades del proyecto antes de que se genere una recomendación.

Por el momento, la configuración de este valor solo se admite a nivel de la organización.

"P30D"[DEFAULT], "P60D", "P90D", "P180D", "P270D", "P365D"

gcloud

Para ver y actualizar las configuraciones del recomendador con gcloud, sigue estos pasos.

Visualiza configuraciones

  1. Para ver las configuraciones del recomendador de proyectos sin supervisión de una organización determinada, ejecuta el siguiente comando desde un proyecto que pertenezca a esa organización que tenga la API del recomendador habilitada:

    gcloud beta recommender recommender-config describe \
    google.resourcemanager.projectUtilization.Recommender \
    --organization=ORGANIZATION_ID \
    --location=global
    

    Reemplaza lo siguiente:

    • ORGANIZATION_ID: El ID de la organización.
  2. Resultado de ejemplo:

    etag: ETAG
    name: organizations/ORGANIZATION_ID/locations/global/recommenders/google.resourcemanager.projectUtilization.Recommender/config
    recommenderGenerationConfig:
      params:
        minimum_observation_period: P30D
    revisionId: DEFAULT
    updateTime: '2022-04-19T00:57:55Z'
    

    Ten en cuenta el valor de ETAG:

    • ETAG: Este valor se usará en recommender-config update.

Actualiza las configuraciones

  1. Para actualizar las configuraciones del recomendador de proyectos sin supervisión para una organización determinada, elige un proyecto que pertenezca a esa organización en la que habilitaste la API de recomendador, crea un archivo config.gcloud:

    
    {
     "params": {
        "minimum_observation_period": DURATION
      }
    }
    

    Reemplaza lo siguiente:

    • DURATION: Un valor de “P30D”, “P60D”, “P90D”, “P180D”, “P270D”, “P365D”
  2. Ejecuta el siguiente comando:

    gcloud beta recommender recommender-config update \
    google.resourcemanager.projectUtilization.Recommender \
    --organization=ORGANIZATION_ID \
    --location=global \
    --config-file=config.gcloud \
    --etag=ETAG
    

    Reemplaza lo siguiente:

    • ORGANIZATION_ID: El ID de la organización.
    • ETAG: El valor de Etag que se mostró desde recommender-config describe.

API

Para ver y actualizar las configuraciones del recomendador, puedes usar curl para enviar una solicitud a las API del recomendador. Para autorizar solicitudes desde la línea de comandos, usa tokens de acceso de OAuth. Un token de acceso OAuth es una string que otorga acceso temporal a una API.

Visualiza configuraciones

  1. Para ver las configuraciones del recomendador de proyectos sin supervisión de una organización determinada, ejecuta el siguiente comando desde un proyecto que pertenezca a esa organización que tenga la API del recomendador habilitada:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "x-goog-user-project: PROJECT_ID" \
    https://recommender.googleapis.com/v1beta1/organizations/ORGANIZATION_ID/locations/global/recommenders/google.resourcemanager.projectUtilization.Recommender/config
    

    Reemplaza lo siguiente:

    • PROJECT_ID: El ID del proyecto
    • ORGANIZATION_ID: El ID de la organización.
  2. Resultado de ejemplo:

    
    {
      "name": "organizations/ORGANIZATION_ID/locations/global/recommenders/google.resourcemanager.projectUtilization.Recommender/config",
      "recommenderGenerationConfig": {
        "params": {
          "minimum_observation_period": "P60D"
        }
      },
      "etag": ETAG,
      "updateTime": "2022-04-21T18:51:17.407255Z",
      "revisionId": "75c3b0d7"
    }
    
    

    Ten en cuenta el valor de ETAG:

    • ETAG: Este valor se usará en curl PATCH.

Actualiza las configuraciones

  1. Para actualizar las configuraciones del recomendador de proyectos sin supervisión para una organización determinada, elige un proyecto que pertenezca a esa organización en la que habilitaste la API de recomendador, crea un archivo request.json:

    
    {
      "name": "organizations/ORGANIZATION_ID/locations/global/recommenders/google.resourcemanager.projectUtilization.Recommender/config",
      "recommenderGenerationConfig": {
        "params": {
          "minimum_observation_period": DURATION
        }
      },
    "etag": ETAG,
    }
    

    Reemplaza lo siguiente:

    • DURATION: Un valor de “P30D”, “P60D”, “P90D”, “P180D”, “P270D”, “P365D”
    • ETAG: El valor de Etag que se mostró desde CURL get.
  2. Ejecuta la siguiente línea de comandos:

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "x-goog-user-project: PROJECT_ID" \
    -H "Content-Type: application/json; charset=utf-8" -d @request.json \
    https://recommender.googleapis.com/v1beta1/organizations/ORGANIZATION_ID/locations/global/recommenders/google.resourcemanager.projectUtilization.Recommender/config
    

    Reemplaza lo siguiente:

    • PROJECT_ID: El ID del proyecto
    • ORGANIZATION_ID: El ID de la organización.

¿Qué sigue?