Basierend auf Stackdriver Monitoring-Messwerten skalieren

Das Autoscaling kann so eingerichtet werden, dass es basierend auf den folgenden Messwerttypen skaliert:

  • Instanzmesswerte, bei denen der ausgewählte Messwert für jede Instanz in einer verwalteten Instanzgruppe Daten zur Ressourcenauslastung bereitstellt.
  • Gruppenmesswerte (Beta), bei denen die Gruppe auf Basis eines Messwerts skaliert wird, der für die gesamte verwaltete Instanzgruppe gilt.

Die Messwerte können entweder Standardmesswerte sein, die vom Stackdriver Monitoring-Dienst bereitgestellt werden, oder benutzerdefinierte Stackdriver Monitoring-Messwerte, die Sie erstellen.

Vorbereitung

Instanzmesswerte

Instanzmesswerte beziehen sich auf einzelne Instanzen einer Gruppe. Sie informieren über die Ressourcenauslastung der Instanzen innerhalb der verwalteten Instanzgruppe. Bei Instanzmesswerten kann die Instanzgruppe nicht unter eine Größe von 1 skaliert werden, da Autoscaling für mindestens eine Instanz Messwerte benötigt, um ausgeführt werden zu können.

Wenn Sie anhand anderer Stackdriver-Messwerte skalieren möchten, die nicht für einzelne Instanzen spezifisch sind, oder Ihre Instanzgruppen manchmal auf null Instanzen reduzieren, können Sie die Instanzen auch auf Basis von Gruppenmesswerten skalieren.

Standardmesswerte für einzelne Instanzen

Stackdriver Monitoring liefert einige Standardmesswerte für die Überwachung von VM-Instanzen. Nicht alle sind gültige Auslastungsmesswerte, die mit Autoscaling verwendet werden können.

Ein gültiger Auslastungsmesswert für die Skalierung muss die folgenden Kriterien erfüllen:

  • Der Standardmesswert muss Daten für die überwachte Ressource gce_instance enthalten. Mit dem API-Aufruf timeSeries.list lässt sich überprüfen, ob ein bestimmter Messwert Daten für diese Ressource exportiert.

  • Der Standardmesswert gibt an, wie stark eine Instanz ausgelastet ist. Der Messwert steigt oder sinkt proportional zur Anzahl der VM-Instanzen in der Gruppe.

Der folgende Messwert ist ungültig, weil sich der Wert nicht auf der Grundlage der Auslastung ändert und Autoscaling den Wert nicht zur proportionalen Skalierung verwenden kann:

compute.googleapis.com/instance/cpu/reserved_cores

Nachdem Sie einen Standardmesswert ausgewählt haben, können Sie das Autoscaling auf Basis dieses Messwerts konfigurieren.

Benutzerdefinierte Messwerte

Mit Stackdriver Monitoring ist es möglich, benutzerdefinierte Messwerte zu erstellen und Sie können dem Stackdriver Monitoring-Dienst eigene Monitoringdaten hinzufügen. So erhalten Sie parallel Zugriff auf gängige Cloud Platform-Daten und Ihre eigenen Monitoringdaten mit einer bekannten Datenstruktur und einer einheitlichen Abfragesyntax. Wenn Sie einen benutzerdefinierten Messwert haben, können Sie auswählen, dass die Skalierung auf der Grundlage der Daten dieses Messwerts erfolgt.

Voraussetzungen

Die folgenden Voraussetzungen müssen erfüllt sein, um benutzerdefinierte Messwerte verwenden zu können:

  • Sie haben einen benutzerdefinierten Messwert erstellt. In der Dokumentation zu benutzerdefinierten Messwerten finden Sie weitere Informationen zum Erstellen von benutzerdefinierten Messwerten.
  • Sie haben Ihre verwaltete Instanzgruppe eingerichtet, um den benutzerdefinierten Messwert aus allen Instanzen in die verwaltete Instanzgruppe zu exportieren.

Gültigen benutzerdefinierten Messwert auswählen

Nicht alle benutzerdefinierten Messwerte können von Autoscaling verwendet werden. Ein gültiger benutzerdefinierter Messwert muss folgende Properties haben:

  • Er ist ein Instanzmesswert. Der Messwert muss Daten einzelner Compute Engine-Instanzen separat exportieren.
  • Die exportierten Instanzwerte müssen mit der überwachten Ressource gce_instance verknüpft werden, die die folgenden Labels enthält:
    • zone mit dem Namen der Zone, in der sich die Instanz befindet.
    • instance_id mit dem Wert der eindeutigen numerischen ID der Instanz.
  • Der Messwert muss mindestens alle 60 Sekunden Daten exportieren. Sie können Daten auch häufiger als alle 60 Sekunden exportieren, damit Autoscaling in der Lage ist, schneller zu antworten und die Änderungen zu laden. Wenn Sie Ihre Daten seltener als alle 60 Sekunden exportieren, ist Autoscaling möglicherweise nicht in der Lage, schnell genug zu antworten und Änderungen zu laden.
  • Bei dem Messwert muss es sich um einen gültigen Auslastungsmesswert handeln. Daten des Messwerts müssen also verwendet werden können, um die Anzahl virtueller Maschinen proportional nach oben oder nach unten zu skalieren.
  • Der Messwert muss int64- oder double-Datenwerte exportieren.

Damit Autoscaling mit Ihrem benutzerdefinierten Messwert funktioniert, müssen Sie Daten für diesen benutzerdefinierten Messwert von allen Instanzen der verwalteten Instanzgruppe exportieren.

Hinweis: Sie können die numerische ID einer Instanz abrufen, indem Sie in der Instanz das ID-Attribut des Metadatenservers anfordern. Sie können hierfür beispielsweise die Programmiersprache Curl verwenden:
curl http://metadata.google.internal/computeMetadata/v1/instance/id -H Metadata-Flavor:Google
Unter Metadatenserver erfahren Sie mehr über den Metadatenserver.

Autoscaling auf Basis instanzspezifischer Monitoringmesswerte konfigurieren

Die Einrichtung von Autoscaling auf Basis von Standardmesswerten und benutzerdefinierten Messwerten ist identisch. Sie müssen die Messwert-ID, den gewünschten Zielnutzungsgrad und den Nutzungszieltyp angeben, um ein Autoscaling zu erstellen, das Stackdriver Monitoring-Messwerte verwendet. Diese Properties werden im Folgenden kurz erläutert.

  • Messwert-ID: Der Name des zu verwendenden Messwerts. Wenn es sich um einen benutzerdefinierten Messwert handelt, haben Sie diesen Namen bereits bei dessen Erstellung angegeben. Die ID hat folgendes Format:

    custom.googleapis.com/path/to/metric
    

    Weitere Informationen zum Erstellen, Durchsuchen und Lesen von Messwerten finden Sie im Abschnitt Benutzerdefinierte Messwerte verwenden.

  • Zielnutzungsgrad: Der Zielnutzungsgrad, der von diesem Autoscaling für den Messwert beibehalten werden soll. Dieser Wert muss eine positive Ziffer sein. Sowohl 24.5 als auch 1100 sind beispielsweise gültige Werte. Dies ist anders als bei der CPU-Auslastung und der Auslastung bei Lastenausgleichsmodulen, wo es sich bei dem Wert um eine Gleitkommazahl zwischen 0,0 und 1,0 handeln muss.

  • Zieltyp: Der Zieltyp gibt an, wie das Autoscaling die von den Instanzen erfassten Daten verarbeitet. Mögliche Zieltypen:

    • GAUGE: Das Autoscaling vergleicht den durchschnittlichen Wert der in den letzten Minuten gesammelten Daten mit dem Zielauslastungswert des Autoscalings.
    • DELTA_PER_MINUTE: Das Autoscaling berechnet die durchschnittliche Wachstumsrate pro Minute und vergleicht sie mit der Zielauslastung.
    • DELTA_PER_SECOND: Das Autoscaling berechnet die durchschnittliche Wachstumsrate pro Sekunde und vergleicht sie mit der Zielauslastung.

    Wenn Sie die gewünschte Zielauslastung in Sekunden angegeben haben, sollten Sie DELTA_PER_SECOND verwenden. Haben Sie die Zielauslastung in Minuten angegeben, sollten Sie DELTA_PER_MINUTE verwenden, damit vom Autoscaling präzise Vergleiche durchgeführt werden können.

Console

Die Anweisungen zur Autoscaling-Konfiguration unterscheiden sich für regional bzw. in einer einzelnen Zone verwaltete Instanzgruppen. Regional verwaltete Instanzgruppen bieten keine Filterung von Instanzmesswerten.

So konfigurieren Sie Autoscaling für eine regional (mehrere Zonen) verwaltete Instanzgruppe:

  1. Gehen Sie zu der Seite Instanzgruppen.
  2. Erstellen Sie eine Instanzgruppe, sofern noch keine vorhanden ist. Klicken Sie andernfalls auf einen Namen in der Instanzgruppenliste, um die Seite mit den Details zu öffnen. Bei der Gruppe muss es sich um eine regionale Gruppe handeln.
  3. Klicken Sie auf der Seite mit den Instanzgruppendetails auf Gruppe bearbeiten.
  4. Wählen Sie unter Autoscaling die Option Aktiviert aus, um die Funktion zu aktivieren.
  5. Wählen Sie unter Automatisch skalieren auf der Grundlage von die Option Stackdriver-Monitoringmesswert aus.
  6. Geben Sie unter Messwert-ID den Namen des Messwerts im folgenden Format ein: example.googleapis.com/path/to/metric.
  7. Geben Sie unter Ziel den Zielwert ein.
  8. Wählen Sie unter Zieltyp den zum Messwert passenden Zieltyp aus.
  9. Speichern Sie alle Einstellungen.

So konfigurieren Sie Autoscaling für eine in einer einzelnen Zone verwaltete Instanzgruppe:

  1. Gehen Sie zu der Seite Instanzgruppen.
  2. Erstellen Sie eine Instanzgruppe, sofern noch keine vorhanden ist. Klicken Sie andernfalls auf einen Namen in der Instanzgruppenliste, um die Seite mit den Details zu öffnen. Bei der Instanzgruppe muss es sich um eine einzelne Zone handeln.
  3. Klicken Sie auf der Seite mit den Instanzgruppendetails auf Gruppe bearbeiten.
  4. Wählen Sie unter Autoscaling die Option Aktiviert aus, um die Funktion zu aktivieren.
  5. Wählen Sie unter Automatisch skalieren auf der Grundlage von die Option Stackdriver-Monitoringmesswert aus.
  6. Wählen Sie unter Umfang des Messwertexports die Option Zeitachsen pro Instanz aus, um Autoscaling auf der Basis von Instanzmesswerten zu konfigurieren.
  7. Geben Sie unter Messwert-ID den Namen des Messwerts im folgenden Format ein: example.googleapis.com/path/to/metric.
  8. Wählen Sie optional unter Zusätzlicher Filterausdruck einen Filter aus, wenn Sie einzelne Werte aus Messwerten mit mehreren Streams oder Labels herausfiltern möchten. Weitere Informationen finden Sie unter Instanzmesswerte filtern.
  9. Geben Sie unter Nutzungsziel den Zielwert ein.
  10. Prüfen Sie unter Nutzungszieltyp, dass der Zieltyp zum Messwerttyp passt.
  11. Speichern Sie alle Einstellungen.

gcloud

In gcloud wird durch den folgenden Befehl beispielsweise ein Autoscaling erstellt, das den Zieltyp GAUGE verwendet. Neben dem Parameter --custom-metric-utilization muss beim Erstellen eines Autoscalings auch der Parameter --max-num-replicas verwendet werden:

gcloud compute instance-groups managed set-autoscaling example-managed-instance-group \
    --custom-metric-utilization metric=example.googleapis.com/path/to/metric,utilization-target-type=GAUGE,utilization-target=10 \
    --max-num-replicas 20 \
    --cool-down-period 90

Optional können Sie das Flag --cool-down-period verwenden, das dem Autoscaling vorgibt, wie viele Sekunden nach dem Starten einer neuen virtuellen Maschine gewartet werden muss, bevor das Autoscaling mit dem Erfassen von Nutzungsinformationen aus der virtuellen Maschine beginnt. Dadurch wird die möglicherweise zur Initialisierung der virtuellen Maschine erforderliche Zeit berücksichtigt, während der die gesammelten Auslastungsdaten für das Autoscaling nicht verlässlich sind. Die Standard-Cool-down-Zeit beträgt 60 Sekunden.

Verwenden Sie für verwaltete Instanzgruppen mit mehreren Zonen das Flag --region, um anzugeben, wo sich die Instanzgruppe befindet. Beispiel:

gcloud compute instance-groups managed set-autoscaling example-managed-instance-group \
    --custom-metric-utilization metric=example.googleapis.com/path/to/metric,utilization-target-type=GAUGE,utilization-target=10 \
    --max-num-replicas 20 \
    --cool-down-period 90 \
    --region us-central1

Eine Liste der verfügbaren Befehle und Flags in gcloud finden Sie in der Referenz zu gcloud.

API

Hinweis: Auch wenn das Autoscaling eine Funktion verwalteter Instanzgruppen ist, handelt es sich doch um eine separate API-Ressource. Beachten Sie dies, wenn Sie API-Anfragen für das Autoscaling erstellen.

Stellen Sie in der API eine POST-Anfrage an die folgende URL und ersetzen Sie myproject durch Ihre Projekt-ID und us-central1-f durch die Zone Ihrer Wahl:

POST https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/autoscalers/

Der Anfragetext muss die Felder name, target und autoscalingPolicy enthalten. Geben Sie in autoscalingPolicy die Properties maxNumReplicas und customMetricUtilizations an.

Optional können Sie den Parameter coolDownPeriodSec verwenden, der dem Autoscaling vorgibt, wie viele Sekunden nach dem Starten einer neuen Instanz gewartet werden muss, bevor mit dem Erfassen der Nutzungsdaten begonnen wird. Nach Ablauf der Cool-down-Zeit beginnt das Autoscaling mit dem Erfassen von Auslastungsinformationen aus der neuen Instanz und bestimmt, ob die Gruppe zusätzliche Instanzen benötigt. Dadurch wird die möglicherweise zur Initialisierung der Instanz erforderliche Zeit berücksichtigt, während der die erfassten Auslastungsdaten für das Autoscaling nicht verlässlich sind. Die Standard-Cool-down-Zeit beträgt 60 Sekunden.

POST https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/autoscalers

{
 "name": "example-autoscaler",
 "target": "zones/us-central1-f/instanceGroupManagers/example-managed-instance-group",
 "autoscalingPolicy": {
  "maxNumReplicas": 10,
  "coolDownPeriodSec": 90,
  "customMetricUtilizations": [
   {
    "metric": "example.googleapis.com/some/metric/name",
    "utilizationTarget": 10,
    "utilizationTargetType": "GAUGE"
   }          ]
 }
}

Instanzmesswerte filtern

Sie können Stackdriver-Instanzmesswerte filtern, um in einer einzelnen Zone verwaltete Instanzgruppen anhand von Einzelwerten aus Messwerten zu skalieren, die mehrere Streams oder Labels enthalten.

Voraussetzungen für das Filtern von Instanzmesswerten

Die Filterfunktionen von Autoscaling sind mit der Filtersyntax von Stackdriver Monitoring kompatibel. Zur Filterung von Instanzmesswerten gelten folgende Voraussetzungen:

  • Selektoren können nur mit dem Operator AND verknüpft werden.
  • Es kann lediglich der direkte Gleichheitsvergleichsoperator = verwendet werden, aber nur ohne Funktionen. Die Funktion startswith() kann zum Beispiel nicht mit dem Vergleichsoperator = verwendet werden.
  • Es dürfen keine Selektoren resource.type oder resource.label.* festgelegt werden. Instanzmesswerte verwenden immer alle Instanzressourcen in der Gruppe.
  • Für ein optimales Ergebnis sollte der Filter so spezifisch sein, dass für jede Instanz eine einzelne Zeitachse zurückgegeben wird. Gibt der Filter mehrere Zeitachsen zurück, werden sie addiert.

Autoscaling für das Filtern von Messwerten konfigurieren

Sie können die Google Cloud Platform Console, das in der Betaphase befindliche gcloud-Befehlszeilentool oder die Compute Engine Beta API verwenden, um Messwertfilter für das Autoscaling einer verwalteten Instanzgruppe hinzuzufügen, die sich in einer einzelnen Zone befindet.

Console

Das Erstellen eines Autoscalings, das einen Instanzmesswert filtert, verläuft fast analog zum Erstellen eines normalen instanzspezifischen Autoscalings. Sie geben lediglich noch einen Messwertfilter an. Beispiel: Der Messwert compute.googleapis.com/instance/network/received_bytes_count enthält die Labels instance_name und loadbalanced. So filtern Sie nach dem booleschen Wert loadbalanced:

  1. Gehen Sie zu der Seite Instanzgruppen.
  2. Erstellen Sie eine Instanzgruppe, sofern noch keine vorhanden ist. Klicken Sie andernfalls auf einen Namen in der Instanzgruppenliste, um die Seite mit den Details zu öffnen. Bei der Instanzgruppe muss es sich um eine einzelne Zone handeln.
  3. Klicken Sie auf der Seite mit den Instanzgruppendetails auf Gruppe bearbeiten.
  4. Wählen Sie unter Autoscaling die Option Aktiviert aus, um die Funktion zu aktivieren.
  5. Wählen Sie unter Automatisch skalieren auf der Grundlage von die Option Stackdriver-Monitoringmesswert aus.
  6. Wählen Sie unter Umfang des Messwertexports die Option Zeitachsen pro Instanz aus, um Autoscaling auf der Basis von Instanzmesswerten zu konfigurieren.
  7. Geben Sie unter Messwert-ID den Namen des Messwerts ein. Zum Beispiel compute.googleapis.com/instance/network/received_bytes_count.
  8. Geben Sie unter Zusätzlicher Filterausdruck einen Filter ein. Zum Beispiel 'metric.label.loadbalanced = true'.
  9. Speichern Sie alle Einstellungen.

gcloud

Das Erstellen eines Autoscalings, das einen Instanzmesswert filtert, verläuft fast analog zum Erstellen eines normalen instanzspezifischen Autoscalings. Sie geben lediglich noch einen Messwertfilter und Flags für das Nutzungsziel und den Zieltyp an. Beispiel: Der Messwert compute.googleapis.com/instance/network/received_bytes_count enthält die Labels instance_name und loadbalanced. Geben Sie das Filter-Flag --stackdriver-metric-filter mit dem Wert 'metric.label.loadbalanced = true' an, um basierend auf dem booleschen Wert loadbalanced zu filtern. Die Flags für das Nutzungsziel und den Zieltyp geben Sie einzeln an.

gcloud beta compute instance-groups managed set-autoscaling example-managed-instance-group \
    --update-stackdriver-metric=compute.googleapis.com/instance/network/received_bytes_count \
    --stackdriver-metric-utilization-target-utilization-target=10 \
    --stackdriver-metric-utilization-target-type=DELTA_PER_SEC \
    --stackdriver-metric-filter='metric.label.loadbalanced = true' \
    --max-num-replicas 20 \
    --cool-down-period 90

In diesem Beispiel verwendet das Autoscaling nur die loadbalanced-Traffic-Daten als Teil des Nutzungsziels.

Eine vollständige Liste der verfügbaren Befehle und Flags in gcloud finden Sie in der Referenz zur Betaversion von gcloud.

API

Hinweis: Auch wenn das Autoscaling eine Funktion verwalteter Instanzgruppen ist, handelt es sich doch um eine separate API-Ressource. Beachten Sie dies, wenn Sie API-Anfragen für das Autoscaling erstellen.

Das Erstellen eines Autoscalings, das einen Instanzmesswert filtert, verläuft fast analog zum Erstellen eines normalen instanzspezifischen Autoscalings. Sie geben lediglich noch einen Messwertfilter und Flags für das Nutzungsziel und den Zieltyp an. Beispiel: Der Messwert compute.googleapis.com/instance/network/received_bytes_count enthält die Labels instance_name und loadbalanced. Geben Sie das Filter-Flag filter mit dem Wert "metric.label.loadbalanced = true" an, um basierend auf dem booleschen Wert loadbalanced zu filtern.

Stellen Sie in der API eine POST-Anfrage an die folgende URL und ersetzen Sie myproject durch Ihre Projekt-ID und us-central1-f durch die Zone Ihrer Wahl: Der Anfragetext muss die Felder name, target und autoscalingPolicy enthalten. Geben Sie in autoscalingPolicy die Properties maxNumReplicas und customMetricUtilizations an.

POST https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/autoscalers

{
 "name": "example-autoscaler",
 "target": "zones/us-central1-f/instanceGroupManagers/example-managed-instance-group",
 "autoscalingPolicy": {
  "maxNumReplicas": 10,
  "coolDownPeriodSec": 90,
  "customMetricUtilizations": [
   {
    "metric": "compute.googleapis.com/instance/network/received_bytes_count",
    "filter": "metric.label.loadbalanced = true",
    "utilizationTarget": 10,
    "utilizationTargetType": "DELTA_PER_SEC"
   }
  ]
 }
}

In diesem Beispiel verwendet das Autoscaling nur die loadbalanced-Traffic-Daten als Teil des Nutzungsziels.

Gruppenmesswerte

Gruppenmesswerte ermöglichen Autoscaling auf Basis eines Standard- oder benutzerdefinierten Messwerts, der keine instanzspezifischen Auslastungsdaten exportiert. Stattdessen wird die Gruppe basierend auf einem Wert skaliert, der für die gesamte Gruppe gilt und angibt, wie viel Arbeit für die Gruppe verfügbar ist oder wie beschäftigt die Gruppe ist. Die Gruppe wird basierend auf der Fluktuation dieses Gruppenmesswerts und der von Ihnen definierten Konfiguration skaliert.

Wenn Sie Gruppenmesswerte für das Autoscaling verwenden, müssen Sie festlegen, wie das Autoscaling Instanzen relativ zum Messwert bereitstellen soll:

  • Instanzzuweisung: Mit einer Instanzzuweisung geben Sie an, dass das Autoscaling Instanzen abhängig davon einfügen oder entfernen soll, wie viel Arbeit für jede Instanz verfügbar ist. Mit dem Parameter geben Sie an, wie viel Arbeit eine Instanz voraussichtlich verarbeiten kann. Der Wert 2 bedeutet zum Beispiel, dass jeder Instanz zwei Arbeitseinheiten zugewiesen werden. Bei 0.5 wird jeder Instanz nur eine halbe Arbeitseinheit zugewiesen. Das Autoscaling fügt der verwalteten Instanzgruppe ausreichend Instanzen hinzu, um sicherzugehen, dass genügend Instanzen vorhanden sind, um die verfügbare Arbeit, wie im Messwert angegeben, zu erledigen. Lautet der Messwert 10 und Sie haben jeder Instanz 0.5 Arbeitseinheiten zugewiesen, erstellt Autoscaling 20 Instanzen in der verwalteten Instanzgruppe. Die Skalierung mit einer Instanzzuweisung ermöglicht es der Instanzgruppe, auf 0 Instanzen zu schrumpfen, wenn der Messwert auf 0 absinkt, bzw. hochzuskalieren, wenn der Wert wieder über 0 ansteigt. Das folgende Diagramm zeigt die proportionale Beziehung zwischen dem Messwert und der Anzahl der Instanzen bei der Skalierung mit einer Instanzzuweisungsrichtlinie. Diagramm, das die proportionale Beziehung zwischen dem Messwert und der Anzahl der Instanzen zeigt
  • Nutzungsziel: Geben Sie ein Nutzungsziel an, wenn Sie möchten, dass Autoscaling einen Messwert durch Hinzufügen oder Entfernen von Instanzen auf einem bestimmten Wert hält. Liegt der Messwert über dem angegebenen Ziel, fügt Autoscaling schrittweise Instanzen hinzu, bis der Messwert auf den Zielwert absinkt. Liegt der Messwert unter dem angegebenen Ziel, entfernt Autoscaling schrittweise Instanzen, bis der Messwert auf den Zielwert ansteigt. Bei der Skalierung mit einem Nutzungsziel kann die Gruppe nicht auf 0 Instanzen verkleinert werden. Das folgende Diagramm zeigt, wie Autoscaling Instanzen als Reaktion auf einen Messwert hinzufügt und entfernt, um das Nutzungsziel aufrechtzuerhalten. Diagramm, das zeigt, wie Autoscaling Instanzen hinzufügt und entfernt, um ein bestimmtes Nutzungsziel zu erreichen

Die Anwendungsfälle der beiden Optionen:

  • Instanzzuweisung: Die Größe der verwalteten Instanzgruppen basierend auf der Anzahl unbestätigter Nachrichten in einem Google Pub/Sub-Abo oder dem QPS-Gesamtwert (Abfragen pro Sekunde) eines Netzwerkendpunkts skalieren.
  • Nutzungsziel: Die Größe der verwalteten Instanzgruppen basierend auf einem Nutzungsziel für einen benutzerdefinierten Messwert skalieren, bei dem es sich nicht um einen instanzspezifischen Standardmesswert zur CPU- oder Speicherauslastung handelt. Sie können die Gruppe beispielsweise basierend auf einem benutzerdefinierten Latenzmesswert skalieren.

Wenn Sie Autoscaling mit Gruppenmesswerten konfigurieren und eine Instanzzuweisung angeben, können Ihre Instanzgruppen auf 0 Instanzen skalieren. Gibt es laut Ihrem Messwert keine Arbeit für Ihre Instanzgruppen, wird die Gruppe auf 0 Instanzen reduziert, bis der Messwert erkennt, dass neue Arbeit verfügbar ist. Im Gegensatz zur gruppenbasierten Instanzzuweisung werden für das instanzbasierte Autoscaling von mindestens einer Instanz Messwerte zur Ressourcenauslastung benötigt, weshalb die Gruppe nicht unter eine Größe von 1 skaliert werden kann.

Gruppenmesswerte filtern

Sie können Stackdriver-Gruppenmesswerte filtern, um verwaltete Instanzgruppen anhand von Einzelwerten aus Messwerten zu skalieren, die mehrere Streams oder Label enthalten.

Voraussetzungen für das Filtern von Gruppenmesswerten

Die Filterfunktionen von Autoscaling sind mit der Filtersyntax von Stackdriver Monitoring kompatibel. Zur Filterung von Gruppenmesswerten gelten die folgenden Voraussetzungen:

  • Selektoren können nur mit dem Operator AND verknüpft werden.
  • Der direkte Gleichheitsvergleichsoperator = kann nur ohne Funktionen für Selektoren verwendet werden.
  • Sie können im Filter den Messwerttyp-Selektor metric.type = "..." angeben und auch das ursprüngliche metric-Feld einschließen. Optional können Sie nur das metric-Feld verwenden. Der Messwert muss diese Anforderungen erfüllen:
    • Der Messwert muss an mindestens einer Stelle angegeben werden.
    • Der Messwert kann an beiden Stellen angegeben werden, muss aber gleich sein.
  • Sie müssen den Selektor resource.type angeben, können ihn jedoch nicht auf gce_instance festlegen, wenn Sie auf Basis von Gruppenmesswerten skalieren möchten.
  • Für ein optimales Ergebnis sollte der Filter so spezifisch sein, dass für jede Gruppe eine einzelne Zeitachse zurückgegeben wird. Gibt der Filter mehrere Zeitachsen zurück, werden sie addiert.

Autoscaling für gruppenbasierte Monitoringmesswerte konfigurieren

Sie können die Google Cloud Platform Console, das in der Betaphase befindliche gcloud-Befehlszeilentool oder die Compute Engine Beta API verwenden, um das Autoscaling mit gruppenbasierten Messwerten einer in einer einzelnen Zone verwalteten Instanzgruppe zu verwenden.

Console

  1. Gehen Sie zu der Seite Instanzgruppen.
  2. Erstellen Sie eine Instanzgruppe, sofern noch keine vorhanden ist. Klicken Sie andernfalls auf einen Namen in der Instanzgruppenliste, um die Seite mit den Details zu öffnen. Bei der Instanzgruppe muss es sich um eine einzelne Zone handeln.
  3. Klicken Sie auf der Seite mit den Instanzgruppendetails auf Gruppe bearbeiten.
  4. Wählen Sie unter Autoscaling die Option Aktiviert aus, um die Funktion zu aktivieren.
  5. Wählen Sie unter Automatisch skalieren auf der Grundlage von die Option Stackdriver-Monitoringmesswert aus.
  6. Wählen Sie unter Umfang des Messwertexports die Option Einzelne Zeitachse pro Gruppe aus.
  7. Geben Sie unter Messwert-ID den Namen des Messwerts im folgenden Format ein: example.googleapis.com/path/to/metric.
  8. Geben Sie den Messwertressourcentyp an.
  9. Geben Sie einen zusätzlichen Filterausdruck an, um einzelne Werte aus Messwerten mit mehreren Streams oder Labels zu verwenden. Der Filter muss die Voraussetzungen für die Autoscaling-Filterung erfüllen.
  10. Wählen Sie unter Skalierungsrichtlinie entweder Instanzzuweisung oder Nutzungsziel aus.
    • Wenn Sie eine Instanzzuweisungsrichtlinie auswählen, geben Sie mit einem Wert für Zuweisung einzelner Instanzen an, wie viel Arbeit den Instanzen in der verwalteten Instanzgruppe zugewiesen wird. Der Wert 2 bedeutet zum Beispiel, dass jeder Instanz zwei Arbeitseinheiten zugewiesen werden. Autoscaling hält genügend Instanzen bereit, um die (laut Messwert) verfügbare Arbeit zu verarbeiten. Lautet der Messwert 10 und Sie haben jeder Instanz 2 Arbeitseinheiten zugewiesen, erstellt Autoscaling 5 Instanzen in der verwalteten Instanzgruppe.
    • Wenn Sie eine Nutzungszielrichtlinie auswählen:
      • Geben Sie einen Wert für das Nutzungsziel an, das für den Messwert steht, den Autoscaling versuchen wird, einzuhalten.
      • Wählen Sie den Nutzungszieltyp aus, der dem Messwerttyp entspricht.
  11. Speichern Sie alle Einstellungen.

gcloud

Das Erstellen eines Autoscalings für eine verwaltete Instanzgruppe verläuft fast analog zum Erstellen eines instanzbasierten Autoscalings. Sie müssen lediglich noch das Flag --update-stackdriver-metric angeben. Mit den folgenden Flags können Sie festlegen, wie Autoscaling Instanzen bereitstellt:

  • Instanzzuweisung: Geben Sie das Flag --stackdriver-metric-single-instance-assignment an.
  • Nutzungsziel: Geben Sie das Flag --stackdriver-metric-utilization-target an.

Instanzzuweisung:

Geben Sie einen Messwert an, der gemessen werden soll, und spezifizieren Sie im Flag --stackdriver-metric-single-instance-assignment, wie viel Arbeit jede Instanz verarbeiten soll. Außerdem müssen Sie mit dem Flag --stackdriver-metric-filter einen Filter für den Messwert angeben.

gcloud beta compute instance-groups managed set-autoscaling [GROUP_NAME] \
    --zone=[ZONE] \
    --max-num-replicas=[MAX_INSTANCES] \
    --min-num-replicas=[MIN_INSTANCES] \
    --update-stackdriver-metric='[METRIC_URL]' \
    --stackdriver-metric-filter='[METRIC_FILTER]' \
    --stackdriver-metric-single-instance-assignment=[INSTANCE_ASSIGNMENT]

Dabei gilt Folgendes:

  • [GROUP_NAME] ist der Name der verwalteten Instanzgruppe, der Sie Autoscaling hinzufügen möchten.
  • [ZONE] ist die Zone, in der sich die verwaltete Instanzgruppe befindet. Für Autoscaling mit Gruppenmesswerten kann keine Region angegeben werden.
  • [MAX_INSTANCES] ist das Limit für die Anzahl der Instanzen, die das Autoscaling der verwalteten Instanzgruppe hinzufügen kann.
  • [MIN_INSTANCES] ist das Limit für die minimale Anzahl von Instanzen, die das Autoscaling in der verwalteten Instanzgruppe bereitstellen kann.
  • [METRIC_URL] ist die URL eines Google Cloud Monitoring-Messwerts, der ohne Protokoll angegeben wird.
  • [METRIC_FILTER] ist ein Stackdriver Monitoring-Filter, in dem Sie einen Monitoring-Filter mit einer relevanten TimeSeries und einer MonitoredResource angeben. Der Filter muss die Voraussetzungen für die Autoscaling-Filterung erfüllen.
  • [INSTANCE_ASSIGNMENT] ist die Menge an Arbeit, die jeder Instanz in der verwalteten Instanzgruppe zugewiesen wird. Der Wert 2 bedeutet zum Beispiel, dass jeder Instanz zwei Arbeitseinheiten zugewiesen werden. Bei 0.5 wird jeder Instanz nur eine halbe Arbeitseinheit zugewiesen. Das Autoscaling fügt der verwalteten Instanzgruppe ausreichend Instanzen hinzu, um sicherzugehen, dass genügend Instanzen vorhanden sind, um die verfügbare Arbeit, wie im Messwert angegeben, zu erledigen. Lautet der Messwert 10 und Sie haben jeder Instanz 0.5 Arbeitseinheiten zugewiesen, erstellt Autoscaling 20 Instanzen in der verwalteten Instanzgruppe.

Nutzungsziel:

Manchmal ist es sinnvoller, Nutzungsziele und Gruppenmesswerte zu kombinieren, anstatt eine Anzahl von Instanzen relativ zum Wert des von Ihrem Autoscaling gemessenen Messwerts anzugeben. Sie können auch einen Gruppenmesswert für das Autoscaling verwenden, jedoch wird weiterhin versucht werden, das Nutzungsziel zu erreichen. Geben Sie Ziel und Zieltyp mit dem Flag --stackdriver-metric-utilization-target an. Außerdem müssen Sie mit dem Flag --stackdriver-metric-filter einen Filter für den Messwert angeben.

gcloud beta compute instance-groups managed set-autoscaling [GROUP_NAME] \
   --zone=[ZONE] \
   --max-num-replicas=[MAX_INSTANCES] \
   --min-num-replicas=[MIN_INSTANCES] \
   --update-stackdriver-metric='[METRIC_URL]' \
   --stackdriver-metric-filter='[METRIC_FILTER]' \
   --stackdriver-metric-utilization-target=[TARGET_VALUE] \
   --stackdriver-metric-utilization-target-type=[TARGET_TYPE]

Dabei gilt Folgendes:

  • [GROUP_NAME] ist der Name der verwalteten Instanzgruppe, der Sie Autoscaling hinzufügen möchten.
  • [ZONE] ist die Zone, in der sich die verwaltete Instanzgruppe befindet. Für Autoscaling mit Gruppenmesswerten kann keine Region angegeben werden.
  • [MAX_INSTANCES] ist das Limit für die Anzahl der Instanzen, die das Autoscaling der verwalteten Instanzgruppe hinzufügen kann.
  • [MIN_INSTANCES] ist das Limit für die minimale Anzahl von Instanzen, die das Autoscaling in der verwalteten Instanzgruppe bereitstellen kann.
  • [METRIC_URL] ist die URL eines Google Cloud Monitoring-Messwerts, der ohne Protokoll angegeben wird.
  • [METRIC_FILTER] ist ein Stackdriver Monitoring-Filter, in dem Sie einen Monitoring-Filter mit einer relevanten TimeSeries und einer MonitoredResource angeben. Sie müssen den Wert resource.type angeben, können ihn jedoch nicht auf gce_instance festlegen, wenn Sie auf Basis von Gruppenmesswerten skalieren möchten. Der Filter muss die Voraussetzungen für die Autoscaling-Filterung erfüllen.
  • [TARGET_VALUE] ist der Messwert, den Autoscaling aufrechtzuerhalten versucht.
  • [TARGET_TYPE] ist der Werttyp des Messwerts. Sie können Autoscaling den Messwert als GAUGE, nach delta-per-minute des Werts oder nach delta-per-second des Werts überwachen lassen.

Eine vollständige Liste der verfügbaren Befehle und Flags in gcloud, die mit gruppenbasiertem Autoscaling funktionieren, finden Sie in der Referenz zur Betaversion von gcloud.

API

Hinweis: Auch wenn das Autoscaling eine Funktion verwalteter Instanzgruppen ist, handelt es sich bei [autoscalers](/compute/docs/reference/beta/autoscalers) um eine separate API-Ressource. Beachten Sie dies, wenn Sie API-Anfragen für das Autoscaling erstellen.

Erstellen Sie ein Autoscaling für eine verwaltete Instanzgruppe. Mit den folgenden Parametern bestimmen Sie, wie das Autoscaling Instanzen bereitstellen soll:

  • Instanzzuweisung: Geben Sie den Parameter singleInstanceAssignment an.
  • Nutzungsziel: Geben Sie den Parameter utilizationTarget an.

Instanzzuweisung:

In der API verwenden Sie eine POST-Anfrage, um ein Autoscaling zu erstellen. Im Anfragetext geben Sie die normalen Parameter an, die Sie auch zum Erstellen eines instanzbasierten Autoscalings verwenden würden, und zusätzlich den Parameter single-instance-assignment. Dieser gibt an, wie viel Arbeit eine einzelne Instanz übernehmen soll.

POST https://www.googleapis.com/compute/beta/projects/[PROJECT_ID]/zones/[ZONE]/autoscalers

{
 "name": "example-autoscaler",
 "target": "zones/[ZONE]/instanceGroupManagers/[GROUP_NAME]",
 "autoscalingPolicy": {
  "maxNumReplicas": [MAX_INSTANCES],
  "minNumReplicas": [MIN_INSTANCES],
  "customMetricUtilizations": [
    {
      "metric": "[METRIC_URL]",
      "filter": "[METRIC_FILTER]",
      "singleInstanceAssignment": [INSTANCE_ASSIGNMENT]
    }
  ],
 }
}

Dabei gilt Folgendes:

  • [PROJECT_ID] ist Ihre Projekt-ID.
  • [ZONE] ist die Zone, in der sich die verwaltete Instanzgruppe befindet.
  • [GROUP_NAME] ist der Name der verwalteten Instanzgruppe, der Sie Autoscaling hinzufügen möchten.
  • [MAX_INSTANCES] ist das Limit für die Anzahl der Instanzen, die das Autoscaling der verwalteten Instanzgruppe hinzufügen kann.
  • [MIN_INSTANCES] ist das Limit für die minimale Anzahl von Instanzen, die das Autoscaling in der verwalteten Instanzgruppe bereitstellen kann.
  • [METRIC_URL] ist die URL eines Google Cloud Monitoring-Messwerts, der ohne Protokoll angegeben wird.
  • [METRIC_FILTER] ist ein Stackdriver Monitoring-Filter, in dem Sie einen Monitoring-Filter mit einer relevanten TimeSeries und einer MonitoredResource angeben. Sie müssen den Wert resource.type angeben, können ihn jedoch nicht auf gce_instance festlegen, wenn Sie auf Basis von Gruppenmesswerten skalieren möchten. Der Filter muss die Voraussetzungen für die Autoscaling-Filterung erfüllen.
  • [INSTANCE_ASSIGNMENT] ist die Menge an Arbeit, die jeder Instanz in der verwalteten Instanzgruppe zugewiesen wird. Der Wert 2 bedeutet zum Beispiel, dass jeder Instanz zwei Arbeitseinheiten zugewiesen werden. Bei 0.5 wird jeder Instanz nur eine halbe Arbeitseinheit zugewiesen. Das Autoscaling fügt der verwalteten Instanzgruppe ausreichend Instanzen hinzu, um sicherzugehen, dass genügend Instanzen vorhanden sind, um die verfügbare Arbeit, wie im Messwert angegeben, zu erledigen. Lautet der Messwert 10 und Sie haben jeder Instanz 0.5 Arbeitseinheiten zugewiesen, erstellt Autoscaling 20 Instanzen in der verwalteten Instanzgruppe.

Nutzungsziel:

Manchmal ist es sinnvoller, Nutzungsziele und Gruppenmesswerte zu kombinieren, anstatt eine Anzahl von Instanzen relativ zum Wert des von Ihrem Autoscaling gemessenen Messwerts anzugeben. Sie können auch einen Gruppenmesswert für das Autoscaling verwenden, jedoch wird weiterhin versucht werden, das Nutzungsziel zu erreichen. Diese Ziele werden mit dem Parameter utilizationTarget angegeben. Mit dem Parameter filter müssen Sie außerdem einen Filter für den Messwert definieren.

POST https://www.googleapis.com/compute/beta/projects/[PROJECT_ID]/zones/[ZONE]/autoscalers

{
 "name": "example-autoscaler",
 "target": "zones/[ZONE]/instanceGroupManagers/[GROUP_NAME]",
 "autoscalingPolicy": {
  "maxNumReplicas": [MAX_INSTANCES],
  "minNumReplicas": [MIN_INSTANCES],
  "customMetricUtilizations": [
    {
      "metric": "[METRIC_URL]",
      "filter": "[METRIC_FILTER]",
      "utilizationTarget": [TARGET_VALUE],
      "utilizationTargetType": [TARGET_TYPE]
    }
  ],
 }
}

Dabei gilt Folgendes:

  • [GROUP_NAME] ist der Name der verwalteten Instanzgruppe, der Sie Autoscaling hinzufügen möchten.
  • [ZONE] ist die Zone, in der sich die verwaltete Instanzgruppe befindet.
  • [MAX_INSTANCES] ist das Limit für die Anzahl der Instanzen, die das Autoscaling der verwalteten Instanzgruppe hinzufügen kann.
  • [MIN_INSTANCES] ist das Limit für die minimale Anzahl von Instanzen, die das Autoscaling in der verwalteten Instanzgruppe bereitstellen kann.
  • [METRIC_URL] ist die URL eines Google Cloud Monitoring-Messwerts, der ohne Protokoll angegeben wird.
  • [METRIC_FILTER] ist ein Stackdriver Monitoring-Filter, in dem Sie einen Monitoring-Filter mit einer relevanten TimeSeries und einer MonitoredResource angeben. Sie müssen den Wert resource.type angeben, können ihn jedoch nicht auf gce_instance festlegen, wenn Sie auf Basis von Gruppenmesswerten skalieren möchten. Der Filter muss die Voraussetzungen für die Autoscaling-Filterung erfüllen.
  • [TARGET_VALUE] ist der Messwert, den Autoscaling aufrechtzuerhalten versucht.
  • [TARGET_TYPE] ist der Werttyp des Messwerts. Sie können Autoscaling den Messwert als GAUGE, nach DELTA_PER_MINUTE des Werts oder nach DELTA_PER_SECOND des Werts überwachen lassen.

Beispiel: Mithilfe einer Instanzzuweisung auf Basis einer Pub/Sub-Warteschlange skalieren

Ausgangssituation:

  • Ein aktives Google Cloud Pub/Sub-Thema empfängt Nachrichten von einer bestimmten Quelle.
  • Ein aktives Google Cloud Pub/Sub-Abo ist in einer Pull-Konfiguration mit dem Thema verbunden. Das Abo heißt our-subscription.
  • Ein Pool von Workern bezieht Nachrichten über das Abo und verarbeitet sie. Der Pool ist eine in einer einzelnen Zone verwaltete Instanzgruppe namens our-instance-group und befindet sich in der Zone us-central1-a. Der Pool darf 100 Worker nicht überschreiten und soll auf 0 Worker verkleinert werden, wenn sich keine Nachrichten in der Warteschlange befinden.
  • Im Schnitt verarbeitet ein Worker eine Nachricht pro Minute.

Betrachten wir verschiedene Ansätze, um den optimalen Wert für die Instanzzuweisung zu bestimmen:

  • Sie können 1 als Instanzzuweisungswert wählen, um alle Nachrichten in der Warteschlange so schnell wie möglich zu verarbeiten. Dies erstellt für jede Nachricht in der Warteschlange eine Instanz (begrenzt auf die maximale Anzahl von Instanzen in der Gruppe). Dies kann jedoch zu einer Überdimensionierung führen. Im schlimmsten Fall wird eine Instanz erstellt, um genau eine Nachricht zu verarbeiten, bevor sie durch Autoscaling wieder beendet wird. Dadurch werden Ressourcen wesentlich länger belegt als für die eigentliche Arbeit nötig.
    • Wenn Worker mehrere Nachrichten gleichzeitig verarbeiten können, wäre es sinnvoll, den Wert auf die Anzahl gleichzeitig möglicher Prozesse zu erhöhen.
    • Beachten Sie, dass in diesem Beispiel ein Wert unter 1 nicht sinnvoll ist, da eine Nachricht nicht von mehr als einem Worker verarbeitet werden kann.
  • Wenn es weniger auf die Verarbeitungslatenz als auf die Ressourcenauslastung und die Gesamtkosten ankommt, können Sie alternativ berechnen, wie viele Nachrichten jede Instanz innerhalb ihrer Lebensdauer verarbeiten muss, um effizient genutzt zu werden. Berücksichtigen Sie die Zeit für das Starten und Herunterfahren sowie die Tatsache, dass Autoscaling Instanzen nicht sofort löscht. Davon ausgehend, dass für das Starten und Herunterfahren etwa 5 Minuten anfallen und Autoscaling Instanzen erst nach etwa 10 Minuten löscht, berechnen Sie, dass es effizient ist, eine zusätzliche Instanz in der Gruppe zu erstellen, solange sie mindestens 15 Nachrichten verarbeitet, bevor sie von Autoscaling wieder beendet wird. Dies führt zu einem Leistungsaufwand von maximal 25 % aufgrund der Zeit, die für das Erstellen, Starten und Herunterfahren der Instanz aufgewendet werden muss. In diesem Fall können Sie die Instanzzuweisung auf 15 setzen.
  • Beide Ansätze lassen sich ausgleichen, sodass sich ein Wert zwischen 1 und 15 einpendelt, je nachdem, welcher Faktor Priorität hat – die Verarbeitungslatenz oder die Ressourcenauslastung.

Unter den verfügbaren Pub/Sub-Messwerten gibt es einen Messwert, der die Länge der Abo-Warteschlange darstellt: subscription/num_undelivered_messages.

Beachten Sie, dass dieser Messwert die Gesamtzahl der Nachrichten in der Warteschlange exportiert, einschließlich Nachrichten, die gerade verarbeitet werden, aber noch nicht bestätigt wurden. Verwenden Sie keinen Messwert, der die zu verarbeitenden Nachrichten nicht enthält. Er könnte auf 0 fallen, obwohl noch Arbeit zu erledigen ist, wodurch das Autoscaling veranlasst wird, nach unten zu skalieren und die eigentliche Arbeit unterbrochen wird.

Sie können jetzt Autoscaling für die Warteschlange konfigurieren:

gcloud beta compute instance-groups managed set-autoscaling \
    our-instance-group \
    --zone=us-central1-a \
    --max-num-replicas=100 \
    --min-num-replicas=0 \
    --update-stackdriver-metric=pubsub.googleapis.com/subscription/num_undelivered_messages \
    --stackdriver-metric-filter="resource.type = pubsub_subscription AND resource.label.subscription_id = our-subscription" \
    --stackdriver-metric-single-instance-assignment=15

Beispiel: Mithilfe eines Nutzungsziels basierend auf der durchschnittlichen Latenz skalieren

Es kann Situationen geben, in denen der Messwert, der ein bestimmtes Signal liefert, nicht die insgesamt verfügbare Menge an Arbeit bzw. eine andere relevante Ressource darstellt, wie im vorherigen Beispiel, und stattdessen einen Durchschnitt, ein Perzentil oder ein anderes statistisches Attribut repräsentiert. Im folgenden Beispiel wird davon ausgegangen, dass die Skalierung auf Basis der durchschnittlichen Verarbeitungslatenz der Gruppe erfolgt.

Ausgangssituation:

  • Eine verwaltete Instanzgruppe mit dem Namen our-instance-group wird einer bestimmten Aufgabe zugewiesen. Die Gruppe befindet sich in der Zone us-central1-a.
  • Stackdriver Monitoring liefert einen benutzerdefinierten Messwert, der einen Wert exportiert, der in einer bestimmten Höhe beibehalten werden soll. In diesem Beispiel wird davon ausgegangen, dass der Messwert die durchschnittliche Latenz von Verarbeitungsabfragen darstellt, die der Gruppe zugewiesen sind.
    • Der benutzerdefinierte Messwert heißt: custom.googleapis.com/example_average_latency.
    • Er hat ein Label mit einem Schlüssel namens group_name und einen Wert, der dem Namen der our-instance-group entspricht.
    • Der benutzerdefinierte Messwert exportiert Daten für die global überwachte Ressource und gehört demnach zu keiner bestimmten Instanz.

Sie haben festgestellt, dass wenn der Messwert über einen bestimmten Wert hinausgeht, Sie der Gruppe weitere Instanzen hinzufügen müssen, um die Auslastung zu bewältigen. Wenn er hingegen sinkt, können Sie einige Ressourcen freigeben. Beim Autoscaling werden Instanzen mit einer Rate hinzugefügt oder entfernt, die proportional zur Differenz des Messwerts zum Zielwert ist. Für dieses Beispiel ist der berechnete Zielwert 100.

Sie können das Autoscaling jetzt für die Gruppe auf Basis eines Gruppennutzungsziels von 100 konfigurieren. Dies ist der Messwert, den Autoscaling versuchen muss, aufrechtzuerhalten:

gcloud beta compute instance-groups managed set-autoscaling \
    our-instance-group \
    --zone=us-central1-a \
    --max-num-replicas=100 \
    --min-num-replicas=0 \
    --update-stackdriver-metric=custom.googleapis.com/example_average_latency \
    --stackdriver-metric-filter "resource.type = global AND metric.label.group_name = our-instance-group" \
    --stackdriver-metric-utilization-target=100 \
    --stackdriver-metric-utilization-target-type=delta-per-second
Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...

Compute Engine-Dokumentation