Cette page décrit les conditions préalables à l'utilisation de la fonctionnalité d'orchestrateur de règles dans VM Manager.
Configurer un projet de quota pour les orchestrations d'organisations et de dossiers
Lorsque vous utilisez des orchestrateurs de règles pour gérer les ressources de règles d'OS dans votre organisation ou vos dossiers, vous envoyez des requêtes à une API basée sur le client. Un projet de quota est requis pour les API basées sur le client. Pour en savoir plus sur les API basées sur le client et la configuration de projets de quota, consultez la page Présentation des projets de quota.
Lorsque vous utilisez gcloud CLI ou l'API REST pour appeler les méthodes de l'orchestrateur de règles, spécifiez le projet de quota comme suit:
gcloud
Définissez votre projet de quota dans la propriété de configuration de la gcloud CLI:
gcloud config set billing/quota_project QUOTA_PROJECT_ID
Remplacez QUOTA_PROJECT_ID
par l'ID du projet de quota.
Vous pouvez également définir le projet de quota pour une commande spécifique à l'aide de l'option --billing-project
, qui est prioritaire sur la propriété de configuration.
REST
Ajoutez l'en-tête HTTP x-goog-user-project
pour spécifier un projet de quota dans chaque requête. Pour en savoir plus, consultez la section Définir le projet de quota avec une requête REST.
Activer l'API OS Config
Pour utiliser la fonctionnalité d'orchestrateur de règles dans VM Manager, activez l'API OS Config dans les projets suivants:
- Pour les orchestrations au niveau de l'organisation et du dossier, activez l'API OS Config pour le projet de quota.
- Pour les orchestrations au niveau du projet, activez l'API OS Config dans le projet dans lequel vous créez des orchestrateurs de règles.
Pour en savoir plus, consultez Activer l'API OS Config.
Activer l'API Progressive Rollout pour les projets
Console
Dans la console Google Cloud, sélectionnez le projet Google Cloud pour lequel vous souhaitez activer l'API, puis accédez à la page API et services:
Cliquez sur Activer les API et les services.
Recherchez "Déploiement progressif".
Dans les résultats de recherche, cliquez sur API Progressive Rollout.
Si l'API n'est pas déjà activée, cliquez sur Activer.
gcloud
Pour vérifier si l'API Progressive Rollout est activée, exécutez la commande suivante en remplaçant
PROJECT_ID
par l'ID du projet pour lequel vous souhaitez activer l'API:gcloud services list --project=PROJECT_ID
Si
progressiverollout.googleapis.com
apparaît dans le résultat, l'API est activée.Si l'API n'est pas activée, exécutez la commande suivante pour l'activer:
gcloud services enable progressiverollout.googleapis.com
Pour en savoir plus, consultez les sections sur
gcloud services
Configurer les agents du service OS Config
L'orchestrateur de règles utilise les agents de service OS Config pour effectuer des actions dans vos projets. Il dépend également de l'API Progressive Rollout, qui dispose de ses propres agents de service. Pour en savoir plus, consultez la page Agents de service.
Vous devez créer les agents de service pour chaque projet, dossier ou organisation dans lesquels vous créez l'orchestrateur de règles.
Pour créer les agents de service, procédez comme suit :
Vérifiez le format de l'adresse e-mail de l'agent de service pour chaque ressource:
Projet
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
Remplacez
PROJECT_NUMBER
par l'ID numérique du projet dans lequel vous créez les orchestrateurs de règles.Dossier
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
Remplacez
FOLDER_NUMBER
par l'ID numérique du dossier dans lequel vous créez les orchestrateurs de stratégie.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
Remplacez
ORGANIZATION_NUMBER
par l'ID numérique de l'organisation dans laquelle vous créez les orchestrateurs de stratégie.Pour créer l'agent de service pour une API et une ressource spécifiées, exécutez la commande
gcloud beta services identity create
:Projet
gcloud beta services identity create --service=osconfig.googleapis.com --project=PROJECT_NUMBER
gcloud beta services identity create --service=progressiverollout.googleapis.com --project=PROJECT_NUMBER
Remplacez
PROJECT_NUMBER
par l'ID numérique du projet dans lequel vous souhaitez créer l'agent de service.Dossier
gcloud beta services identity create --service=osconfig.googleapis.com --folder=FOLDER_NUMBER
gcloud beta services identity create --service=progressiverollout.googleapis.com --folder=FOLDER_NUMBER
Remplacez
FOLDER_NUMBER
par l'ID numérique du dossier dans lequel vous souhaitez créer l'agent de service.Organisation
gcloud beta services identity create --service=osconfig.googleapis.com --organization=ORGANIZATION_NUMBER
gcloud beta services identity create --service=progressiverollout.googleapis.com --organization=ORGANIZATION_NUMBER
Remplacez
ORGANIZATION_NUMBER
par l'ID numérique de l'organisation dans laquelle vous souhaitez créer l'agent de service.
Attribuer des rôles IAM aux agents de service
Pour que l'orchestrateur de règles fonctionne correctement, vous devez accorder tous les rôles d'agent de service requis aux comptes de service respectifs, à la ressource parente de l'orchestrateur:
- Agent de service OS Config (
roles/osconfig.serviceAgent
) pour le compte @gcp-sa-osconfig.iam.gserviceaccount.com - Agent de service de déploiement OS Config (
roles/osconfig.rolloutServiceAgent
) pour le compte @gcp-sa-osconfig-rollout.iam.gserviceaccount.com - Agent de service Progressiverollout (
roles/progressiverollout.serviceAgent
) pour le compte @gcp-sa-progrollout.iam.gserviceaccount.com
Pour accorder des rôles IAM aux agents de service, utilisez la console Google Cloud ou la commande add-iam-policy-binding
.
Pour en savoir plus, consultez Attribuer un rôle à l'agent de service.
Rôles requis
-
Pour obtenir les autorisations nécessaires pour accorder l'accès aux agents de service, demandez à votre administrateur de vous attribuer les rôles IAM suivants sur le projet, le dossier ou l'organisation auxquels vous accordez l'accès dans les objectifs suivants :
- Autoriser les agents de service à accéder à un projet : Administrateur de projet IAM (
roles/resourcemanager.projectIamAdmin
) - Autoriser les agents de service à accéder à un dossier : Administrateur de dossier (
roles/resourcemanager.folderAdmin
) - Autoriser les agents de service à accéder aux projets, aux dossiers et aux organisations : Administrateur d'organisation (
roles/resourcemanager.organizationAdmin
)
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour accorder l'accès aux agents de service. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Vous devez disposer des autorisations suivantes pour accorder l'accès aux agents de service :
-
Autoriser les agents de service à accéder à un projet :
-
resourcemanager.projects.getIamPolicy
-
resourcemanager.projects.setIamPolicy
-
-
Autoriser les agents de service à accéder à un dossier :
-
resourcemanager.folders.getIamPolicy
-
resourcemanager.folders.setIamPolicy
-
-
Autoriser les agents de service à accéder à une organisation :
-
resourcemanager.organizations.getIamPolicy
-
resourcemanager.organizations.setIamPolicy
-
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
- Autoriser les agents de service à accéder à un projet : Administrateur de projet IAM (
Pour accorder les rôles d'agent de service, exécutez gcloud add-iam-policy-binding
comme suit:
Projet
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent"
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent"
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Remplacez PROJECT_NUMBER
par l'ID numérique du projet auquel la liaison de stratégie IAM est ajoutée.
Dossier
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"
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"
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"
Remplacez FOLDER_NUMBER
par l'ID numérique du dossier auquel la liaison de stratégie IAM est ajoutée.
Organisation
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"
gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent"
gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Remplacez ORGANIZATION_NUMBER
par l'ID numérique de l'organisation à laquelle la liaison de stratégie IAM est ajoutée.
Étape suivante
- Découvrez comment gérer les attributions de règles d'OS à l'aide de l'orchestrateur de règles.
- Découvrez comment afficher et modifier les orchestrateurs de règles.