Créer et gérer des projets

Restez organisé à l'aide des collections Enregistrez et classez les contenus selon vos préférences.

Les projets Google Cloud constituent une base pour la création, l'activation et l'utilisation de tous les services Google Cloud, comme la gestion des API, la facturation, l'ajout et la suppression de collaborateurs, et la gestion des autorisations pour les ressources Google Cloud.

Cette page explique comment créer et gérer des projets Google Cloud à l'aide de l'API Resource Manager et de Google Cloud Console.

Avant de commencer

Pour en savoir plus sur les ressources du projet, consultez la présentation de la hiérarchie des ressources. Pour savoir comment configurer la hiérarchie des ressources, consultez la section Choisir une hiérarchie de ressources pour votre zone de destination Google Cloud.

Les éléments suivants sont utilisés pour identifier votre projet :

  • Nom de projet : nom lisible attribué à votre projet.

    Le nom de projet n'est utilisé par aucune API Google. Vous pouvez modifier le nom d'un projet à tout moment, aussi bien pendant qu'après la création du projet. Les noms de projet ne doivent pas nécessairement être uniques.

  • ID de projet : identifiant unique global pour votre projet.

    Un ID de projet est une chaîne unique utilisée pour différencier votre projet des autres dans Google Cloud. Vous pouvez générer un ID de projet dans Google Cloud Console ou choisir le vôtre. Vous ne pouvez modifier l'ID d'un projet que lorsque vous le créez.

    Exigences relatives à l'ID de projet :

    • L'ID doit contenir entre 6 et 30 caractères.
    • L'ID ne peut contenir que des lettres minuscules, des chiffres et des traits d'union.
    • Doit commencer par une lettre.
    • Il ne peut pas se terminer par un trait d'union.
    • Il ne peut pas être déjà utilisé ou avoir été utilisé précédemment (y compris pour des projets supprimés).
    • Il ne peut pas contenir de chaînes restreintes comme google et ssl.
  • Numéro de projet : identifiant unique généré automatiquement pour votre projet.

N'incluez aucune information sensible dans le nom de votre projet, l'ID de votre projet ou les autres noms de ressources. L'ID du projet est utilisé dans le nom de nombreuses autres ressources Google Cloud, et toute référence au projet ou aux ressources associées expose l'ID du projet et le nom de la ressource.

Créer un projet

Pour créer un projet, vous devez disposer de l'autorisation resourcemanager.projects.create. Cette autorisation est incluse dans des rôles tels que le rôle de créateur de projet (roles/resourcemanager.projectCreator). Ce rôle est attribué par défaut à l'ensemble du domaine d'une nouvelle organisation et aux utilisateurs de l'essai gratuit. Pour savoir comment attribuer ce rôle à des utilisateurs individuels tout en limitant l'accès à l'échelle de l'organisation, consultez la page Gérer des rôles Organisation par défaut.

Si vous ne spécifiez pas de ressource parente, une ressource parente est sélectionnée automatiquement en fonction du domaine du compte utilisateur.

Vous pouvez créer un projet à l'aide de Google Cloud Console, de Google Cloud CLI ou de la méthode projects.create().

Console

Pour créer un projet, procédez comme suit :

  1. Accédez à la page Gérer les ressources de la console Google Cloud.

    Accéder à la page "Gérer les ressources"
    Les étapes restantes s'afficheront automatiquement dans Google Cloud Console.

  2. Dans la liste déroulante Sélectionner une organisation en haut de la page, sélectionnez la ressource d'organisation dans laquelle vous souhaitez créer un projet. Si vous êtes un utilisateur de la version d'essai sans frais, vous pouvez ignorer cette étape. Cette liste n'apparaîtra pas.
  3. Cliquez sur Créer un projet.
  4. Dans la fenêtre Nouveau projet qui s'affiche, saisissez un nom de projet, puis sélectionnez un compte de facturation si nécessaire. Le nom du projet ne peut contenir que des lettres, des chiffres, des guillemets simples, des traits d'union, des espaces ou des points d'exclamation. Il doit comporter entre 4 et 30 caractères.
  5. Indiquez l'organisation ou le dossier parent dans la zone Emplacement. Cette ressource sera le parent hiérarchique du nouveau projet. Si l'option Aucune organisation est proposée, vous pouvez la sélectionner pour créer votre projet en tant que niveau supérieur de sa propre hiérarchie de ressources.
  6. Une fois les détails du nouveau projet renseignés, cliquez sur Créer.

gcloud

Pour créer un projet, utilisez la commande gcloud projects create :

gcloud projects create PROJECT_ID

PROJECT_ID correspond à l'ID du projet que vous souhaitez créer. L'ID du projet doit commencer par une lettre en minuscule et ne peut contenir que des lettres ASCII, des chiffres et des tirets. Il doit comporter entre 6 et 30 caractères.

Pour créer un projet ayant une organisation ou un dossier pour parent, utilisez les options --organization ou --folder. Comme une ressource ne peut avoir qu'un parent, seul l'un de ces indicateurs peut être utilisé.

gcloud projects create PROJECT_ID --organization=ORGANIZATION_ID

gcloud projects create PROJECT_ID --folder=FOLDER_ID

API

Certains mots ne peuvent pas être utilisés dans l'ID d'un projet créé à l'aide de la méthode projects.create(). Par exemple, ssl et google ne sont pas autorisés. Si vous utilisez l'un de ces mots, la requête renvoie une erreur INVALID_ARGUMENT.

La requête ci-dessous crée uniquement un projet et ne l'associe pas automatiquement à un compte de facturation. La méthode projects.updateBillingInfo permet de définir ou de mettre à jour le compte de facturation associé à un projet.

Requête pour créer un projet :

POST https://cloudresourcemanager.googleapis.com/v3/projects/
Authorization: *************
Content-Type: application/json

{
    "projectId": "our-project-123",
    "name": "my project",
    "labels": {
      "mylabel": "prod"
    }
}

Réponse pour la création du projet :

{
    "name": "operations/pc.123456789",
}

Requête pour l'opération Get :

GET https://cloudresourcemanager.googleapis.com/v3/operations/pc.123456789
Authorization: *************
Content-Type: application/json

Réponse pour l'opération Get :

{
    "name": "operations/pc.123456789",
    "done": true,
    "response": {
        "@type": "type.googleapis.com/google.cloudresourcemanager.v3.Project",
        "projectNumber": "464036093014",
        "projectId": "our-project-123",
        "lifecycleState": "ACTIVE",
        "name": "my project",
        "labels": {
        "mylabel": "prod"
        },
    "createTime": "2016-01-07T21:59:43.314Z"
    }
}

Créer un projet à l'aide d'un compte de service

Vous pouvez utiliser un compte de service pour automatiser la création de projet. À l'instar des comptes utilisateur, les comptes de service peuvent se voir accorder l'autorisation de créer des projets au sein d'une organisation. Les comptes de service ne sont pas autorisés à créer des projets en dehors d'une organisation et doivent spécifier la ressource parente lors de la création d'un projet. Les comptes de service peuvent créer un projet à l'aide de la CLI gcloud ou de la méthode projects.create().

Gérer des quotas de projets

S'il vous reste moins de 30 projets dans votre quota, une notification affiche le nombre de projets restants sur la page Nouveau projet. Une fois que vous avez atteint la limite de votre projet, vous devez demander une augmentation de cette limite pour pouvoir créer d'autres projets. Vous pouvez également planifier la suppression de certains projets au bout de 30 jours sur la page Gérer les ressources. Les projets supprimés de façon réversible par les utilisateurs sont comptabilisés dans votre quota. Ces projets sont entièrement supprimés après 30 jours.

Pour demander une plus grande capacité pour les projets dans votre quota, utilisez le formulaire de demande d'augmentation de quota de projet. Pour en savoir plus sur les quotas et leur utilisation, consultez la page d'assistance concernant les demandes de quota de projets dans le cadre de l'essai gratuit. Pour en savoir plus sur les rapports de facturation, consultez la page d'assistance Rapports de facturation.

Identifier des projets

Pour interagir avec les ressources Google Cloud, vous devez fournir des informations permettant l'identification du projet pour chaque requête. Un projet est identifié par son ID de projet et son numéro de projet.

Pour obtenir l'ID et le numéro de votre projet, procédez comme suit :

  1. Accédez à la page Tableau de bord de la console Google Cloud.

    Accéder à la page "Tableau de bord"

  2. Cliquez sur la liste déroulante de sélection du projet située en haut de la page. Sélectionnez votre projet dans la fenêtre Sélectionnez une organisation qui vous est présentée.

L'ID et le numéro du projet sont tous deux affichés sur la fiche Informations sur le projet du tableau de bord du projet :

Dans l'exemple ci-dessus, le nom du projet est My Sample Project et l'ID du projet est my-sample-project-191923.

Obtenir un projet existant

Vous pouvez obtenir un projet existant à l'aide de Google Cloud Console ou de la méthode projects.get().

Console

Pour afficher un projet à l'aide de Google Cloud Console, procédez comme suit:

  1. Accédez à la page Tableau de bord dans Google Cloud Console.

    Accéder à la page "Tableau de bord"

  2. Cliquez sur la liste déroulante de sélection du projet située en haut de la page. Sélectionnez votre projet dans la fenêtre Sélectionnez une organisation qui vous est présentée.

gcloud

Pour obtenir les métadonnées d'un projet, utilisez la commande gcloud projects describe :

gcloud projects describe PROJECT_ID

PROJECT_ID correspond à l'ID du projet que vous souhaitez afficher.

API

Requête :

GET
https://cloudresourcemanager.googleapis.com/v3/projects/our-project-123

Réponse :

{
    "projectNumber": "464036093014",
    "projectId": "our-project-123",
    "lifecycleState": "ACTIVE",
    "name": "my project",
    "labels": {
        "mylabel": "prod"
    },
    "createTime": "2016-01-07T21:59:43.314Z"
}

Répertorier des projets

Répertorier tous les projets d'une ressource

Pour répertorier tous les projets qui sont des enfants directs d'une ressource, utilisez la méthode projects.list v3 avec la ressource parente spécifiée dans la requête :

Requête :

GET https://cloudresourcemanager.googleapis.com/v3/projects

{
    "parent": "folders/662951040570"
}

Réponse :

{
    "projects": [
    {
        "name": "projects/951040570662",
        "parent": "folders/662951040570",
        "projectId": "tokyo-rain-123",
        "state": "ACTIVE",
        "displayName": "Tokyo Rain"
        "createTime": "2013-11-13T20:31:53.308Z"
        "updateTime": "2013-11-13T20:31:53.308Z"
        "etag": "BwWUlZ6XEfY="
    }
    ]
}

Rechercher des projets

Pour rechercher des projets correspondant à la requête spécifiée, utilisez gcloud alpha resource-manager projects search en transmettant la requête dans l'option --query. Le champ d'application de la recherche correspond à tous les projets pour lesquels l'utilisateur dispose de l'autorisation "projects.get".

gcloud

Pour obtenir la liste de tous les projets, utilisez la commande gcloud alpha projects search:

gcloud alpha projects search --query="displayName=rek*"
<table output showing the projects with display names starting from rek eg. rekey-project-2, rekha-project>

gcloud alpha projects search --query="state:DELETE_REQUESTED"
<table output showing the projects for which delete has been requested>

API

Vous pouvez utiliser la méthode projects.search et une chaîne de requête pour renvoyer des ressources de projet spécifiques qui correspondent au filtre. Les résultats ne contiennent que des projets pour lesquels vous disposez de l'autorisation resourcemanager.projects.get.

L'extrait de code suivant renvoie la ressource de projet nommée "Tokyo Rain" :

Requête :

GET https://cloudresourcemanager.googleapis.com/v3/projects:search

{
    "displayName": "Tokyo Rain"
}

Réponse :

{
    "projects": [
    {
        "name": "projects/951040570662",
        "parent": "folders/662951040570",
        "projectId": "tokyo-rain-123",
        "state": "ACTIVE",
        "displayName": "Tokyo Rain"
        "createTime": "2013-11-13T20:31:53.308Z"
        "updateTime": "2013-11-13T20:31:53.308Z"
        "etag": "BwWUlZ6XEfY="
    }
    ]
}

L'extrait de code suivant renvoie toutes les ressources de projet présentant un libellé "red" (rouge) :

Requête :

GET
https://cloudresourcemanager.googleapis.com/v3/projects:search

{
    "labels": {
    "color": "red"
    }
}

Réponse :

{
    "projects": [
    {
        "name": "projects/951054970012",
        "parent": "folders/662951040570",
        "projectId": "Osaka-rain-234",
        "state": "ACTIVE",
        "displayName": "Osaka Rain"
        "createTime": "2013-11-13T20:31:53.308Z"
        "updateTime": "2013-11-13T20:31:53.308Z"
        "etag": "BwWUlZ6XEfY="
        "labels": {
            "color": "red"
        },
    }
    ]
}

Si vous spécifiez les champs parent.type et parent.id dans le corps de la requête, l'autorisation resourcemanager.projects.list est vérifiée au niveau du parent. Si l'utilisateur dispose de cette autorisation, tous les projets situés sous le parent seront affichés une fois les filtres restants appliqués.

Si l'utilisateur ne dispose pas de cette autorisation, tous les projets pour lesquels il dispose de l'autorisation resourcemanager.projects.get seront renvoyés une fois les filtres restants appliqués.

Si aucun filtre n'est spécifié, l'appel renvoie les projets pour lesquels l'utilisateur dispose des autorisations resourcemanager.projects.get.

Mise à jour de projets

Vous pouvez mettre à jour des projets à l'aide de Google Cloud Console ou de la méthode projects.patch().

Les seuls champs pouvant être mis à jour sont ceux du nom du projet et des libellés. Pour en savoir plus sur la mise à jour des projets, consultez la page concernant la ressource "Projet" dans la documentation de référence sur les API.

Pour déplacer un projet dans la hiérarchie de vos ressources, consultez la page Déplacer un projet. Pour migrer un projet d'une organisation à une autre, consultez la section Migrer des projets.

Console

Pour mettre à jour le nom ou les libellés d'un projet à l'aide de la console Google Cloud, procédez comme suit :

  1. Ouvrez la page "Paramètres" dans la console Google Cloud.

    Ouvrez la page "Paramètres"
    Les étapes restantes s'afficheront automatiquement dans Google Cloud Console.

  2. En haut de l'écran, cliquez sur la liste déroulante de sélection de projets.
  3. Dans la fenêtre Sélectionnez une organisation qui s'affiche, cliquez sur la liste déroulante des organisations, puis sélectionnez votre organisation. Si vous êtes un utilisateur de la version d'essai sans frais, ignorez cette étape car cette liste n'apparaîtra pas.
  4. Sélectionnez votre projet dans la liste qui apparaît.
  5. Pour changer le nom du projet, modifiez le champ Nom du projet, puis cliquez sur Enregistrer.
  6. Pour changer de libellé, cliquez sur Libellés dans le menu de navigation de gauche. En savoir plus sur l'utilisation des étiquettes

gcloud

Pour mettre à jour le nom ou les libellés d'un projet, exécutez la commande gcloud alpha projects update :

gcloud alpha projects update PROJECT_ID \
    --name=NAME \
    --update-labels=KEY=VALUE, ...

Où :

  • PROJECT_ID est l'ID du projet que vous souhaitez mettre à jour.

  • NAME est le nouveau nom que vous souhaitez attribuer au projet.

  • KEY = VALUE, ... est une liste des paires clé/valeur correspondant aux libellés que vous souhaitez mettre à jour. Si un libellé existe déjà, sa valeur est modifiée. Si ce n'est pas le cas, un libellé est créé.

Pour en savoir plus et obtenir des options supplémentaires pouvant être utilisées avec cette commande, consultez la documentation sur le SDK Google Cloud CLI.

API

Pour mettre à jour un projet, procédez comme suit :

  • Récupérez l'objet project à l'aide de la méthode projects.get.

  • Modifiez les champs que vous souhaitez mettre à jour.

  • Appelez la méthode projects.patch.

L'exemple suivant met à jour le nom du projet vers myproject et le libellé color:blue :

L'extrait de code suivant met à jour le nom du projet, qui devient "myproject" :

Requête :

PATCH https://cloudresourcemanager.googleapis.com/v3/{project.name=PROJECT_NAME}
{
  updateMask=displayName,labels
}

PROJECT_NAME correspond au nom du projet que vous souhaitez mettre à jour.

Corps JSON de la requête :

{
    "displayName": "myproject",
    "labels":
      {
        "color": "red"
      }
}

Réponse :

{
    "projects": [
    {
        "name": "projects/951054970012",
        "parent": "folders/662951040570",
        "projectId": "Osaka-rain-234",
        "state": "ACTIVE",
        "displayName": "myproject"
        "createTime": "2013-11-13T20:31:53.308Z"
        "updateTime": "2013-11-13T20:35:42.308Z"
        "etag": "BwWUlZ6XEfY="
        "labels": {
            "color": "red"
        },
    }
    ]
}

Arrêter (supprimer) des projets

Vous pouvez arrêter des projets à l'aide de Google Cloud Console ou de la méthode projects.delete dans l'API. Pour être arrêté de cette manière, un projet doit avoir un état de cycle de vie ACTIVE.

Cette méthode marque immédiatement un projet à supprimer. Un e-mail de notification est envoyé à l'utilisateur qui a initié l'opération de suppression et aux contacts de la catégorie technique répertoriés dans les contacts essentiels de la manière la plus optimale possible. Si l'envoi de la notification échoue, le projet est toujours marqué comme étant supprimé. Si aucun contact n'est défini dans la catégorie "Technique", le contact de remplacement n'est pas averti.

Un projet marqué "à supprimer" n'est pas utilisable. Si un projet de facturation est associé au projet, cette association est rompue et n'est pas réinitialisée si l'opération de suppression du projet est annulée. Passé ce délai, le projet est entièrement supprimé.

Pour arrêter le processus de suppression de projet pendant cette période de 30 jours, consultez les étapes à suivre pour restaurer un projet. Vous pouvez vérifier le nombre de jours restants dans la période de 30 jours à l'aide de la méthode gcloud projects describe de Google Cloud CLI.

À la fin de cette période de 30 jours, le projet et toutes ses ressources sont supprimés et ne peuvent pas être récupérés. Jusqu'à sa suppression, le projet est pris en compte dans votre quota de projets.

Si vous avez configuré la facturation pour un projet, il risque de ne pas être complètement supprimé tant que le cycle de facturation en cours n'est pas fini et que votre compte n'est pas débité. Le nombre et les types de services utilisés peuvent également avoir une influence sur le moment où le système supprime définitivement un projet. Pour en savoir plus sur la conservation et la suppression sécurisée des données, consultez la page Comment Google conserve-t-il les données recueillies ?.

Pour arrêter un projet, procédez comme suit :

Console

  1. Dans Google Cloud Console, accédez à la page Paramètres d'IAM et administration.

    Ouvrez la page "Paramètres"
    Les étapes restantes s'afficheront automatiquement dans Google Cloud Console.

  2. À l'onglet "Paramètres" de la page IAM et administration, cliquez sur Sélectionner un projet.
  3. Sélectionnez le projet que vous souhaitez supprimer, puis cliquez sur Ouvrir.
  4. Cliquez sur Arrêter.
  5. Saisissez l'ID du projet et cliquez sur Arrêter.

gcloud

Pour supprimer un projet, utilisez la commande gcloud projects delete :

gcloud projects delete PROJECT_ID

PROJECT_ID correspond à l'ID du projet que vous souhaitez supprimer.

API

L'extrait de code suivant supprime le projet spécifié :

Requête :

DELETE
https://cloudresourcemanager.googleapis.com/v3/projects/my-project-123

Résoudre les problèmes de suppression de projets

Si le processus d'arrêt d'un projet échoue, consultez la page Résoudre les problèmes de suppression de projets pour en savoir plus.

Restaurer un projet

Les propriétaires de projets peuvent restaurer un projet supprimé tout au long de la période de récupération de 30 jours, qui commence à l'arrêt du projet. Si vous restaurez un projet, il retrouve l'état dans lequel il se trouvait avant son arrêt, à quelques exceptions près:

  • La facturation est désactivée sur le projet lorsque le projet est arrêté et que la facturation n'est pas activée automatiquement pour les projets restaurés. Une fois le projet restauré, vous devez à nouveau associer manuellement le compte de facturation Cloud. Vous devrez peut-être attendre quelques heures avant de pouvoir associer un projet récemment restauré à un compte de facturation.
  • Vous pouvez récupérer la plupart des ressources si vous restaurez un projet sous 30 jours. Certains services présentent des retards de restauration et peuvent prendre un certain temps.
  • Certaines ressources, telles que les ressources Cloud Storage ou Pub/Sub, sont supprimées beaucoup plus tôt. Ces ressources peuvent ne pas être entièrement récupérables, même si vous restaurez le projet dans les 30 jours.
  • Certains services peuvent avoir besoin d'être redémarrés manuellement. Pour en savoir plus, consultez la page Redémarrage des services Google Cloud Platform.

Vous devez disposer de l'autorisation resourcemanager.projects.undelete sur le projet que vous souhaitez restaurer. Pour restaurer un projet :

Console

Pour afficher le projet dans Google Cloud Console, vous devez disposer des autorisations suivantes:

  • resourcemanager.projects.list
  • resourcemanager.folders.list
  • resourcemanager.projects.get

Pour restaurer un projet à l'aide de Google Cloud Console:

  1. Accédez à la page Gérer les ressources de la console Google Cloud.

    Accéder à la page "Gérer les ressources"

  2. Dans l'outil de sélection de projets situé en haut de la page, sélectionnez votre organisation.

  3. Sous la liste des organisations, des dossiers et des projets, cliquez sur Ressources en attente de suppression.

  4. Cochez la case correspondant au projet que vous souhaitez restaurer, puis cliquez sur Restaurer. Dans la boîte de dialogue qui s'affiche, confirmez que vous souhaitez restaurer le projet.

gcloud

Pour restaurer un projet, exécutez la commande gcloud projects undelete :

gcloud projects undelete PROJECT_ID

PROJECT_ID est l'ID ou le numéro du projet que vous souhaitez restaurer.

API

L'extrait de code suivant restaure le projet spécifié :

Requête :

POST
https://cloudresourcemanager.googleapis.com/v3/projects/my-project-123:undelete