Maximale Anzahl von Instanzen für Dienste festlegen

Auf dieser Seite wird beschrieben, wie Sie die maximale Anzahl von Instanzen festlegen, die für Ihren Cloud Run-Dienst verwendet werden können, indem Sie das Standardverhalten für Cloud Run-Autoscaling verwenden. Informationen zum manuellen Skalieren Ihres Dienstes finden Sie unter Manuelle Skalierung.

Durch die Angabe von maximalen Instanzen in Cloud Run können Sie die Skalierung Ihres Dienstes als Reaktion auf eingehende Anfragen begrenzen, obwohl diese Maximaleinstellung aufgrund von Umständen wie Trafficspitzen für kurze Zeit überschritten werden kann.

Verwenden Sie diese Einstellung, um Ihre Kosten zu kontrollieren oder die Anzahl der Verbindungen zu einem Sicherungsdienst zu begrenzen, z. B. zu einer Datenbank.

Informationen zu den Limits für die maximale Anzahl von Instanzen, die für Ihren Dienst gelten können, finden Sie unter Maximale Instanzlimits.

Weitere Informationen dazu, wie Cloud Run Container-Instanzen automatisch skaliert, finden Sie unter Instanz-Autoscaling.

Höchstanzahl von Instanzen auf Dienstebene oder auf Überarbeitungsebene anwenden

Sie können die maximale Anzahl von Instanzen auf Dienst- oder Überarbeitungs-Ebene konfigurieren. Google empfiehlt, die maximale Anzahl von Instanzen auf Dienstebene zu verwenden, sofern Sie keine bestimmte Anforderung haben, Instanzen auf Überarbeitungsebene zu begrenzen.

Wenn Sie die maximale Anzahl von Instanzen festlegen, gelten die Einstellungen so:

  • Service-Level: sofort
  • Auf Überarbeitungsebene: bei der Bereitstellung der Überarbeitung

Getaggte Überarbeitungen und Höchstanzahl von Instanzen auf Dienstebene

Getaggte Überarbeitungen werden gestartet, aber nur auf die maximale Anzahl von Instanzen auf Dienstebene angerechnet, wenn sie Teil einer Trafficaufteilung sind.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Konfigurieren und Bereitstellen von Cloud Run-Diensten benötigen:

Eine Liste der IAM-Rollen und -Berechtigungen im Zusammenhang mit Cloud Run finden Sie unter IAM-Rollen für Cloud Run und IAM-Berechtigungen für Cloud Run. Wenn Ihr Cloud Run-Dienst mitGoogle Cloud APIs wie Cloud-Clientbibliotheken verknüpft ist, lesen Sie die Konfigurationsanleitung für Dienstidentitäten. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Bereitstellungsberechtigungen und Zugriff verwalten.

Maximale Anzahl von Instanzen auf Dienstebene konfigurieren

Sie können die Einstellung für die maximale Anzahl von Instanzen über die Google Cloud Console, die Google Cloud CLI oder eine YAML-Datei ändern, wenn Sie einen neuen Dienst erstellen oder eine neue Revision bereitstellen.

Console

  1. Rufen Sie in der Google Cloud Console Cloud Run auf:

    Zu Cloud Run

  2. Wenn Sie einen neuen Dienst konfigurieren, wählen Sie Dienste aus und klicken Sie auf Container bereitstellen, um das Formular Dienst erstellen aufzurufen. Rufen Sie das Formular Dienstskalierung auf.

  3. Wenn Sie einen vorhandenen Dienst konfigurieren, klicken Sie auf den Dienst, um das Detailfeld aufzurufen, und dann oben rechts im Detailfeld auf  Skalierungseinstellungen auf Dienstebene bearbeiten.

  4. Geben Sie im Feld mit der Bezeichnung Maximale Anzahl von Instanzen die erforderliche maximale Anzahl von Containerinstanzen mit einem beliebigen Ganzzahlwert von 1 bis zum maximalen Limit an, das für Ihren Dienst möglich ist.

  5. Klicken Sie für einen neuen Dienst auf Erstellen oder für einen vorhandenen Dienst auf Bereitstellen.

gcloud

Mit dem folgenden Befehl können Sie die maximale Anzahl von Instanzen eines bestimmten Dienstes aktualisieren:

gcloud beta run services update SERVICE --max MAX-VALUE

Ersetzen Sie Folgendes:

  • SERVICE: der Name Ihres Dienstes.
  • MAX-VALUE: die erforderliche maximale Anzahl von Containerinstanzen. Verwenden Sie einen beliebigen Ganzzahlwert von 1 bis zum maximalen Limit, das für Ihren Dienst möglich ist.

Mit dem folgenden Befehl können Sie auch während der Bereitstellung die maximale Anzahl von Instanzen festlegen:

gcloud beta run deploy --image IMAGE_URL --max MAX-VALUE

Ersetzen Sie Folgendes:

  • IMAGE_URL: ein Verweis auf das Container-Image, z. B. us-docker.pkg.dev/cloudrun/container/hello:latest Wenn Sie Artifact Registry verwenden, muss das Repository REPO_NAME bereits erstellt sein. Die URL hat das Format LOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.
  • MAX-VALUE: die erforderliche maximale Anzahl von Containerinstanzen. Verwenden Sie einen beliebigen Ganzzahlwert von 1 bis zum maximalen Limit.

YAML

Jede Konfigurationsänderung führt zur Erstellung einer neuen Überarbeitung. Für nachfolgende Überarbeitungen gilt automatisch dieselbe Konfigurationseinstellung, sofern Sie sie nicht explizit aktualisieren.

  1. Wenn Sie einen neuen Dienst erstellen, überspringen Sie diesen Schritt. Wenn Sie einen vorhandenen Dienst aktualisieren, laden Sie die zugehörige YAML-Konfiguration herunter:

    gcloud run services describe SERVICE --format export > service.yaml
  2. Aktualisieren Sie das Attribut run.googleapis.com/maxScale::

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
      annotations:
        run.googleapis.com/launch-stage: BETA
        run.googleapis.com/maxScale: 'MAX-INSTANCE'

    Ersetzen Sie Folgendes:

    • SERVICE: Der Name Ihres Cloud Run-Dienstes
    • MAX-INSTANCE: die erforderliche maximale Anzahl von Containerinstanzen. Verwenden Sie einen beliebigen Ganzzahlwert von 1 bis zum maximalen Limit, das für Ihren Dienst möglich ist.
  3. Erstellen oder aktualisieren Sie den Dienst mit dem folgenden Befehl:

    gcloud run services replace service.yaml

Maximale Anzahl von Instanzen auf Dienstebene ansehen

So rufen Sie die aktuellen Einstellungen für die maximale Anzahl an Instanzen auf Dienstebene für Ihren Cloud Run-Dienst auf:

Console

  1. Rufen Sie in der Google Cloud Console Cloud Run auf:

    Zu Cloud Run

  2. Klicken Sie auf den Dienst, um den Bereich Dienstdetails zu öffnen.

  3. Die aktuelle Einstellung wird oben rechts im Bereich mit den Dienstdetails neben Skalierung angezeigt.

gcloud

  1. Verwenden Sie den folgenden Befehl:

    gcloud run services describe SERVICE
  2. Suchen Sie in der zurückgegebenen Konfiguration den Wert für Skalierung: automatisch (Min.: MIN_VALUE, Max.: MAX_VALUE).

Maximale Anzahl von Instanzen auf Überarbeitungsebene konfigurieren

Jede Konfigurationsänderung führt zur Erstellung einer neuen Überarbeitung. Für nachfolgende Überarbeitungen gilt automatisch dieselbe Konfigurationseinstellung, sofern Sie sie nicht explizit aktualisieren.

Standardmäßig sind Cloud Run-Dienste so konfiguriert, dass sie auf maximal 100 Instanzen skaliert werden können.

Sie können die Einstellung für die maximale Anzahl von Instanzen über die Google Cloud Console, die Google Cloud CLI oder eine YAML-Datei ändern, wenn Sie einen neuen Dienst erstellen oder eine neue Revision bereitstellen.

Console

  1. Rufen Sie in der Google Cloud Console Cloud Run auf:

    Zu Cloud Run

  2. Klicken Sie in der Liste der Dienste auf den Dienst, den Sie aktualisieren möchten, um die Details des Dienstes aufzurufen.

  3. Klicken Sie auf Neue Überarbeitung bearbeiten und bereitstellen, um das Formular für die Bereitstellung der Überarbeitung aufzurufen.

  4. Klicken Sie auf den Tab Container.

  5. Suchen Sie den Abschnitt Überarbeitungen skalieren. Geben Sie im Feld Maximale Anzahl von Instanzen die maximale Anzahl von Containerinstanzen an.

  6. Klicken Sie auf Bereitstellen.

gcloud

Mit dem folgenden Befehl können Sie die maximale Anzahl von Instanzen eines bestimmten Dienstes aktualisieren:

gcloud beta run services update SERVICE --max-instances MAX-VALUE

Ersetzen Sie Folgendes:

  • SERVICE: der Name Ihres Dienstes.
  • MAX-VALUE: die erforderliche maximale Anzahl von Containerinstanzen. Verwenden Sie einen beliebigen Ganzzahlwert von 1 bis zum maximalen Limit.

YAML

  1. Wenn Sie einen neuen Dienst erstellen, überspringen Sie diesen Schritt. Wenn Sie einen vorhandenen Dienst aktualisieren, laden Sie die zugehörige YAML-Konfiguration herunter:

    gcloud run services describe SERVICE --format export > service.yaml
  2. Aktualisieren Sie das Attribut autoscaling.knative.dev/maxScale::

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
      name: SERVICE
      annotations:
        run.googleapis.com/launch-stage: BETA
    spec:
      template:
        metadata:
          annotations:
            autoscaling.knative.dev/maxScale: 'MAX-INSTANCE'
          name: REVISION

    Ersetzen Sie Folgendes:

    • SERVICE: Der Name Ihres Cloud Run-Dienstes
    • MAX-INSTANCE: die erforderliche maximale Anzahl von Containerinstanzen. Verwenden Sie einen beliebigen Ganzzahlwert von 1 bis zum maximalen Limit.
    • REVISION durch einen neuen Überarbeitungsnamen oder löschen (falls vorhanden). Wenn Sie einen neuen Überarbeitungsnamen angeben, muss er die folgenden Kriterien erfüllen:
      • Beginnt mit SERVICE-
      • Enthält nur Kleinbuchstaben, Ziffern und -
      • Endet nicht mit -
      • Darf nicht mehr als 63 Zeichen enthalten
  3. Erstellen oder aktualisieren Sie den Dienst mit dem folgenden Befehl:

    gcloud run services replace service.yaml

Einstellungen für die maximale Anzahl von Instanzen auf Überarbeitungsebene ansehen

So rufen Sie die aktuellen Einstellungen für die maximale Anzahl an Instanzen auf Revisionsebene für Ihren Cloud Run-Dienst auf:

Console

  1. Rufen Sie in der Google Cloud Console Cloud Run auf:

    Zu Cloud Run

  2. Klicken Sie auf den Dienst, um den Bereich Dienstdetails zu öffnen.

  3. Klicken Sie auf den Tab Überarbeitungen.

  4. Sehen Sie sich im Detailbereich rechts die Einstellung Maximale Anzahl von Instanzen für die Revision auf dem Tab Container an.

gcloud

  1. Verwenden Sie den folgenden Befehl:

    gcloud run services describe SERVICE
  2. Suchen Sie in der zurückgegebenen Konfiguration nach dem Wert für Maximale Anzahl von Instanzen.

Mindest- oder Höchstanzahl von Instanzen auf Dienstebene und Überarbeitungsebene verwenden

In der folgenden Tabelle sehen Sie das Verhalten, wenn Sie die Höchstanzahl von Instanzen auf Dienstebene mit der Mindest- oder Höchstanzahl von Instanzen auf Überarbeitungsebene kombinieren:

Einstellung auf Dienstebene Einstellung auf Überarbeitungsebene Verhalten
Maximale Anzahl von Instanzen auf Dienstebene festgelegt Maximale Anzahl von Instanzen auf Überarbeitungsebene festgelegt Das effektive Limit für die maximale Anzahl von Instanzen ist der niedrigere Wert zwischen der maximalen Anzahl von Instanzen auf Überarbeitungsebene und der maximalen Anzahl von Instanzen auf Dienstebene.
Maximale Anzahl von Instanzen auf Dienstebene festgelegt Mindestanzahl von Instanzen auf Überarbeitungsebene festgelegt Wenn die maximale Anzahl von Instanzen auf Dienstebene auf einen Wert unter der Mindestanzahl von Instanzen auf Überarbeitungsebene festgelegt ist, werden für die Überarbeitung Instanzen bis zur maximalen Anzahl von Instanzen auf Dienstebene gestartet. Die konfigurierte Mindestanzahl von Instanzen auf Überarbeitungsebene wird nicht erreicht.

Höchstanzahl von Instanzen auf Dienstebene mit Trafficaufteilung verwenden

Wenn Sie die Traffic-Aufteilung verwenden, wird die maximale Anzahl von Instanzen auf Dienstebene basierend auf dem Anteil der Traffic-Aufteilung auf die Überarbeitungen verteilt. Wenn beispielsweise die maximale Anzahl von Instanzen auf Dienstebene = 100 ist, werden bei einer 50/50-Trafficaufteilung jeder Revision 50 Instanzen auf Dienstebene zugewiesen. Die folgende Tabelle zeigt ein Beispiel für ein Konfigurationsszenario:

Beispielkonfiguration Ergebnis
Maximale Anzahl von Instanzen auf Dienstebene festgelegt (Szenario ohne Einstellungen auf Überarbeitungsebene): 100 
  • Trafficaufteilung für Revision A: 10%
  • Trafficaufteilung für Revision B: 10%
  • Aufteilung des Traffics für Revision C : 80%
Ein Teil der maximalen Anzahl von Instanzen auf Dienstebene wird jeder Überarbeitung zugewiesen. Die effektive maximale Anzahl von Instanzen für jede Überarbeitung wird basierend auf der Traffic-Aufteilung festgelegt. Die maximale Anzahl von Instanzen für Überarbeitung A beträgt 10, für Überarbeitung B 10 und für Überarbeitung C 80.