Les locataires App Lifecycle Manager vous permettent d'organiser les unités déployées et de déployer des ressources dans des projets de locataire distincts pour vous aider à isoler et à gérer votre infrastructure.
Pour en savoir plus sur les locataires et les projets locataires, consultez Locataires et projets locataires.
Avant de commencer
Avant de créer des projets ou des ressources locataires :
- Créez une configuration Terraform, un dépôt Artifact Registry et un artefact contenant votre application SaaS dans votre projet producteur. Pour apprendre à créer et à importer un plan, consultez Créer et importer un plan. Pour savoir comment configurer une offre SaaS, consultez Guide de démarrage rapide : Déployer une application avec App Lifecycle Manager.
Activez les API requises par App Lifecycle Manager.
Rôles requis pour activer les API
Pour activer des API, vous devez disposer de l'autorisation
serviceusage.services.enable. Si vous avez créé le projet, vous disposez probablement déjà de cette autorisation via le rôle Propriétaire (roles/owner). Sinon, vous pouvez l'obtenir via le rôle Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin). Découvrez comment attribuer des rôles.Vérifiez que les comptes de service requis sont créés et que les rôles Identity and Access Management nécessaires sont accordés dans le projet producteur. Cela inclut le compte de service créé par l'utilisateur et les rôles attribués à l'agent de service
service-PROJECT_NUMBER@gcp-sa-saasservicemgmt.sur le projet producteur, oùPROJECT_NUMBERest le numéro de votre projet producteur.
Configurer un projet locataire
Lorsque vous provisionnez les ressources de vos locataires dans des projets distincts, vos ressources, vos stratégies IAM, vos quotas et vos configurations réseau sont séparés pour chacun de vos locataires, ce qui réduit le risque que des violations ou des erreurs de configuration d'un locataire affectent les autres.
Vous devez disposer des éléments suivants :
- Un projet producteur
Un projet de locataire pour chaque locataire
Console
Pour configurer des projets locataire et producteur à l'aide de la console Google Cloud :
- Créez un projet producteur et un projet locataire pour chacun de vos locataires.
- Activez la facturation sur vos projets locataire et producteur.
Activez les API requises par App Lifecycle Manager dans vos projets locataires.
Rôles requis pour activer les API
Pour activer des API, vous devez disposer de l'autorisation
serviceusage.services.enable. Si vous avez créé le projet, vous disposez probablement déjà de cette autorisation via le rôle Propriétaire (roles/owner). Sinon, vous pouvez l'obtenir via le rôle Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin). Découvrez comment attribuer des rôles.Vérifiez que vos projets de locataire disposent de comptes de service d'activation avec les autorisations requises.
Pour en savoir plus, consultez Comptes de service App Lifecycle Manager.
Après avoir créé et activé la facturation pour vos projets producteur et locataire, vous pouvez créer des ressources locataires et associer des unités aux locataires.
gcloud
Pour configurer des projets de producteur et de locataire à l'aide de la Google Cloud CLI :
Créez votre projet producteur et un projet locataire pour chacun de vos locataires :
gcloud projects create \ PRODUCER_PROJECT_ID \ --name="SaaS producer project" gcloud projects create \ TENANT_PROJECT_ID \ --name="SaaS tenant A project"Remplacez les éléments suivants :
PRODUCER_PROJECT_ID: ID du projet du producteurTENANT_PROJECT_ID: ID du projet locataire
Activez la facturation pour vos projets locataire et producteur :
gcloud billing projects link \ PRODUCER_PROJECT_ID \ --billing-account=BILLING_ACCOUNT_ID gcloud billing projects link \ TENANT_PROJECT_ID \ --billing-account=BILLING_ACCOUNT_IDRemplacez les éléments suivants :
BILLING_ACCOUNT_ID: ID du compte de facturation que vous souhaitez associer aux projets spécifiés.
Activez les API requises par App Lifecycle Manager dans vos projets locataires :
gcloud services enable \ saasservicemgmt.googleapis.com \ artifactregistry.googleapis.com \ config.googleapis.com \ developerconnect.googleapis.com \ cloudbuild.googleapis.com \ storage.googleapis.com \ --project=TENANT_PROJECT_IDAttribuez au compte de service d'activation les rôles IAM nécessaires pour chaque projet locataire :
gcloud projects add-iam-policy-binding \ TENANT_PROJECT_ID \ --member='serviceAccount:SERVICE_ACCOUNT_ID@PRODUCER_PROJECT_ID.' \ --role=ROLERemplacez les éléments suivants :
SERVICE_ACCOUNT_ID: ID du compte de service d'activationROLE: rôle IAM à attribuer (par exemple,roles/compute.admin).
Exécutez
gcloud projects add-iam-policy-bindingpour chaque rôle que vous souhaitez attribuer au compte de service spécifié.
Après avoir créé et activé la facturation pour vos projets producteur et locataire, vous pouvez créer des ressources locataires et associer des unités aux locataires.
Créer une ressource de locataire
Créez une ressource tenant dans votre offre SaaS pour représenter votre client :
Dans la console Google Cloud , accédez à App Lifecycle Manager > Locataires.
Cliquez sur Créer.
Dans le champ Nom du locataire, saisissez un nom pour votre ressource de locataire.
Facultatif : Dans le champ Ressource client, saisissez une ressource client avec des paramètres d'intégration définis par le client.
Dans la liste Offre SaaS, sélectionnez l'offre SaaS à laquelle vous souhaitez associer votre locataire.
Dans la liste Région, sélectionnez la région dans laquelle les métadonnées du locataire sont stockées.
(Facultatif) Cliquez sur Ajouter une étiquette pour ajouter une étiquette à votre locataire sous la forme d'une paire clé/valeur.
Cliquez sur Créer.
Associer une unité à un locataire
Après avoir créé un locataire et déployé une unité, vous pouvez les associer l'un à l'autre. Cette association sert principalement de tag d'organisation qui vous aide à organiser les unités appartenant à chaque locataire.
Pour en savoir plus sur le déploiement d'unités, consultez Déployer une offre SaaS.
Pour associer une unité à un locataire :
Dans la console Google Cloud , accédez à App Lifecycle Manager > Locataires.
Cliquez sur le nom du locataire que vous souhaitez associer à une unité.
Cliquez sur Modifier.
Sous Sélectionnez une unité à inclure dans le locataire, cliquez sur Ajouter une unité.
Dans la liste Unité, sélectionnez l'unité que vous souhaitez associer à ce locataire.
Cliquez sur OK.
Cliquez sur Enregistrer.
Les unités sélectionnées sont associées au locataire indiqué.
Provisionner une nouvelle unité avec des variables de projet locataire
Lorsque vous provisionnez une unité associée à un locataire, vous devez fournir les variables tenant_project_id et tenant_project_number.
Dans la console Google Cloud , accédez à App Lifecycle Manager > Unités.
Créez une unité associée à votre genre d'unité.
Cliquez sur Provisionner.
Sélectionnez la version à provisionner dans votre unité de locataire.
Sous Compte de service d'activation, dans la liste Compte de service, sélectionnez le compte de service auquel vous avez attribué des rôles dans votre projet locataire. Suivez le principe du moindre privilège et n'accordez que les rôles nécessaires pour les ressources gérées.
Dans la section Autres variables d'entrée :
- Cliquez sur Ajouter des variables de projet locataire, puis sélectionnez votre projet locataire pour renseigner les variables
tenant_project_idettenant_project_number. - Facultatif : Cliquez sur Ajouter une variable d'entrée pour saisir d'autres variables d'entrée définies dans votre configuration Terraform.
- Cliquez sur Ajouter des variables de projet locataire, puis sélectionnez votre projet locataire pour renseigner les variables
Cliquez sur Provisionner.
App Lifecycle Manager déclenche Infrastructure Manager à l'aide du compte de service d'activation spécifié. Infrastructure Manager lit les variables tenant_project_id et tenant_project_number, puis provisionne les ressources Terraform dans ce projet locataire.
Reprovisionner une unité avec une nouvelle version
Lorsque vous reprovisionnez une unité existante avec une nouvelle version, vous devez fournir les variables tenant_project_id et tenant_project_number.
Dans la console Google Cloud , accédez à App Lifecycle Manager > Unités.
Sélectionnez l'unité associée à votre genre d'unité.
Cliquez sur Mettre à niveau.
Sélectionnez la version que vous avez créée avec la configuration Terraform mise à jour.
Sous Compte de service d'activation, dans la liste Compte de service, sélectionnez le compte de service auquel vous avez attribué des rôles dans votre projet locataire. Suivez le principe du moindre privilège et n'accordez que les rôles nécessaires pour les ressources gérées.
Dans la section Autres variables d'entrée :
- Cliquez sur Ajouter des variables de projet locataire, puis sélectionnez votre projet locataire pour renseigner les variables
tenant_project_idettenant_project_number. - Facultatif : Cliquez sur Ajouter une variable d'entrée pour saisir d'autres variables d'entrée définies dans votre configuration Terraform.
- Cliquez sur Ajouter des variables de projet locataire, puis sélectionnez votre projet locataire pour renseigner les variables
Cliquez sur Mettre à niveau.
App Lifecycle Manager déclenche Infrastructure Manager à l'aide du compte de service d'activation spécifié. Infrastructure Manager lit les variables tenant_project_id et tenant_project_number, puis met à jour les ressources Terraform dans ce projet locataire.
Étapes suivantes
- Découvrez comment gérer les dépendances entre les unités.
- En savoir plus sur l'utilisation des variables et du mappage de variables
- Examinez les autorisations requises pour les comptes de service.