Ver y aplicar recomendaciones de recursos inactivos


Este documento explica cómo ver y aplicar recomendaciones de recursos inactivos para volúmenes de disco persistente, direcciones IP e imágenes de disco personalizadas.

Compute Engine te ayuda a identificar volúmenes de discos persistentes inactivos, direcciones IP e imágenes de discos personalizadas, y brinda recomendaciones para ayudarte a minimizar el desperdicio y evitar cargos innecesarios.

Si está interesado en recomendaciones para instancias de máquinas virtuales (VM) inactivas, consulte Ver y aplicar recomendaciones de VM inactivas .

Antes de comenzar

  • Si aún no lo has hecho, configura la autenticación. La autenticación es el proceso mediante el cual se verifica su identidad para acceder a Google Cloud servicios y API. Para ejecutar código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    2. Set a default region and zone.
    3. REST

      Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.

        After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      Para obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud .

Precios

No hay costos asociados con el uso de recomendaciones de recursos inactivos.

Generación de recomendaciones

Si un recurso no se ha conectado a una máquina virtual u otro recurso durante 15 días, el recomendador clasifica ese recurso como inactivo. Para obtener más información sobre las condiciones para clasificar un recurso como inactivo y las acciones recomendadas, consulte la siguiente tabla:

Recurso Condición para que el recurso se clasifique como inactivo Acción recomendada Ahorros
Disco persistente Todo lo siguiente debe ser cierto:
  • El disco persistente se creó hace al menos 15 días.
  • El disco persistente nunca estuvo conectado a una máquina virtual.
  • El disco persistente está en blanco.
  • El disco persistente no está vinculado a los pods de GKE.
Borrar Ahorre el 100% del costo de ese disco. Para obtener más información, consulte Precios de discos e imágenes .
Disco persistente Todo lo siguiente debe ser cierto:
  • El disco persistente estuvo desconectado durante al menos 15 días.
  • El disco persistente no está vinculado a los pods de GKE.
Cree una instantánea del disco persistente y luego elimínela Reducir el coste de mantenimiento de ese disco del 35% al ​​92%. Para obtener más información, consulte Precios de discos e imágenes .
Imagen personalizada Todo lo siguiente debe ser cierto:
  • La imagen no se utilizó para crear un disco durante al menos 15 días.
  • La imagen no se utiliza en ninguna plantilla de instancia.
Borrar Ahorra el 100% del coste de esa imagen. Para obtener más información, consulte Precios de discos e imágenes .
Dirección IP externa La dirección IP no se ha asociado a ningún recurso durante al menos 15 días. Borrar Ahorra el 100% del coste de esa dirección IP. Para obtener más información, consulte Precios de direcciones IP externas .

Frecuencia de recomendación

Las recomendaciones de recursos inactivos comienzan 15 días después de la creación del recurso y se actualizan una vez cada 24 horas.

Ver recomendaciones

Para ver recomendaciones sobre recursos inactivos, usa la CLI de gcloud o REST.

Consola

En la consola de Google Cloud, vaya a la página Todas las recomendaciones .

Ir a Recomendaciones

Todos los recursos inactivos se enumeran en Recursos de Compute Engine no utilizados .

nube de gcloud

Usa el comando gcloud recommender recommendations list con la marca --recommender= RECOMMENDER_ID :

gcloud recommender recommendations list \
    --project=PROJECT_ID \
    --location=LOCATION \
    --recommender=RECOMMENDER_ID \
    --format=yaml

Reemplace lo siguiente:

  • PROJECT_ID : el ID de su proyecto.
  • LOCATION : la ubicación que contiene los recursos para los cuales desea recomendaciones.
    • Para volúmenes de disco persistente, especifique una zona o región; por ejemplo, us-central1-c .
    • Para IP:
      • Para enumerar IP regionales, debe especificar una región.
      • Para enumerar las IP globales, especifique global . Para obtener más información sobre los recursos de direcciones IP regionales y globales, consulte Direcciones IP .
    • Para imágenes personalizadas, especifique global .
  • RECOMMENDER_ID : el ID del recomendador
    • Para discos, especifique google.compute.disk.IdleResourceRecommender .
    • Para imágenes, especifique google.compute.image.IdleResourceRecommender .
    • Para las IP, especifique google.compute.address.IdleResourceRecommender .

Por ejemplo, el siguiente comando enumera recomendaciones de discos persistentes inactivos en us-central1-c para test-project :

gcloud recommender recommendations list \
    --project=test-project \
    --location=us-central1-c \
    --recommender=google.compute.disk.IdleResourceRecommender \
    --format=yaml


---
content:
    operationGroups:
    - operations:
      - action: add
        resource: //compute.googleapis.com/projects/test-project/global/snapshots/$snapshot-name
        resourceType: compute.googleapis.com/Disk
        path: /
        value:
        - name: $snapshot-name
          sourceDisk: projects/test-project/locations/us-central1-c/disks/pd-name
          storageLocations: us-central1
      - action: remove
        resource: //compute.googleapis.com/projects/test-project/zones/us-central1-c/disks/pd-name
        resourceType: compute.googleapis.com/Disk
        path: /
description: Save cost by snapshotting and then deleting idle persistent disk 'pd-name'
name: projects/test-project/locations/us-central1-c/recommenders/google.compute.disk.IdleResourceRecommender/recommendations/0fd31b24-cc05-4132-8431-ed54a22dd4f1
recommenderSubtype: SNAPSHOT_AND_DELETE_DISK
lastRefreshTime:
  seconds: 1543912652
primaryImpact:
  category: COST
  costProjection:
    cost:
      currencyCode: USD
      units: '-50'
    duration:
      seconds: 2592000
stateInfo: ACTIVE
etag: "cb0e6ac2cfc0b591"

Obtén más información sobre cómo usar la CLI de gcloud para trabajar con recomendaciones .

DESCANSAR

Llame al método recommendations.list y especifique el ID del recomendador , por ejemplo google.compute.disk.IdleResourceRecommender :

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/RECOMMENDER_ID/recommendations

Reemplace lo siguiente:

  • PROJECT_ID : el ID de su proyecto.
  • LOCATION : la ubicación que contiene los recursos para los cuales desea recomendaciones.
    • Para volúmenes de disco persistente, especifique una zona o región; por ejemplo, us-central1-c .
    • Para IP:
      • Para enumerar IP regionales, debe especificar una región.
      • Para enumerar las IP globales, especifique global . Para obtener más información sobre los recursos de direcciones IP regionales y globales, consulte Direcciones IP .
    • Para imágenes personalizadas, especifique global .
  • RECOMMENDER_ID : el ID del recomendador
    • Para discos, especifique google.compute.disk.IdleResourceRecommender .
    • Para imágenes, especifique google.compute.image.IdleResourceRecommender .
    • Para las IP, especifique google.compute.address.IdleResourceRecommender .

El siguiente ejemplo muestra cómo enviar una solicitud con curl y la respuesta de muestra asociada.

PROJECT_ID=test-project
LOCATION=us-central1-c
RECOMMENDER_ID=google.compute.disk.IdleResourceRecommender

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$LOCATION/recommenders/$RECOMMENDER_ID/recommendations

Ejemplo de respuesta JSON para recomendación de disco persistente inactivo:

{
 "description" : "Save cost by deleting idle persistent disk 'pd-name'",
 "name": "projects/test-project/locations/us-central1-c/recommenders/"
         "google.compute.disk.IdleResourceRecommender/"
         "recommendations/0fd31b24-cc05-4132-8431-ed54a22dd4f1",
 "recommenderSubtype" : "SNAPSHOT_AND_DELETE_DISK",
 "lastRefreshTime": {
   "seconds": 1543912652
 },
 "primaryImpact": {
   "category": COST,
   "costProjection": {
    "cost": {"currencyCode": "USD", "units": -50},
    "duration": { "seconds": 2592000 }
   }
 },
 "stateInfo": ACTIVE,
 "content": {
   "operationGroups" : [
    {
      "operations" : [
       {
         "action": "add",
         "resourceType": "compute.googleapis.com/Disk",
         "resource" : "//compute.googleapis.com/projects/test-project/global/snapshots/$snapshot-name",
         "value": {
           "name": "$snapshot-name",
           "sourceDisk": "projects/test-project/zones/us-central1-c/disks/pd-name",
           "storageLocations": ["us-central1"],
         }
       },
       {
         "action": "remove",
         "resourceType": "compute.googleapis/Disk",
         "resource": "//compute.googleapis.com/projects/test-project/"
                     "zones/us-central1-c/disks/pd-name"
       }
      ]
    }
   ]
 },
 "associatedInsights": [
    {
      "insight": "projects/test-project/locations/us-central1-c/insightTypes/google.compute.disk.IdleResourceInsight/insights/31326443-bcc3-4776-9b86-48879fddb656"
    }
  ],
 "etag": "cb0e6ac2cfc0b591"
}

Interpretar la respuesta a la recomendación

Cada recomendación que recibes a través de la CLI o REST de gcloud contiene grupos de operaciones, con operaciones que puedes realizar en serie para aplicar la recomendación. Por ejemplo, los grupos de operaciones de recomendación de disco persistente inactivos incluyen una o dos operaciones:

  • Si su disco persistente inactivo tiene datos, entonces la recomendación incluye una operación add para crear una instantánea para hacer una copia de seguridad del disco persistente. Por ejemplo:

       {
         "action": "add",
         "resourceType": "compute.googleapis.com/Disk",
         "resource" : "//compute.googleapis.com/projects/test-project/global/snapshots/$snapshot-name",
         "path": "/",
         "value": {
           "name": "$snapshot-name",
           "sourceDisk": "projects/test-project/zones/us-central1-c/disks/pd-name",
           "storageLocations": ["us-central1"]
         }
       }
    
  • Una operación remove para eliminar permanentemente el disco persistente inactivo. Por ejemplo:

       {
         "action": "remove",
         "resourceType": "compute.googleapis.com/Disk",
         "resource" : "//compute.googleapis.com/projects/test-project/zones/us-central1-c/disks/pd-name",
         "path": "/"
       }
    

Visualización de información sobre recomendaciones de recursos inactivos

El recomendador genera recomendaciones basadas en conocimientos sobre recursos. Al ver información sobre los recursos, puede obtener más información sobre esos recursos, como por ejemplo cuánto tiempo ha estado desconectado un recurso de una máquina virtual o si un disco persistente está en blanco.

Si deseas ver la información que generó la recomendación, puedes usar la CLI de gcloud o REST.

nube de gcloud

Utilice el comando insights list

gcloud beta recommender insights list --project=PROJECT_NAME \
  --location=LOCATION --insight-type=INSIGHT_TYPE

Reemplace lo siguiente:

  • LOCATION : la ubicación que contiene los recursos sobre los que desea obtener información.
    • Para los PD, especifique una zona o región, por ejemplo, us-central1-c .
    • Para IP:
      • Para enumerar IP regionales, debe especificar una región.
      • Para enumerar las IP globales, especifique global . Para obtener más información sobre los recursos de direcciones IP regionales y globales, consulte Direcciones IP .
    • Para imágenes personalizadas, especifique global .
  • INSIGHT_TYPE : el ID del tipo de información
    • Para discos, especifique google.compute.disk.IdleResourceInsight .
    • Para imágenes, especifique google.compute.image.IdleResourceInsight .
    • Para las IP, especifique google.compute.address.IdleResourceInsight .

DESCANSAR

Utilice el método insights.list .

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/insightTypes/INSIGHT_TYPE/insights

Reemplace lo siguiente:

  • PROJECT_ID : el ID de su proyecto.
  • LOCATION : la ubicación que contiene los recursos sobre los que desea obtener información.
    • Para volúmenes de disco persistente, especifique una zona o región; por ejemplo, us-central1-c .
    • Para IP:
      • Para enumerar IP regionales, debe especificar una región.
      • Para enumerar las IP globales, especifique global . Para obtener más información sobre los recursos de direcciones IP regionales y globales, consulte Direcciones IP .
    • Para imágenes personalizadas, especifique global .
  • INSIGHT_TYPE : el ID del tipo de información
    • Para discos, especifique google.compute.disk.IdleResourceInsight .
    • Para imágenes, especifique google.compute.image.IdleResourceInsight .
    • Para las IP, especifique google.compute.address.IdleResourceInsight .

A continuación se muestra un ejemplo de respuesta de una información sobre un recurso de disco persistente inactivo:

{
  "name": "projects/test-project/locations/us-central1-c/insightTypes/google.compute.disk.IdleResourceInsight/insights/0ec21a13-bb04-3121-7321-dc43a11cc3e2",
  "description": "Disk 'pd-name' in zone 'us-central1-c' was last used 17 days ago. Consider taking snapshot and delete it.",
  "targetResources": [
    "//compute.googleapis.com/projects/test-project/zones/us-central1-c/disks/pd-name"
  ],
  "insightSubtype": "IDLE_DISK",
  "content": {
    "diskLastUseTime": "2019-10-01 13:00:00",
    "isBlank": false,
  },
  "lastRefreshTime": "2019-10-10 13:00:00",
  "observationPeriod": "15 days",
  "stateInfo": {
    "state": "ACTIVE"
  },
  "category": "COST",
  "etag": "fds421j2349",
  "associatedRecommendations": [
    {
      "projects/test-project/locations/us-central1-c/recommenders/"
      "google.compute.disk.IdleResourceRecommender/"
      "recommendations/0fd31b24-cc05-4132-8431-ed54a22dd4f1"
    }
  ]
}

La respuesta de ejemplo incluye los siguientes campos:

  • diskLastUseTime : la última vez que se conectó el disco a una máquina virtual. Si el disco nunca estuvo conectado a una VM, esto se establece en la hora de creación del disco.
  • isBlank : este campo se establece en true si el disco está en blanco y nunca estuvo conectado a la VM. De lo contrario es false .

Para obtener más información sobre ideas, consulte los documentos de referencia .

Aplicar recomendaciones de recursos inactivos

Si recibe una recomendación sobre un recurso inactivo y decide que desea aplicar la recomendación, siga las instrucciones de las siguientes secciones.

Eliminar una dirección IP inactiva

Consulta el método addresses.delete , el comando gcloud compute addresses delete o la documentación sobre Liberación de una dirección IP externa estática .

Eliminar imágenes personalizadas inactivas

Consulta el método images.delete , el comando gcloud compute images delete o la documentación sobre cómo eliminar una imagen .

Aplicar recomendaciones de discos persistentes inactivos

Si necesita crear una instantánea de un disco persistente antes de eliminarlo, consulte Creación de instantáneas de discos persistentes .

Para eliminar un disco persistente inactivo, consulta el comando gcloud compute disks delete .

Para obtener información sobre cómo recuperar datos de una instantánea y volver a crear su disco persistente, consulte Restauración de instantáneas .