Empfehlungen für Maschinentypen auf 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 verfügbaren Maschinentypen für VM-Instanzen finden Sie in der Dokumentation zu Maschinentypen.

Empfehlungen für Maschinentypen werden auch als Empfehlungen zur Größenanpassung bezeichnet.

Vorbereitung

  • Lesen Sie die Dokumentation zur Google Cloud Console.
  • 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.

    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. Install the Google Cloud CLI, then initialize it by running the following command:

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

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

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Weitere Informationen finden Sie unter Für die Verwendung von REST authentifizieren in der Dokumentation zur Google Cloud-Authentifizierung.

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

Empfehlungen für Maschinentypen sind kostenlos verfügbar. Wenn Sie eine Größenempfehlung für den Maschinentyp Ihrer Instanzen übernehmen, wird Ihnen der ausgewählte Maschinentyp in Rechnung gestellt.

Anwendungsfälle

Sie können die Empfehlungen für Maschinentypen für folgende 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 die Empfehlungen für Maschinentypen für das Skalieren Ihrer Maschinentypen nutzen, während die Anzahl der VM-Instanzen konstant bleibt.
  • Arbeitslasten, die sich nicht dynamisch an eine wechselnde Anzahl von Instanzen anpassen lassen, beispielsweise Arbeitslasten, die sich nicht für Autoscaling eignen.

Empfehlungen für Maschinentypen sollten in folgenden Fällen nicht verwendet werden:

  • Ihre Arbeitslasten haben sehr kurze CPU-Spitzen. Den Empfehlungen für Maschinentypen 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.

Funktionsweise der Empfehlungen für Maschinentypen

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 einer verwalteten Instanzgruppe einen einzigen optimalen Maschinentyp zu empfehlen, generiert Compute Engine eine Empfehlung für den Standardmaschinentyp für jede Instanz und wählt nach der Ausreißerbereinigung einen Maschinentyp aus, der einzelne VM-Instanzen nicht 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.

Empfehlungen für Maschinentypen aufrufen

Compute Engine stellt Empfehlungen über die Google Cloud Console bereit. Empfehlungen für Maschinentypen können Sie über den Recommender entweder mit der gcloud CLI oder mit REST aufrufen.

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 "Empfehlungen"

  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 recommender recommendations list den VM Managed Instance Group Rightsizing Recommender an.

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

Beispiel:

gcloud 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.

REST

Verwenden Sie die Recommender API mit der Recommender-ID des MIG-Maschinentyps.

PROJECT_ID=my-project
LOCATION=us-central1-c
RECOMMENDER_ID=google.compute.instanceGroupManager.MachineTypeRecommender

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  https://recommender.googleapis.com/v1/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, deshalb können Sie keine Empfehlung anwenden, während noch zwei weitere Instanzvorlagen in Gebrauch sind. Sie können jedoch eine Empfehlung anwenden, wenn Ihre Instanzgruppe nur eine Instanzvorlage hat.

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

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

    Zur Seite Instanzgruppen

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

    Empfehlungsspalte auswählen.

  3. 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.

  4. Auf der Seite Empfehlung prüfen wird die Empfehlung detailliert beschrieben. Wenn Sie mit der Empfehlung fortfahren, aktualisiert Compute Engine alle Instanzen in der Instanzgruppe mit der alten Vorlage auf die neue Vorlage.

  5. (Erweitert) Wenn Sie die Bereitstellung der neuen Vorlage für Ihre Instanzen ändern möchten, klicken Sie auf Deployment anpassen. Der Bildschirm Bereitstellungskonfiguration wird geöffnet.

    1. Wenn Sie Instanzen mit der neuen Instanzvorlage aktiv löschen und erstellen möchten, wählen Sie Automatisch aus. Wenn Sie die Aktualisierung nur anwenden möchten, wenn die Instanz auf andere Weise erstellt wird, z. B. durch eine Größenanpassung oder wenn eine neue Instanz zur Gruppe hinzugefügt wird, wählen Sie Selektiv aus.
    2. Wenn Sie die automatische Aktualisierung festlegen, wählen Sie aus, ob Instanznamen beim Ersetzen von Instanzen beibehalten werden sollen.
      • Wenn Sie Instanznamen beibehalten möchten, wählen Sie unter Temporäre zusätzliche Instanzen aus, 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.
    3. Wählen Sie unter Maximale Anzahl nicht verfügbarer Instanzen aus, wie viele Instanzen während dieser 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.
    4. Optional: Maximieren Sie Erweiterte Optionen einblenden. Wählen Sie unter Mindestwartezeit aus, 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.
  6. Klicken Sie auf Speichern, um die Änderungen anzuwenden.

  7. 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 Konsole:

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

    Zur Seite Instanzgruppen

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

  3. Klicken Sie auf Ablehnen.

So stellen Sie eine Empfehlung in der Konsole wieder her:

  1. Klicken Sie auf der Seite Instanzgruppen auf den ausgegrauten Empfehlungstext, den Sie wiederherstellen möchten.

    Verworfene Empfehlung.

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

  3. Klicken Sie auf Wiederherstellen.

Monitoring-Agent für genauere Empfehlungen nutzen

Cloud Monitoring bietet einen Monitoring-Agent, der zusätzliche Messwerte Ihrer VM-Instanzen 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 Empfehlungen für Maschinentypen 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.

Weitere Informationen zur Installation des Agents finden Sie unter Installation des Cloud Monitoring-Agents.

Nächste Schritte