Bewertung erstellen und ausführen

Mit Workload Manager können Sie automatisierte Bewertungen erstellen und ausführen, bei denen Ihre Arbeitslasten anhand von Branchenstandards und Best Practices von Google Cloud geprüft werden. Durch regelmäßige Bewertungen können Sie Konfigurationsabweichungen und Architekturrisiken in Ihren Projekten frühzeitig erkennen und so die Zuverlässigkeit, Sicherheit und Leistung von Arbeitslasten verbessern.

Sie können Arbeitslastbewertungen mit der Google Cloud Console oder der Workload Manager API erstellen und ausführen. Konzeptionelle Informationen zur Funktionsweise von Bewertungen finden Sie unter Workload Manager-Bewertungen.

Beschränkungen

Workload Manager unterstützt die gleichzeitige Ausführung von bis zu 25 Bewertungen pro Stunde und Projekt. Wenn ein Projekt mehr als 25 Bewertungen hat, begrenzen Sie die stündlichen Bewertungen auf 25 oder legen Sie fest, dass der Bewertungszeitplan alle 6 Stunden oder seltener ausgeführt wird.

Hinweis

Bevor Sie eine Arbeitslastbewertung erstellen und ausführen, müssen die folgenden Voraussetzungen erfüllt sein:

  1. Prüfen Sie, ob die Google Cloud -Ressourcen, die Sie bewerten möchten, bereits im Zielprojekt erstellt wurden. Eine Liste der unterstützten Ressourcen und Regeln finden Sie in der Referenz zu Best Practices fürGoogle Cloud .

  2. Aktivieren Sie die erforderlichen APIs im Google Cloud Nutzerprojekt, in dem Sie Bewertungen erstellen und ausführen:

  3. Wenn Sie eine Anwendungs- oder Datenbankarbeitslast bewerten, prüfen Sie, ob Sie den erforderlichen Agenten oder Operator auf allen Compute-Instanzen oder Clustern eingerichtet haben, auf denen Ihre Arbeitslast ausgeführt wird:

  4. Optional: Wenn Sie zusätzlich zu den integrierten Best Practices von Google Cloud benutzerdefinierte Regeln einbeziehen möchten, laden Sie eine Beispielregel aus dem GitHub-Repository GoogleCloudPlatform/workload-manager in einen Cloud Storage-Bucket hoch, dessen oberste Ebene die Ordner /lib und /rules enthält. Weitere Informationen zum Hochladen benutzerdefinierter Regeln finden Sie unter Benutzerdefinierte Regeln mit Rego schreiben.

  5. Prüfen Sie, ob Sie die erforderlichen Rollen und Berechtigungen haben, um Bewertungen zu erstellen und auszuführen.

  6. Wenn Sie die Workload Manager API zum Erstellen von Bewertungen verwenden, erstellen Sie den Workload Manager-Dienst-Agent manuell im Nutzerprojekt und weisen Sie ihm die folgenden Rollen zu:

    • Workload Manager-Dienst-Agent (roles/workloadmanager.serviceAgent) in den Zielprojekten.

    • Wenn Sie einen Bewertungszeitplan festlegen, wird im Nutzerprojekt ein Workload Manager Worker (roles/workloadmanager.worker) erstellt.

    Wenn Sie die Google Cloud Console verwenden, erstellt Workload Manager den Dienst-Agent automatisch. Weitere Informationen zum Konfigurieren von Dienst-Agents finden Sie unter Workload Manager-Dienst-Agents.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen und Ausführen einer Arbeitslastbewertung benötigen:

  • Bewertung erstellen und ausführen: Workload Manager Evaluation Administrator (roles/workloadmanager.evaluationAdmin) für das Nutzerprojekt
  • Dienst-Agent erstellen (nur erste Bewertung): Project IAM Admin (roles/resourcemanager.projectIamAdmin) für die Nutzer- und Zielprojekte
  • Cloud Asset Inventory-Daten lesen (benutzerdefinierte Regeln und Best Practices): Cloud Asset Owner (roles/cloudasset.owner) für das Nutzerprojekt
  • Benutzerdefinierte Regeln aus einem Cloud Storage-Bucket lesen (optional): Storage Object Viewer (roles/storage.objectViewer) für das Nutzerprojekt
  • Benachrichtigungen erstellen (optional): Monitoring Metric Writer (roles/monitoring.metricWriter) für das Nutzerprojekt
  • Bewertungsergebnisse nach BigQuery exportieren (optional): BigQuery-Administrator (roles/bigquery.admin) für das Nutzerprojekt

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Erstellen und Ausführen einer Arbeitslastbewertung erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen, um die notwendigen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um eine Arbeitslastbewertung zu erstellen und auszuführen:

  • Bewertung erstellen und ausführen:
    • workloadmanager.evaluations.create für das Nutzerprojekt
    • workloadmanager.evaluations.run für das Nutzerprojekt
  • Dienst-Agent erstellen (nur erste Bewertung): resourcemanager.projects.setIamPolicy für die Nutzer- und Zielprojekte
  • Cloud Asset Inventory-Daten lesen (benutzerdefinierte Regeln und Best Practices): cloudasset.assets.searchAllResources für das Nutzerprojekt
  • Benutzerdefinierte Regeln aus einem Cloud Storage-Bucket lesen (optional):
    • storage.objects.get für das Nutzerprojekt
    • storage.objects.list für das Nutzerprojekt
  • Benachrichtigungen erstellen (optional): monitoring.timeSeries.create für das Nutzerprojekt
  • Bewertungsergebnisse nach BigQuery exportieren (optional):
    • bigquery.datasets.get für das Nutzerprojekt
    • bigquery.tables.create für das Nutzerprojekt
    • bigquery.tables.updateData für das Nutzerprojekt

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Weitere Informationen zu Rollen in Nutzer- und Zielprojekten finden Sie unter IAM-Rollen in Nutzer- und Zielprojekten für Bewertungen und IAM-Rollen und -Berechtigungen für Workload Manager.

Arbeitslastbewertung erstellen

Sie können eine Arbeitslastbewertung mit der Google Cloud Console oder der Workload Manager API erstellen. Informationen zum Erstellen einer Bewertung mit benutzerdefinierten Regeln finden Sie unter Arbeitslasten mit benutzerdefinierten Regeln bewerten.

Console

So erstellen Sie eine Arbeitslastbewertung in der Google Cloud Console:

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

    Zu Workload Manager

  2. Wählen Sie das Google Cloud Nutzerprojekt aus, in dem Sie die Bewertung speichern und ausführen möchten.

  3. Wenn Sie dazu aufgefordert werden, klicken Sie auf Aktivieren, um die erforderliche API für Workload Manager zu aktivieren.

  4. Klicken Sie auf Neue Bewertung.

  5. Konfigurieren Sie im Bereich Name und Regeln die Bewertungsdetails und wählen Sie die zu bewertenden Regeln aus:

    1. Geben Sie unter Arbeitslastname einen Namen für die Arbeitslastbewertung ein.

    2. Optional: Geben Sie unter Beschreibung eine Beschreibung für die Arbeitslastbewertung ein.

    3. Wählen Sie im Feld Arbeitslasttyp einen der folgenden unterstützten Arbeitslasttypen aus:

      • SAP

      • SQL Server

      • MySQL

      • Redis

      • OpenShift

      • Benutzerdefiniert

      Wenn Sie Benutzerdefiniert auswählen, können Sie Ihre Arbeitslasten anhand von Google Cloud Best Practices oder anhand von benutzerdefinierten Regeln bewerten, die in Cloud Storage gespeichert sind.

    4. Wählen Sie in der Regeltabelle die Best-Practice-Regeln aus, die in die Arbeitslastbewertung einbezogen werden sollen. Weitere Informationen zu den einzelnen Regeln finden Sie in der Referenz zu Best Practices fürGoogle Cloud .

  6. Klicken Sie auf Weiter.

  7. Geben Sie im Bereich Bereich und Filter die Zielprojekte und Ressourcenfilter für die Bewertung an:

    1. Klicken Sie im Bereich Bewertungsumfang auf Projekte durchsuchen, um die Zielprojekte mit den zu bewertenden Ressourcen hinzuzufügen.

    2. Optional: Wenn Sie Regelergebnisse für Zielprojekte freigeben möchten, setzen Sie ein Häkchen bei Ergebnisse freigeben. Weitere Informationen finden Sie unter Bewertungsergebnisse freigeben.

    3. Optional: Wenn Sie im Abschnitt Filter auf Ressourcen anwenden bestimmte Ressourcen aus den Zielprojekten auswählen möchten, klicken Sie auf Filter hinzufügen und verwenden Sie einen der folgenden Filtertypen:

      • Dienstkonto: Filtern Sie Compute Engine-Instanzen nach dem angehängten Dienstkonto.

      • Label: Ressourcen nach Schlüssel/Wert-Labelpaaren filtern.

      • Name: Ressourcen nach Ressourcen-ID-Muster filtern.

      Mehrere Filter innerhalb desselben Filtertyps verwenden die Logik OR. Filter für verschiedene Filtertypen verwenden die Logik AND.

    4. Wählen Sie bei Aufforderung die Region aus, in der Workload Manager die Bewertungsdaten speichern soll.

  8. Klicken Sie auf Weiter.

  9. Konfigurieren Sie im Bereich Häufigkeit und Benachrichtigung den Auswertungszeitplan, das Exportziel und die Benachrichtigungen:

    1. Wählen Sie unter Planung aus, wie oft die Bewertung ausgeführt werden soll.

    2. Optional: Wenn Sie die Bewertungsergebnisse in ein regionales BigQuery-Dataset in derselben Region wie Ihre Bewertung exportieren möchten, wählen Sie In BigQuery-Dataset speichern aus und geben Sie das Dataset an. Wenn Sie eine separate Tabelle für die Bewertung erstellen möchten, wählen Sie Neue Ergebnistabelle für diese Bewertung erstellen aus.

    3. Optional: Wählen Sie im Abschnitt Benachrichtigung die Ereignisse aus, zu denen Sie Benachrichtigungen erhalten möchten, und wählen Sie dann Ihre Benachrichtigungskanäle aus.

  10. Klicken Sie auf Weiter.

  11. Prüfen Sie im Bereich Überprüfen die Einstellungen für die Arbeitslastbewertung. Wenn Sie Einstellungen ändern möchten, klicken Sie im linken Navigationsbereich auf den Namen des Bereichs.

  12. Klicken Sie auf Erstellen.

REST

So erstellen Sie eine Arbeitslastbewertung mit der Workload Manager API:

  1. Optional: Wenn Sie die Liste der verfügbaren Regelnamen für Ihren Arbeitslasttyp abrufen möchten, senden Sie eine GET-Anfrage an die Methode projects.locations.rules.list:

    curl -X GET \
        -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        -H "X-Goog-User-Project: CONSUMER_PROJECT_ID" \
        "https://workloadmanager.googleapis.com/v1/projects/CONSUMER_PROJECT_ID/locations/LOCATION_ID/rules?evaluationType=EVALUATION_TYPE"
    

    Ersetzen Sie Folgendes:

    • CONSUMER_PROJECT_ID: die ID des Nutzerprojekts, in dem Sie Bewertungen ausführen

    • LOCATION_ID: die unterstützte Region für die Bewertung, z. B. us-central1

    • EVALUATION_TYPE: der Typ der Arbeitslastbewertung, z. B. SAP, SQL_SERVER, MYSQL, REDIS, OPENSHIFT oder OTHER

  2. Senden Sie zum Erstellen der Bewertung eine POST-Anfrage an die Methode projects.locations.evaluations.create:

    curl -X POST \
        -H "Authorization: Bearer $(gcloud auth print-access-token)" \
        -H "Content-Type: application/json; charset=utf-8" \
        -H "X-Goog-User-Project: CONSUMER_PROJECT_ID" \
        -d '{
          "description": "DESCRIPTION",
          "evaluationType": "EVALUATION_TYPE",
          "ruleNames": [
            "RULE_NAMES"
          ],
          "resourceFilter": {
            "scopes": [
              "projects/TARGET_PROJECT_ID"
            ],
            "resourceIdPatterns": [
              "RESOURCE_ID_PATTERNS"
            ],
            "inclusionLabels": {
              "LABEL_KEY": "LABEL_VALUE"
            },
            "gceInstanceFilter": {
              "serviceAccounts": [
                "SERVICE_ACCOUNT_EMAIL"
              ]
            }
          },
          "schedule": "SCHEDULE",
          "bigQueryDestination": {
            "destinationDataset": "projects/BQ_PROJECT_ID/datasets/BQ_DATASET_ID",
            "createNewResultsTable": true
          }
        }' \
        "https://workloadmanager.googleapis.com/v1/projects/CONSUMER_PROJECT_ID/locations/LOCATION_ID/evaluations?evaluationId=EVALUATION_ID"
    

    Ersetzen Sie Folgendes:

    • CONSUMER_PROJECT_ID: die ID des Nutzerprojekts, in dem Sie die Bewertung erstellen

    • LOCATION_ID: die unterstützte Region, in der Workload Manager die Bewertung speichert, z. B. us-central1

    • EVALUATION_ID: eine eindeutige ID für die Bewertung

    • DESCRIPTION: eine Beschreibung der Bewertung

    • EVALUATION_TYPE: der Typ der Arbeitslastbewertung, z. B. SAP, SQL_SERVER, MYSQL, REDIS, OPENSHIFT oder OTHER

    • RULE_NAMES: eine durch Kommas getrennte Liste von Regel-IDs, die in die Bewertung einbezogen werden sollen

    • TARGET_PROJECT_ID: die Projekt-ID oder Projektnummer des Zielprojekts, das die zu bewertenden Ressourcen enthält

    • RESOURCE_ID_PATTERNS: optionale Ressourcennamenmuster zum Filtern ausgewerteter Ressourcen, z. B. //compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance*

    • LABEL_KEY und LABEL_VALUE: optionale Schlüssel/Wert-Labelpaare zum Filtern von Ressourcen

    • SERVICE_ACCOUNT_EMAIL: optionale E-Mail-Adresse des Dienstkontos zum Filtern von Compute Engine-Instanzen

    • SCHEDULE: optionaler Cron-Ausdruck in UTC für wiederkehrende Bewertungsausführungen, z. B. 0 */6 * * * für eine Ausführung alle 6 Stunden

    • BQ_PROJECT_ID und BQ_DATASET_ID: optionale Projekt-ID und regionale BigQuery-Dataset-ID für den Export von Bewertungsergebnissen

    Weitere Informationen zu unterstützten Feldern finden Sie in der Ressourcenreferenz zu Evaluation.

Arbeitslastbewertung ausführen

Zusätzlich zur regelmäßigen Ausführung von Bewertungen können Sie eine vorhandene Arbeitslastbewertung jederzeit über die Google Cloud Console oder die Workload Manager API ausführen.

Console

So führen Sie eine Arbeitslastbewertung in der Google Cloud Console aus:

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

    Zu Workload Manager

  2. Klicken Sie auf den Namen der Bewertung, die Sie ausführen möchten.

  3. Klicken Sie auf der Seite Arbeitslastinformationen auf Ausführen.

    Die Bewertung einer Arbeitslast dauert einige Minuten. Warten Sie, bis der Bewertungsdurchlauf abgeschlossen ist, bevor Sie sich die neuesten Ergebnisse ansehen.

REST

Wenn Sie eine Arbeitslastbewertung mit der Workload Manager API ausführen möchten, senden Sie eine POST-Anfrage an die Methode projects.locations.evaluations.executions.run:

curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -H "X-Goog-User-Project: CONSUMER_PROJECT_ID" \
    -d '{
      "executionId": "EXECUTION_ID"
    }' \
    "https://workloadmanager.googleapis.com/v1/projects/CONSUMER_PROJECT_ID/locations/LOCATION_ID/evaluations/EVALUATION_ID/executions:run"

Ersetzen Sie Folgendes:

  • CONSUMER_PROJECT_ID: die ID des Nutzerprojekts, in dem die Bewertung gespeichert ist.

  • LOCATION_ID: die Region der Bewertung, z. B. us-central1.

  • EVALUATION_ID: die ID der Bewertung, die Sie ausführen möchten.

  • EXECUTION_ID: eine optionale eindeutige ID für diese Ausführung. Wenn Workload Manager automatisch eine ID generieren soll, lassen Sie dieses Feld weg.

Die Anfrage gibt einen Vorgang mit langer Ausführungszeit (Operation) zurück. Mit den Methoden projects.locations.evaluations.executions.get und projects.locations.evaluations.executions.results.list können Sie den Status der Ausführung prüfen oder die Ergebnisse auflisten.

Bewertungsergebnisse teilen

Wenn Sie die Ergebnisse der Bewertung freigeben, können Ressourceninhaber in Zielprojekten die Konfigurationsergebnisse in ihren lokalen Projektkonsolen und auf integrierten Seiten wie Compute Engine aufrufen. Für diese Funktion ist kein direkter IAM-Zugriff auf das Nutzerprojekt erforderlich.

Bewertung bearbeiten, um Ergebnisse zu teilen

So aktivieren oder deaktivieren Sie die Freigabe von Ergebnissen für eine vorhandene Bewertung:

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

    Zu Workload Manager

  2. Klicken Sie auf den Namen der Bewertung, die Sie bearbeiten möchten.

  3. Klicken Sie auf Bearbeiten.

  4. Aktivieren oder deaktivieren Sie im Bereich Umfang und Filter das Kästchen Ergebnisse freigeben.

  5. Klicken Sie auf Speichern.

Sichtbarkeit freigegebener Ergebnisse

Wenn Sie Ergebnisse freigeben aktivieren, werden die Regelergebnisse von Workload Manager an alle Zielprojekte weitergegeben, die im Bewertungsbereich angegeben sind. Die Ergebnisse sind auf dem Tab Regelergebnisse und auf integrierten Seiten wie der Übersichtsseite von Compute Engine sichtbar.

Wenn Sie Ergebnisse freigeben deaktivieren, gibt Workload Manager keine Regelergebnisse mehr an Zielprojekte weiter. Die Ergebnisse sind dann nur noch im Nutzerprojekt sichtbar.

Benachrichtigungen für Bewertungen einrichten

Sie können Benachrichtigungen so konfigurieren, dass der Workload Manager Ihre ausgewählten Benachrichtigungskanäle informiert, wenn bestimmte Bewertungsereignisse auftreten, z. B. wenn eine Bewertung neue Ergebnisse liefert oder nicht ausgeführt werden kann. Wenn Sie beim Erstellen der Bewertung keine Benachrichtigungen konfiguriert haben, können Sie sie für eine vorhandene Bewertung in der Google Cloud Console hinzufügen oder aktualisieren. Gehen Sie dazu so vor:

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

    Zu Workload Manager

  2. Klicken Sie auf den Namen der Bewertung, für die Sie Benachrichtigungen aktivieren möchten.

  3. Klicken Sie auf Bearbeiten.

  4. Wählen Sie den Bereich Benachrichtigung aus.

  5. Wählen Sie die Ereignisse aus, zu denen Sie Benachrichtigungen erhalten möchten, und wählen Sie dann Ihre Benachrichtigungskanäle aus.

  6. Klicken Sie auf Speichern.

Nächste Schritte