Auf dieser Seite werden die Voraussetzungen für die Verwendung des Policy Orchestrator-Features in VM Manager beschrieben.
gcloud-Befehlszeilenbefehle für Voraussetzungen für den Richtlinien-Orchestrator
In diesem Abschnitt werden alle gcloud
-Befehle aufgeführt, die Sie ausführen müssen, bevor Sie die Funktion „Richtlinien-Orchestrator“ verwenden können.
Projekt
Mit den folgenden Befehlen werden die Aufgaben ausgeführt, die zum Erstellen von Orchestrierungen auf Projektebene erforderlich sind:
- Aktivieren Sie die OS Config API für das Projekt, in dem Sie den OS-Richtlinien-Orchestrator erstellen.
- Aktivieren Sie die Progressive Rollout API für das Projekt, in dem Sie den Orchestrator für Betriebssystemrichtlinien erstellen.
- Erstellen Sie die erforderlichen Dienst-Agents, falls sie noch nicht vorhanden sind.
- Dienst-Agents IAM-Rollen zuweisen
# Enable OS Config API gcloud services enable osconfig.googleapis.com # Enable Progressive Rollout API gcloud services enable progressiverollout.googleapis.com # Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --project=PROJECT_NUMBER # Create a Progressive Rollout service agent gcloud beta services identity create --service=progressiverollout.googleapis.com --project=PROJECT_NUMBER # Grant the required role to the OS config rollout service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent" # Grant the required role to the OS config service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent" # Grant the required role to the Progressive Rollout service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Ersetzen Sie Folgendes:
PROJECT_ID
: die numerische ID des Projekts, in dem Sie den Dienst-Agent erstellen möchten.PROJECT_NUMBER
: die Projektressourcennummer, die Google Ihnen beim Erstellen des Projekts zugewiesen hat.
Weitere Informationen finden Sie unter Die Projektressource.
Ordner
Mit den folgenden Befehlen werden die Aufgaben ausgeführt, die zum Erstellen von Orchestrierungen auf Ordnerebene erforderlich sind:
- Kontingentprojekt einrichten
- Aktivieren Sie die OS Config API für das Projekt, in dem Sie den OS-Richtlinien-Orchestrator erstellen.
- Erstellen Sie die erforderlichen Dienst-Agents, falls sie noch nicht vorhanden sind.
- Dienst-Agents IAM-Rollen zuweisen
# Set up the quota project gcloud config set billing/quota_project QUOTA_PROJECT_ID # Enable OS Config API gcloud services enable osconfig.googleapis.com # Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --folder=FOLDER_NUMBER # Create a Progressive Rollout service agent gcloud beta services identity create --service=progressiverollout.googleapis.com --folder=FOLDER_NUMBER # Grant the required role to the OS config rollout service agent gcloud resource-manager folders add-iam-policy-binding FOLDER_NUMBER \ --member="serviceAccount:service-folder-FOLDER_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent" # Grant the required role to the OS config service agent gcloud resource-manager folders add-iam-policy-binding FOLDER_NUMBER \ --member="serviceAccount:service-folder-FOLDER_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent" # Grant the required role to the Progressive Rollout service agent gcloud resource-manager folders add-iam-policy-binding FOLDER_NUMBER \ --member="serviceAccount:service-folder-FOLDER_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Ersetzen Sie Folgendes:
QUOTA_PROJECT_ID
: die Projekt-ID des Kontingentprojekts. Sie können ein beliebiges Projekt auswählen, für das die Abrechnung aktiviert ist.FOLDER_NUMBER
: die numerische ID des Ordners, in dem Sie den Dienst-Agent erstellen möchten.
Organisation
Mit den folgenden Befehlen werden die Aufgaben ausgeführt, die zum Erstellen von Orchestrierungen auf Organisationsebene erforderlich sind:
- Kontingentprojekt einrichten
- Aktivieren Sie die OS Config API für das Projekt, in dem Sie den OS-Richtlinien-Orchestrator erstellen.
- Erstellen Sie die erforderlichen Dienst-Agents, falls sie noch nicht vorhanden sind.
- Dienst-Agents IAM-Rollen zuweisen
# Set up the quota project gcloud config set billing/quota_project QUOTA_PROJECT_ID # Enable OS Config API gcloud services enable osconfig.googleapis.com # Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --organization=ORGANIZATION_NUMBER # Create a Progressive Rollout service agent gcloud beta services identity create --service=progressiverollout.googleapis.com --organization=ORGANIZATION_NUMBER # Grant the required role to the OS config rollout service agent gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent" # Grant the required role to the OS config service agent gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent" # Grant the required role to the Progressive Rollout service agent gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Ersetzen Sie Folgendes:
QUOTA_PROJECT_ID
: die Projekt-ID des Kontingentprojekts. Sie können ein beliebiges Projekt auswählen, für das die Abrechnung aktiviert ist.ORGANIZATION_NUMBER
durch die numerische ID der Organisation, in der Sie den Dienst-Agent erstellen möchten.
Kontingent- oder Abrechnungsprojekt für Organisations- und Ordnerorchestrations einrichten
Wenn Sie Richtlinien-Orchestratoren verwenden, um Betriebssystemrichtlinien-Ressourcen in Ihrer Organisation oder in Ordnern zu verwalten, stellen Sie Anfragen an eine clientbasierte API. Für clientbasierte APIs ist ein Kontingentprojekt erforderlich. Weitere Informationen zu clientbasierten APIs und zum Einrichten von Kontingentprojekten finden Sie unter Kontingentprojekte – Übersicht.
Wenn Sie die gcloud CLI oder die REST API verwenden, um die Policy Orchestrator-Methoden aufzurufen, geben Sie das Kontingentprojekt so an:
gcloud
Legen Sie Ihr Kontingentprojekt im Attribut der gcloud CLI-Konfiguration fest:
gcloud config set billing/quota_project QUOTA_PROJECT_ID
Ersetzen Sie QUOTA_PROJECT_ID
durch die Projekt-ID des Kontingentprojekts.
Alternativ können Sie das Kontingentprojekt für einen bestimmten Befehl mit dem Flag --billing-project
festlegen, das Vorrang vor dem Konfigurationsattribut hat.
REST
Fügen Sie den HTTP-Header x-goog-user-project
hinzu, um in jeder Anfrage ein Kontingentprojekt anzugeben. Weitere Informationen finden Sie unter Kontingentprojekt mit REST-Anfrage festlegen.
OS Config API aktivieren
Wenn Sie die Funktion „Richtlinien-Orchestrator“ in VM Manager verwenden möchten, aktivieren Sie die OS Config API in den folgenden Projekten:
- Aktivieren Sie für Orchestrierungen auf Organisations- und Ordnerebene die OS Config API für das Kontingentprojekt.
- Aktivieren Sie für Orchestrierungen auf Projektebene die OS Config API in dem Projekt, in dem Sie Richtlinien-Orchestratoren erstellen.
Weitere Informationen finden Sie unter OS Config API aktivieren.
Progressive Rollout API für die Projekte aktivieren
Console
Wählen Sie in der Google Cloud Console das Google Cloud Projekt aus, für das Sie die API aktivieren möchten, und rufen Sie dann die Seite APIs & Services auf:
APIs & Dienste aufrufen
Klicken Sie auf APIs und Dienste aktivieren.
Suchen Sie nach „Progressive Rollout“.
Klicken Sie in den Suchergebnissen auf Progressive Rollout API.
Wenn die API noch nicht aktiviert ist, klicken Sie auf Aktivieren.
gcloud
Führen Sie den folgenden Befehl aus, nachdem Sie
PROJECT_ID
durch die ID des Projekts ersetzt haben, für das Sie die API aktivieren möchten, um zu prüfen, ob die Progressive Rollout API aktiviert ist:gcloud services list --project=PROJECT_ID
Wenn
progressiverollout.googleapis.com
in der Ausgabe angezeigt wird, ist die API aktiviert.Wenn die API nicht aktiviert ist, führen Sie den folgenden Befehl aus, um sie zu aktivieren:
gcloud services enable progressiverollout.googleapis.com
Weitere Informationen finden Sie unter
gcloud services
.
OS Config-Dienst-Agents einrichten
Der Richtlinienorchestrator verwendet die OS Config-Dienst-Agents, um Aktionen in Ihren Projekten auszuführen. Sie hängt auch von der Progressive Rollout API ab, die eigene Dienst-Agents hat. Weitere Informationen finden Sie unter Dienst-Agents.
Sie müssen die Dienst-Agents für jedes Projekt, jeden Ordner oder jede Organisation erstellen, in dem bzw. der Sie den Richtlinien-Orchestrator erstellen. Damit der Richtlinien-Orchestrator ordnungsgemäß funktioniert, weisen Sie diesen Dienst-Agents die folgenden erforderlichen IAM-Rollen für die übergeordnete Ressource des Orchestrators zu:
- OSConfig-Dienst-Agent (
roles/osconfig.serviceAgent
) für das Konto @gcp-sa-osconfig.iam.gserviceaccount.com - OSConfig Rollout Service Agent (
roles/osconfig.rolloutServiceAgent
) für das Konto @gcp-sa-osconfig-rollout.iam.gserviceaccount.com - Progressiverollout Service Agent (
roles/progressiverollout.serviceAgent
) für das Konto @gcp-sa-progrollout.iam.gserviceaccount.com
Weisen Sie den Dienst-Agents IAM-Rollen über die Google Cloud Console oder mit dem add-iam-policy-binding
-Befehl zu.
Weitere Informationen finden Sie unter Dienst-Agent eine Rolle zuweisen.
Erforderliche Rollen
-
Um Berechtigungen zu erhalten, die Sie brauchen, um den Dienst-Agents Zugriff zu gewähren, bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt, den Ordner oder die Organisation zuzuweisen, für den Sie den Zugriff gewähren wollen:
-
Gewähren Sie Dienst-Agents Zugriff auf ein Projekt:
Projekt-IAM-Administrator (
roles/resourcemanager.projectIamAdmin
) -
Gewähren Sie Dienst-Agents Zugriff auf einen Ordner:
Ordneradministrator (
roles/resourcemanager.folderAdmin
) -
Gewähren Sie Dienst-Agents Zugriff auf Projekte, Ordner und Organisationen:
Organisationsadministrator (
roles/resourcemanager.organizationAdmin
)
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Gewähren des Zugriffs für die Dienst-Agents erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um den Dienst-Agents Zugriff zu gewähren:
-
Gewähren Sie Dienst-Agents Zugriff auf ein Projekt:
-
resourcemanager.projects.getIamPolicy
-
resourcemanager.projects.setIamPolicy
-
-
Gewähren Sie Dienst-Agents Zugriff auf einen Ordner:
-
resourcemanager.folders.getIamPolicy
-
resourcemanager.folders.setIamPolicy
-
-
Gewähren Sie Dienst-Agents Zugriff auf eine Organisation:
-
resourcemanager.organizations.getIamPolicy
-
resourcemanager.organizations.setIamPolicy
-
Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
-
Gewähren Sie Dienst-Agents Zugriff auf ein Projekt:
Projekt-IAM-Administrator (
So erstellen Sie die Dienst-Agents:
Prüfen Sie das Format der E-Mail-Adresse des Dienst-Agents für jede Ressource:
Projekt
service-PROJECT_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com
service-PROJECT_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com
service-PROJECT_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com
Ersetzen Sie
PROJECT_NUMBER
durch die numerische ID des Projekts, in dem Sie die Richtlinien-Orchestratoren erstellen.Ordner
service-folder-FOLDER_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com
service-folder-FOLDER_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com
service-folder-FOLDER_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com
Ersetzen Sie
FOLDER_NUMBER
durch die numerische ID des Ordners, in dem Sie die Richtlinien-Orchestratoren erstellen.Organisation
service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com
service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com
service-org-ORGANIZATION_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com
Ersetzen Sie
ORGANIZATION_NUMBER
durch die numerische ID der Organisation, in der Sie die Richtlinien-Orchestratoren erstellen.Verwenden Sie den Befehl
gcloud beta services identity create
, um den Dienst-Agent für eine bestimmte API und Ressource zu erstellen:Projekt
# Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --project=PROJECT_NUMBER # Create a Progressive Rollout service agent gcloud beta services identity create --service=progressiverollout.googleapis.com --project=PROJECT_NUMBER
Ersetzen Sie
PROJECT_NUMBER
durch die numerische ID des Projekts, in dem Sie den Dienst-Agent erstellen möchten.Ordner
# Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --folder=FOLDER_NUMBER # Create a Progressive Rollout service agent gcloud beta services identity create --service=progressiverollout.googleapis.com --folder=FOLDER_NUMBER
Ersetzen Sie
FOLDER_NUMBER
durch die numerische ID des Ordners, in dem Sie den Dienst-Agent erstellen möchten.Organisation
# Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --organization=ORGANIZATION_NUMBER # Create a Progressive Rollout service agent gcloud beta services identity create --service=progressiverollout.googleapis.com --organization=ORGANIZATION_NUMBER
Ersetzen Sie
ORGANIZATION_NUMBER
durch die numerische ID der Organisation, in der Sie den Service-Agent erstellen möchten.
Dienst-Agents IAM-Rollen zuweisen
Führen Sie den gcloud add-iam-policy-binding
so aus, um dem Dienst-Agent Rollen zuzuweisen:
Projekt
# Grant the required role to the OS config rollout service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent" # Grant the required role to the OS config service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent" # Grant the required role to the Progressive Rollout service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Ersetzen Sie PROJECT_NUMBER
durch die numerische ID des Projekts, dem die IAM-Richtlinienbindung hinzugefügt wird.
Ordner
# Grant the required role to the OS config rollout service agent gcloud resource-manager folders add-iam-policy-binding FOLDER_NUMBER \ --member="serviceAccount:service-folder-FOLDER_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent" # Grant the required role to the OS config service agent gcloud resource-manager folders add-iam-policy-binding FOLDER_NUMBER \ --member="serviceAccount:service-folder-FOLDER_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent" # Grant the required role to the Progressive Rollout service agent gcloud resource-manager folders add-iam-policy-binding FOLDER_NUMBER \ --member="serviceAccount:service-folder-FOLDER_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Ersetzen Sie FOLDER_NUMBER
durch die numerische ID des Ordners, dem die IAM-Richtlinienbindung hinzugefügt wird.
Organisation
# Grant the required role to the OS config rollout service agent gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent" # Grant the required role to the OS config service agent gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent" # Grant the required role to the Progressive Rollout service agent gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Ersetzen Sie ORGANIZATION_NUMBER
durch die numerische ID der Organisation, der die IAM-Richtlinienbindung hinzugefügt wird.
Nächste Schritte
- Informationen zum Verwalten von Zuweisungen von Betriebssystemrichtlinien mit dem Richtlinienorchestrator
- Weitere Informationen zum Ansehen und Bearbeiten von Richtlinien-Orchestratoren