Empfehlungen für inaktive VMs konfigurieren


Auf dieser Seite wird beschrieben, wie Sie die Konfiguration Ihrer inaktiven VM-Empfehlungen aufrufen und ändern. Sie können die Konfiguration ändern, um die Anzahl der erhaltenen Empfehlungen zu erhöhen oder zu vermeiden, dass VMs mit absichtlich kleinen Arbeitslasten als inaktive VMs falsch klassifiziert werden.

Hinweise

  • Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei Compute Engine authentifizieren.

    Wählen Sie den Tab für die Verwendung der Beispiele auf dieser Seite aus:

    gcloud

    1. Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:

      gcloud init
    2. Legen Sie eine Standardregion und -zone fest.

    REST

    Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.

      Installieren Sie die Google Cloud CLI und initialisieren Sie sie mit folgendem Befehl:

      gcloud init

Preise

Konfigurierbare Empfehlungen sind kostenlos verfügbar. Die Verwendung von Empfehlungen zur Reduzierung der Ressourcennutzung kann zu Kosteneinsparungen führen.

Empfehlungen konfigurieren

Führen Sie die folgenden Schritte aus, um die Empfehlungen zu inaktiven VMs zu konfigurieren:

  1. Rufen Sie die aktuelle Konfiguration ab, um die JSON-Datei der Konfiguration zu erhalten.
  2. Bearbeiten Sie die Konfigurationsdatei im JSON-Format.
  3. Laden Sie die neue Konfigurationsdatei hoch, um die Änderungen zu übernehmen.

Aktuelle Konfiguration abrufen

Sie können die aktuelle Konfiguration für inaktive VM-Empfehlungen für Ihr Projekt über das Google Cloud CLI oder REST abrufen.

gcloud

Verwenden Sie den Befehl gcloud recommender recommender-config describe und geben Sie google.compute.instance.IdleResourceRecommender als Recommender-ID an, um die aktuellen Konfigurationsparameter abzurufen:

gcloud recommender recommender-config describe google.compute.instance.IdleResourceRecommender \
  --project=PROJECT_ID \
  --location=ZONE

Dabei gilt:

  • PROJECT_ID: die Projekt-ID
  • ZONE: die Zone, für die Sie die aktuelle Konfiguration abrufen möchten

Beispiel:

gcloud recommender recommender-config describe google.compute.instance.IdleResourceRecommender \
  --project=my-project \
  --location=us-central1-c

Der Befehl gibt die Recommender-Konfiguration zurück, einschließlich des änderbaren Unterfelds params.observation_period.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1209600s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2021-02-03T04:41:15.330351Z"
}

REST

Verwenden Sie zum Abrufen der aktuellen Konfiguration die Methode recommenders.getConfig und geben Sie google.compute.instance.IdleResourceRecommender als Recommender-ID an:

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config

Dabei gilt:

  • PROJECT_ID: die ID des Projekts, für das Sie die Recommender-Konfiguration abrufen möchten.
  • ZONE: die Zone, die Ihr Projekt enthält.

Führen Sie in der Befehlszeile den folgenden Befehl aus, um die Recommender-Konfiguration für ein Projekt abzurufen:

PROJECT_ID=PROJECT_ID
ZONE=ZONE
curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "x-goog-user-project: ${PROJECT_ID}" \
https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config

Der Befehl gibt die Recommender-Konfiguration zurück, einschließlich des Unterfelds, das Sie ändern können: params.observation_period.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1209600s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2021-02-03T04:41:15.330351Z"
}

Konfiguration für ein Projekt aktualisieren

Ändern Sie den Wert für observation_period und laden Sie die neue Konfiguration für Ihr Projekt hoch, um die Konfiguration der Empfehlungen zu inaktiven VMs zu aktualisieren.

Sie können den Beobachtungszeitraum auf einen Wert zwischen 1 Tag und 14 Tagen festlegen. Dazu verwenden Sie einen String mit der Gesamtzahl von Sekunden gefolgt vom Buchstaben s.

  • Verwenden Sie "86400s" für einen Beobachtungszeitraum von 1 Tag.
  • Verwenden Sie "1209600s" für einen Beobachtungszeitraum von 14 Tagen.

Nachdem Sie die neue Konfiguration hochgeladen haben, dauert es etwa 48 Stunden, bis sie wirksam wird. Bis dahin verwenden alle generierten Empfehlungen die vorherige Konfiguration.

gcloud

Verwenden Sie zum Aktualisieren der Konfigurationsparameter den Befehl gcloud recommender recommender-config update und geben Sie google.compute.instance.IdleResourceRecommender als Recommender-ID an:

gcloud recommender recommender-config update google.compute.instance.IdleResourceRecommender\
  --project=PROJECT_ID \
  --location=ZONE \
  --config-file=CONFIG_FILE_PATH \
  --etag=ETAG

Dabei gilt:

  • PROJECT_ID: die Projekt-ID
  • ZONE: die Zone, für die Sie die aktuelle Konfiguration abrufen möchten
  • CONFIG_FILE_PATH: der Pfad zur JSON-Datei mit der aktuellen Konfiguration
  • ETAG: der ETag-Wert der aktuellen Konfiguration

Geben Sie in Ihrer Konfigurationsdatei nur das Objekt recommenderGenerationConfig mit den aktualisierten Konfigurationsparametern an. Verwenden Sie beispielsweise die folgende Konfigurationsdatei, um einen Beobachtungszeitraum von fünf Tagen anzugeben:

{
  "params": {
    "observation_period": "432000s"
  }
}

Wenn der Befehl erfolgreich ausgeführt wurde, wird ein Antworttext ähnlich dem folgenden zurückgegeben, der die neue Konfiguration mit den soeben geänderten Parametern enthält.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "432000s"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2021-02-03T05:00:05Z"
}

REST

Verwenden Sie zum Aktualisieren der Konfiguration die Methode recommenders.updateConfig und geben Sie google.compute.instance.IdleResourceRecommender als Recommender-ID an:

PATCH https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "1209600s"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\""
}

Dabei gilt:

  • PROJECT_ID: die ID des Projekts, für das Sie die Recommender-Konfiguration ändern möchten.
  • ZONE: die Zone, die Ihr Projekt enthält.

Speichern Sie den Anfragetext in einer Datei, z. B. config.json. Sie können dann auf die Datei verweisen, wenn Sie die Recommender-Konfiguration für Ihr Projekt aktualisieren. Verwenden Sie dazu einen Befehl wie diesen:

curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "x-goog-user-project: ${PROJECT_ID}" \
-d @config.json \
https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config

Der Befehl POST gibt einen Antworttext ähnlich dem folgenden zurück, der die neue Konfiguration mit den soeben geänderten Parametern zeigt.

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "observation_period": "432000s"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2021-02-03T05:00:05Z"
}

Nächste Schritte