Instanzgrößenempfehlungen für MIGs anwenden

Compute Engine gibt Empfehlungen für Maschinentypen, mit denen Sie die Arbeitslastleistung und Kosteneffizienz in Ihren verwalteten Instanzgruppen (MIG) verbessern können. Entscheiden Sie anhand dieser Empfehlungen, ob der Maschinentyp Ihrer Instanzen durch Hinzufügen oder Entfernen von vCPU- und Arbeitsspeicherressourcen skaliert werden sollte.

Weitere Informationen zu den verschiedenen Größenoptionen für VM-Instanzen finden Sie unter Maschinentypen.

Größenempfehlungen werden auch als Rightsizing Recommendations bezeichnet.

Hinweise

Beschränkungen

Empfehlungen sind für verwaltete Instanzgruppen verfügbar, die sich in einer einzelnen Zone befinden und nicht automatisch skaliert oder mit Load Balancing verteilt werden.

Preise

Größenempfehlungen stehen kostenlos zur Verfügung.

Anwendungsfälle

Sie können die Größenempfehlungen für die folgenden Arbeitslasten nutzen:

  • Arbeitslasten mit periodischen Zu- und Abnahmen im Traffic, z. B. saisonabhängige Arbeitslasten.
  • Arbeitslasten, die CPU und RAM nicht auslasten, da sie durch andere Limits wie den Lese-/Schreibdurchsatz beschränkt sind.
  • Arbeitslasten, die Software ausführen, für die individuelle Softwarelizenzen erforderlich sind und für die keine weiteren Instanzen hinzugefügt werden können. In diesem Fall können Sie Ihre Maschinentypen anhand der Größenempfehlungen skalieren und gleichzeitig die Anzahl der VM-Instanzen konstant halten.
  • Arbeitslasten, die sich nicht dynamisch an eine wechselnde Anzahl von Instanzen anpassen lassen, beispielsweise Arbeitslasten, die sich nicht für Autoscaling eignen.

In den folgenden Fällen ist von einer Anwendung der Größenempfehlungen abzuraten:

  • Ihre Arbeitslasten haben sehr kurze CPU-Spitzen. Den Größenempfehlungen liegt die durchschnittliche CPU-Auslastung pro 60-Sekunden-Intervall zugrunde. Die Empfehlungen werden daher möglicherweise nicht schnell genug generiert, um kürzere Spitzen zu erfassen. Anwendungen mit kurzen Nutzungsspitzen müssen möglicherweise auf einem größeren Maschinentyp als dem empfohlenen ausgeführt werden. Alternativ können Sie Autoscaling aktivieren.
  • Die Lastspitzen treten seltener auf als einmal in 8 Tagen (z. B. monatlich). Spitzen, die selten auftreten, werden vom Algorithmus für die Größenanpassung ignoriert. Dieser berücksichtigt nur die letzten acht Tage des Verlaufs.
  • Jede Instanz in Ihrem MIG verarbeitet extrem unterschiedliche Arbeitslasten. In einer solchen Situation richtet sich die Empfehlung nach den VM-Instanzen mit der höchsten Last. Das würde bei den meisten VM-Instanzen in der Gruppe zu einer Überdimensionierung führen.
  • In Ihrer MIG befinden sich VMs, die nicht ausgelastet sind, da sie nicht für Live-Lasten vorgesehen ist, sondern Failover-Kapazität für den Bedarfsfall bereithalten soll.
  • Die VMs Ihrer MIG sind aus einem der folgenden Gründe zu groß:
    • Für Ihre Softwarelizenzierung ist eine Mindestgröße erforderlich.
    • Sie müssen die IOPS-Anforderungen an Speicher oder Netzwerk erfüllen, die nur mit einem bestimmten, minimalen Maschinentyp verfügbar sind.

So funktioniert die Größenempfehlung

Compute Engine überwacht die CPU- und Speichernutzung von laufenden virtuellen Maschinen und gibt Empfehlungen basierend auf den Daten der letzten acht Tage. Um für alle Instanzen in einer verwalteten Instanzgruppe einen einzigen optimalen Maschinentyp zu empfehlen, generiert Compute Engine eine Standardgrößenempfehlung für jede Instanz und wählt nach der Ausreißerbereinigung einen Maschinentyp aus, der keine einzige VM-Instanz unterdimensioniert. Instanzen, die nicht ausgeführt werden, weil sie beispielsweise beendet wurden oder gerade neu gestartet werden, fließen nicht in die Berechnung ein.

Compute Engine kann beispielsweise folgende Empfehlungen ausgeben:

  • Wenn die CPUs der Instanzgruppe die meiste Zeit gering ausgelastet sind, empfiehlt Compute Engine einen Maschinentyp mit weniger virtuellen CPUs.
  • Wenn die CPUs der Instanzgruppe die meiste Zeit stark ausgelastet sind, empfiehlt Compute Engine einen Maschinentyp mit mehr virtuellen CPUs.
  • Wenn die Instanzgruppe nur einen geringen Teil ihres Arbeitsspeichers nutzt, empfiehlt Compute Engine einen Maschinentyp mit weniger Arbeitsspeicher.
  • Wenn die Instanzgruppe einen großen Teil ihres Arbeitsspeichers die meiste Zeit aktiv nutzt, empfiehlt Compute Engine einen Maschinentyp mit mehr Arbeitsspeicher.

Compute Engine kann auch Empfehlungen abgeben, ob ein standardmäßiger oder kundenspezifischer Maschinentyp verwendet werden sollte. Beachten Sie, dass es einige Einschränkungen in der Verfügbarkeit von Speicherkapazität und vCPU auf einer Maschine gibt. Wenn also eine Ressource erhöht werden muss, muss die andere gegebenenfalls ebenfalls erhöht werden, um den Spezifikationen eines gültigen Maschinentyps zu entsprechen. Außerdem empfiehlt Compute Engine nur Maschinentypen, die in der Zone verfügbar sind, in der die Instanz ausgeführt wird.

Weitere Informationen finden Sie in den Spezifikationen für benutzerdefinierte Maschinentypen.

Wenn die Arbeitslast für die verwaltete Instanzgruppe unter den einzelnen Instanzen sehr unterschiedlich ist, sind einige Instanzen unter Umständen überdimensioniert, damit die voll ausgelasteten Instanzen entsprechend der Empfehlung genügend Ressourcen haben. Compute Engine kann beispielsweise die folgende Empfehlung zur Unterstützung der Arbeitslast von Instanz 4 geben, obwohl die Instanzen 1, 2, 3 und 5 überdimensioniert und nicht ausgelastet sind:

Empfehlungen für eine verwaltete Instanzgruppe
Beispiel für eine Überdimensionierung aufgrund unterschiedlicher Arbeitslasten in den verwalteten Instanzen

Aus diesem Grund erhalten Sie die besten Empfehlungen für eine verwaltete Instanzgruppe, wenn die Arbeitslast relativ gleichmäßig auf die Instanzen verteilt ist.

Zur Schätzung der Kostendifferenz werden die Kosten einer Instanz anhand der Nutzung der Vorwoche (vor Rabattabzug für kontinuierliche Nutzung) berechnet und auf 30 Tage hochgerechnet. Diese wird dann mit den monatlichen Kosten des empfohlenen Maschinentyps (vor Rabattabzug für kontinuierliche Nutzung) verglichen. Informationen zur genauen Preisgestaltung und weitere Details finden Sie in der Preisdokumentation.

Größenempfehlungen ansehen

Compute Engine stellt Empfehlungen über die Google Cloud Console bereit. Empfehlungen sind auch über den Beta Recommender mit dem Tool gcloud oder der API verfügbar.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.

    Zur Seite "Instanzgruppen"

  2. Wählen Sie Ihr Projekt aus und klicken Sie auf Continue (Weiter).
  3. Sehen Sie sich in der Spalte Recommendation (Empfehlung) die Empfehlungen für einzelne verwaltete Instanzgruppen an. Sie können die Spalte auch nach der Höhe der geschätzten Einsparungen sortieren. Wenn sich neben den Instanzgruppen keine Empfehlungen befinden, hat Compute Engine keine Empfehlungen für Sie.

    Spalte

  4. Wenn die Instanzgruppe zwei Instanzenvorlagen hat, bietet Compute Engine Empfehlungen für jede der beiden Instanzvorlagen. Klicken Sie auf eine Empfehlung, um sich Empfehlungen für die jeweilige Instanzvorlage anzusehen.

    Empfehlungen für mehrere Vorlagen

gcloud

Geben Sie mit dem Befehl gcloud beta recommender recommendations list den VM Managed Instance Group Rightsizing Recommender an.

gcloud beta recommender recommendations list \
      --recommender=google.compute.instanceGroupManager.MachineTypeRecommender \
      --project [PROJECT_ID] \
      --location [ZONE] \
      --format=yaml

Beispiel:

gcloud beta recommender recommendations list \
    --recommender=google.compute.instanceGroupManager.MachineTypeRecommender \
    --project my-project \
    --location us-central1-a \
    --format=yaml

In der Antwort sind für jede Empfehlung die folgenden Felder enthalten:


---
content:
  ...
  operationGroups:
  - operations:
    - action: test
      path: /properties/machineType
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/my-old-template
      resourceType: compute.googleapis.com/InstanceTemplate
      value: n1-standard-4
    - action: copy
      path: /
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/$new-it-name
      resourceType: compute.googleapis.com/InstanceTemplate
      sourcePath: /
      sourceResource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/my-old-template
    - action: replace
      path: /name
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/$new-it-name
      resourceType: compute.googleapis.com/InstanceTemplate
      value: $new-it-name
    - action: replace
      path: /properties/machineType
      resource: //compute.googleapis.com/projects/my-project/global/instanceTemplates/$new-it-name
      resourceType: compute.googleapis.com/InstanceTemplate
      value: custom-2-5632
  - operations:
    - action: replace
      path: /versions/*/name
      pathValueMatchers:
        versions/*/instanceTemplate:
          matchesPattern: .*global/instanceTemplates/my-old-template
      resource: //compute.googleapis.com/projects/my-project/zones/us-central1-a/instanceGroupManagers/example-group
      resourceType: compute.googleapis.com/InstanceGroupManager
      value: global/instanceTemplates/$new-it-name
...
description: Save cost by changing machine type from n1-standard-4 to custom-2-5120.
...
name: projects/823742397239/locations/us-central1-a/recommenders/google.compute.instanceGroupManager.MachineTypeRecommender/recommendations/c50a1c41-7e65-417d-a32e-45248a2cb318
...

Weitere Informationen finden Sie in den Dokumenten zu Recommender.

API

Verwenden Sie als Recommender des Maschinentyps für verwaltete Instanzgruppen die Betaversion der Recommender API.

Wenn Sie die Authentifizierungsvoraussetzungen für den Aufruf von Google Cloud APIs noch nicht kennen, lesen Sie die Authentifizierungsübersicht.

Im folgenden Bash-Skript-Beispiel wird der Ablauf der Endnutzerauthentifizierung mit Anmeldedaten eines OAuth-Clients verwendet. Das Skript ruft mithilfe des Google oauth2l-Befehlszeilentools ein OAuth 2.0-Zugriffstoken ab und führt dann mit dem Token eine curl-Anfrage aus.

PROJECT_ID=my-project
LOCATION=us-central1-c
RECOMMENDER_ID=google.compute.instanceGroupManager.MachineTypeRecommender
OAUTH_JSON=~/client_secrets.json  # credentials for service account
OAUTH_HEADER="$(oauth2l header --json $OAUTH_JSON cloud-platform)"

curl -H "$OAUTH_HEADER" https://recommender.googleapis.com/beta/projects/$PROJECT_ID/locations/$LOCATION/recommenders/$RECOMMENDER_ID/recommendations

In der Antwort sind für jede Empfehlung die folgenden Felder enthalten:

  • name: Der Name der Empfehlung
  • description: Eine menschenlesbare Erläuterung der Empfehlung.
  • operationGroups: In Gruppen zusammengefasste Vorgänge, die Sie nacheinander ausführen können, um die Empfehlung anzuwenden.

Weitere Informationen finden Sie in den Dokumenten zu Recommender.

Wenn Sie eine neue verwaltete Instanzgruppe erstellen, werden die ersten Empfehlungen nach 24 Stunden angezeigt.

Anschließend werden die Empfehlungen den ganzen Tag hindurch in regelmäßigen Abständen aktualisiert.

Empfehlungen auf Instanzgruppen anwenden

Wenn Sie die Empfehlungen von Compute Engine übernehmen möchten, können Sie die Größe der verwalteten Instanzen direkt in der Console anpassen. Alternativ können Sie die Schritte zur Größenänderung auch manuell durchführen. Die Recommender API gibt eine Reihe von Größenänderungsvorgängen zurück. Weitere Informationen hierzu finden Sie unter Vorgangsgruppen.

Bei Anwendung einer Empfehlung auf eine verwaltete Instanzgruppe werden die folgenden Vorgänge ausgeführt:

  1. Die von der verwalteten Instanzgruppe verwendeten Instanzvorlagen werden geklont.
  2. Die geklonten Instanzvorlagen werden entsprechend den Empfehlungen und gewünschten Änderungen modifiziert.
  3. Die neue Vorlage wird mit dem Managed Instance Group Updater angewendet. Wenn die Instanzgruppe zwei Instanzvorlagen hat, gilt Folgendes:

    1. Sie können Empfehlungen nur für jeweils eine Instanzvorlage anwenden.
    2. Eine verwaltete Instanzgruppe kann maximal zwei Instanzvorlagen gleichzeitig unterstützen, sodass es nicht möglich ist, eine Empfehlung umzusetzen, während noch zwei weitere Instanzvorlagen in Gebrauch sind. Wenn Ihre Instanzgruppe nur eine Instanzvorlage hat, können Sie jedoch eine Empfehlung ausführen.

So passen Sie die Größe verwalteter Instanzen direkt über die Console an:

  1. Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.

    Zur Seite Instanzgruppen

    Klicken Sie auf den Empfehlungstext für die Instanzgruppe, die Sie aktualisieren möchten.

    Empfehlungsspalte auswählen.

  2. In einem Pop-up werden weitere Details und die Schaltflächen Abbrechen, Empfehlung verwerfen und Weiter eingeblendet. Klicken Sie auf Weiter, um die Empfehlung zu prüfen und anzuwenden.

  3. Auf dem nächsten Bildschirm wird die Empfehlung detailliert beschrieben. Wenn Sie mit der Empfehlung fortfahren, erstellt Compute Engine eine Instanzvorlage und aktualisiert alle Instanzen in der Instanzgruppe mit der neuen Vorlage.

  4. (Erweitert) Wenn Sie die Bereitstellung der neuen Vorlage für Ihre Instanzen ändern möchten, klicken Sie auf Deployment anpassen. Ein Bildschirm wird angezeigt.

    1. Unter Vorlage können Sie festlegen, ob die neue Vorlage auf alle Instanzen in der Instanzgruppe oder nur einen Teil davon angewendet werden soll.
    2. Unter Updatemodus können Sie mit der Option Proaktiv festlegen, dass Compute Engine Instanzen mithilfe der neuen Instanzvorlage aktiv löscht und neue erstellt. Bei Auswahl der Option Opportunistisch wendet Compute Engine die Aktualisierung nur an, wenn die Instanz auf andere Weise erstellt wird, beispielsweise durch eine Größenänderung oder die Aufnahme einer neuen Instanz in die Gruppe.
    3. Unter Maximal zu viel können Sie festlegen, wie viele temporäre zusätzliche Instanzen oberhalb der Zielgröße der verwalteten Instanzgruppe erstellt werden können. Je mehr Instanzen Sie zulassen, desto schneller wird Ihre Aktualisierung, allerdings auf Kosten zusätzlicher Instanzen. Der Standardwert ist eine zusätzliche Instanz.
    4. Unter Maximal nicht verfügbar können Sie festlegen, wie viele Instanzen während der Aktualisierung gleichzeitig offline sein können. In der Zahl sind auch Instanzen berücksichtigt, die aus anderen Gründen nicht verfügbar sind. So können zum Beispiel Instanzen nicht verfügbar sein, die gerade erstellt werden, während die Instanzgruppe vergrößert wird. Diese Instanzen werden in der Zahl berücksichtigt. In der Standardeinstellung darf jeweils eine Instanz nicht verfügbar sein.
    5. Unter Mindestwartezeit können Sie festlegen, wie viele Sekunden gewartet werden soll, bevor eine neu erstellte Instanz als aktualisiert markiert wird. Die Zeit läuft ab einer erfolgreichen Systemdiagnose. Mit diesem Feature steuern Sie die Rate, mit der die Instanzvorlage angewendet wird.
  5. Klicken Sie auf die Schaltfläche Speichern, um die Änderungen zu übernehmen

  6. Klicken Sie schließlich auf Bereitstellen, wenn Sie die Änderungen bereitstellen möchten.

Empfehlungen verwerfen

Empfehlungen, die Sie nicht mehr benötigen, können Sie in der Console verwerfen. Eine verworfene Empfehlung wird in den geschätzten Gesamteinsparungen nicht mehr berücksichtigt und in der Ansicht ausgegraut.

Das Verwerfen von Empfehlungen in der Console hat keinen Einfluss auf die Liste der Empfehlungen, die von der Recommender API zurückgegeben wird. Informationen zum Verwalten des Status der von der Recommender API zurückgegebenen Empfehlungen finden Sie unter API verwenden.

So verwerfen Sie eine einzelne Empfehlung aus der Console:

  1. Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.

    Zur Seite Instanzgruppen

    Klicken Sie auf den Empfehlungstext, den Sie verwerfen möchten. In einem Pop-up werden weitere Details und die Schaltfläche Empfehlung verwerfen eingeblendet.
  2. Klicken Sie auf Empfehlung verwerfen.

Wenn Sie alle Empfehlungen verwerfen möchten, klicken Sie auf der Seite Instanzgruppen auf die Schaltfläche Alle verwerfen.

Empfehlungen verwerfen.

So stellen Sie eine Empfehlung in der Console wieder her:

  1. Klicken Sie auf der Seite Instanzgruppen auf die ausgegraute Empfehlung, die Sie wiederherstellen möchten.

    Verworfene Empfehlung.

  2. In einem Pop-up werden weitere Details und die Schaltfläche Empfehlung wiederherstellen eingeblendet.

  3. Klicken Sie auf Empfehlung wiederherstellen.

Monitoring-Agent für genauere Empfehlungen nutzen

Stackdriver Monitoring bietet einen Monitoring-Agent, der zusätzliche Messwerte Ihrer VM-Instanz zu Laufwerk, CPU, Netzwerk und Prozessen erfasst. Sie können den Monitoring-Agent auf den VM-Instanzen installieren, damit er auf die Systemressourcen und Anwendungsdienste zugreifen kann, um diese Daten zu erfassen.

Wenn der Monitoring-Agent installiert ist und in einer VM-Instanz ausgeführt wird, werden die vom Agent erfassten CPU- und Speichermesswerte automatisch zur Berechnung der Größenempfehlungen verwendet. Die Agent-Messwerte, die vom Monitoring-Agent zur Verfügung gestellt werden, liefern bessere Daten zur Ressourcennutzung der Instanz als die Compute Engine-Standardmesswerte. Dadurch kann das Empfehlungssystem die Ressourcenanforderungen besser abschätzen und präzisere Empfehlungen geben.

Informationen zur Installation des Agents finden Sie unter Monitoring-Agent installieren.

Weitere Informationen