Cette page explique comment configurer un espace de noms de l'Annuaire des services, enregistrer un service dans l'espace de noms et ajouter des points de terminaison à un service. Vous pouvez créer un espace de noms lorsque vous enregistrez un service ou avant d'enregistrer un service.
Avant d'exécuter les commandes listées sur cette page, familiarisez-vous avec les concepts de la présentation de Service Directory et les termes clés associés à l'Annuaire des services.
Configurer votre projet
- Connectez-vous à votre compte Google Cloud . Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Service Directory API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Service Directory API, if it is not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
Configurer les ressources Service Directory
Pour ajouter des services à l'Annuaire des services, créez un espace de noms et enregistrez-y votre service.
Configurer un espace de noms
Pour votre projet, créez un espace de noms dans votre région. Cette région ne doit pas nécessairement être celle où tous vos services et points de terminaison sont exécutés, mais elle doit être proche, si possible.
Vous pouvez enregistrer vos services dans n'importe quelle région de l'annuaire des services. Ils resteront résolvables à l'échelle mondiale. Dans une région, les projets peuvent avoir plusieurs espaces de noms, et ces espaces de noms peuvent se trouver dans différentes régions. Un même espace de noms ne peut pas s'étendre sur plusieurs régions.
Console
Dans la console Google Cloud , accédez à la page Espaces de noms Service Directory.
- Cliquez sur Créer un espace de noms.
- Dans la liste Région, sélectionnez une région pour votre espace de noms.
- Dans le champ Nom de l'espace de noms, attribuez un nom à l'espace de noms.
- Cliquez sur Créer.
gcloud
Pour utiliser l'Annuaire des services sur la ligne de commande, commencez par installer ou mettre à niveau la dernière version de Google Cloud CLI.
Créer un espace de noms
gcloud service-directory namespaces create NAMESPACE \ --location REGION
Remplacez les éléments suivants :
NAMESPACE: nom de l'espace de noms que vous créez.REGION: région Google Cloud contenant l'espace de noms.
Facultatif : Définissez une stratégie IAM sur votre espace de noms. Cela attribue le rôle spécifié à l'utilisateur ou au groupe spécifié pour cet espace de noms et tous les services qui lui appartiennent.
gcloud service-directory namespaces add-iam-policy-binding NAMESPACE \ --member user:someone@example.com \ --role ROLE \ --location REGION
Remplacez les éléments suivants :
NAMESPACE: nom de l'espace de noms que vous avez créé.ROLE: rôle que vous attribuez.REGION: région Google Cloud contenant l'espace de noms.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C# et installer le SDK C# Service Directory.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installer le SDK Go Service Directory.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installer le SDK Java Service Directory.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js et installer le SDK Node.js Service Directory.
PHP
Pour exécuter ce code, commencez par configurer un environnement de développement PHP et installer le SDK PHP Service Directory.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Python de l'Annuaire des services.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installez le SDK Ruby de l'Annuaire des services.
Configurer un service
Créez un service dans l'espace de noms. Un service se compose d'un nom et d'annotations facultatives liées au service. Le format des noms de service est soumis à certaines restrictions :
- Les noms de service doivent être uniques dans un espace de noms.
- Les noms de services doivent respecter la convention d'attribution de noms pour les libellés DNS.
Pour créer une règle de transfert Private Service Connect et l'enregistrer en tant que service avec l'Annuaire des services, consultez Enregistrer un point de terminaison Private Service Connect dans l'Annuaire des services.
Pour enregistrer un service standard auprès de l'annuaire des services, procédez comme suit :
Console
Dans la console Google Cloud , accédez à la page Service Directory.
- Cliquez sur Enregistrer le service.
- Cliquez sur Standard, puis sur Suivant.
- Choisissez une région dans laquelle enregistrer votre service.
- Choisissez un espace de noms dans lequel enregistrer votre service.
Si vous n'avez pas d'espace de noms, suivez ces étapes pour en créer un :
- Dans le champ Espace de noms, cliquez sur Créer un espace de noms.
- Saisissez un nom d'espace de noms.
- Cliquez sur Créer.
- Saisissez un nom de service.
- Facultatif : Si vous souhaitez ajouter des annotations au service, procédez comme suit :
- Cliquez sur Ajouter une annotation.
- Ajoutez une clé et une valeur.
- Pour ajouter d'autres annotations, cliquez à nouveau sur Ajouter une annotation.
- Cliquez sur Créer.
gcloud
Pour utiliser l'Annuaire des services sur la ligne de commande, commencez par installer ou mettre à niveau la dernière version de Google Cloud CLI.
Créez un service dans un espace de noms.
gcloud service-directory services create SERVICE \ --annotations KEY_1=VALUE_1,KEY_2=VALUE_2 \ --namespace NAMESPACE \ --location REGION
Remplacez les éléments suivants :
SERVICE: nom du service que vous créez.NAMESPACE: nom de l'espace de noms contenant votre service.REGION: région Google Cloud contenant l'espace de noms.KEY_1,VALUE_1,KEY_2,VALUE_2: chaîne de clé et de valeur définie par paires.
Facultatif : Définissez une stratégie IAM sur votre service. Cela attribue le rôle spécifié à l'utilisateur ou au groupe spécifié pour ce service et tous les points de terminaison qui lui appartiennent.
gcloud service-directory services add-iam-policy-binding SERVICE \ --member user:someone@example.com \ --role ROLE \ --namespace NAMESPACE \ --location REGION
Remplacez les éléments suivants :
SERVICE: nom que vous avez attribué à votre service.NAMESPACE: nom de l'espace de noms contenant votre service.ROLE: rôle que vous attribuez.REGION: région Google Cloud contenant l'espace de noms.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C# et installer le SDK Annuaire des services C#.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installer le SDK Go Service Directory.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installer le SDK Java Service Directory.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js et installez le SDK Node.js de l'Annuaire des services.
PHP
Pour exécuter ce code, commencez par configurer un environnement de développement PHP et installer le SDK PHP Service Directory.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installer le SDK Python Service Directory.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installer le SDK Ruby Service Directory.
Configurer un point de terminaison
Après avoir enregistré le service, ajoutez des points de terminaison. Un point de terminaison se compose d'un nom unique, d'une adresse IP et d'un port facultatifs, ainsi que d'annotations clé-valeur. L'adresse IP, si elle est spécifiée, doit être une adresse IPv4 ou IPv6 valide.
Console
Dans la console Google Cloud , accédez à la page Service Directory.
- Cliquez sur un service.
- Cliquez sur Ajouter un point de terminaison.
- Indiquez un nom de point de terminaison.
- Saisissez une adresse IP IPv4 ou IPv6.
- Saisissez un numéro de port.
- Facultatif : Si vous souhaitez ajouter des annotations au point de terminaison, procédez comme suit :
- Sous Annotations, cliquez sur Ajouter une annotation.
- Ajoutez une clé et une valeur.
- Pour ajouter d'autres annotations, cliquez à nouveau sur Ajouter une annotation.
- Cliquez sur Créer.
gcloud
Pour utiliser l'Annuaire des services sur la ligne de commande, commencez par installer ou mettre à niveau la dernière version de Google Cloud CLI.
Une fois le service enregistré, ajoutez des points de terminaison.
gcloud service-directory endpoints create ENDPOINT \ --address IP_ADDRESS \ --port PORT_NUMBER \ --annotations KEY_1=VALUE_1,KEY_2=VALUE_2 \ --service SERVICE \ --namespace NAMESPACE \ --location REGION
gcloud service-directory endpoints create ENDPOINT2 \ --address IP_ADDRESS2 \ --port PORT_NUMBER2 \ --service SERVICE \ --namespace NAMESPACE \ --location REGION
Remplacez les éléments suivants :
ENDPOINTetENDPOINT2: noms des points de terminaison que vous créez dans votre service.IP_ADDRESSetIP_ADDRESS2: adresses IPv6 et IPv4 des points de terminaison, respectivement.PORT_NUMBERetPORT_NUMBER2: ports sur lesquels les points de terminaison sont exécutés.SERVICE: nom du service qui contient votre point de terminaison.NAMESPACE: nom de l'espace de noms contenant votre service.REGION: région Google Cloud contenant l'espace de noms.KEY_1,VALUE_1,KEY_2,VALUE_2: chaîne de clé et de valeur définie par paires.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C# et installer le SDK C# Service Directory.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installez le SDK Go de l'Annuaire des services.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installer le SDK Java Service Directory.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js et installer le SDK Node.js Service Directory.
PHP
Pour exécuter ce code, commencez par configurer un environnement de développement PHP et installer le SDK PHP Service Directory.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Python de l'Annuaire des services.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installer le SDK Ruby Service Directory.
Résoudre un service
L'Annuaire des services permet aux clients de résoudre les services à l'aide de DNS, HTTP et gRPC. La résolution du service renvoie toutes les propriétés, tous les points de terminaison et toutes les annotations du service.
gcloud
Pour utiliser l'Annuaire des services sur la ligne de commande, commencez par installer ou mettre à niveau la dernière version de Google Cloud CLI.
gcloud service-directory services resolve SERVICE \ --namespace NAMESPACE \ --location REGION
Remplacez les éléments suivants :
SERVICE: nom du service que vous résolvez.NAMESPACE: nom de l'espace de noms contenant votre service.REGION: région Google Cloud contenant l'espace de noms.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C# et installer le SDK C# Service Directory.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installer le SDK Go Service Directory.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installer le SDK Java Service Directory.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js et installer le SDK Node.js Service Directory.
PHP
Pour exécuter ce code, commencez par configurer un environnement de développement PHP et installer le SDK PHP Service Directory.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installer le SDK Python Service Directory.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installer le SDK Ruby Service Directory.
Delete resources
Si vous n'avez pas besoin d'une ressource, vous pouvez la supprimer de l'Annuaire des services.
Supprimer un point de terminaison d'un service
Console
Dans la console Google Cloud , accédez à la page Annuaire des services.
- Cliquez sur le service à partir duquel vous souhaitez supprimer le point de terminaison.
- Cochez la case à côté du point de terminaison à supprimer.
- Cliquez sur Supprimer.
- Dans la boîte de dialogue de confirmation, cliquez à nouveau sur Supprimer.
gcloud
Pour utiliser l'Annuaire des services sur la ligne de commande, commencez par installer ou mettre à niveau la dernière version de Google Cloud CLI.
gcloud service-directory endpoints delete ENDPOINT \
--service=SERVICE \
--namespace=NAMESPACE \
--location=REGION
Remplacez les éléments suivants :
ENDPOINT: nom du point de terminaison que vous supprimez.SERVICE: nom du service contenant votre point de terminaison.NAMESPACE: nom de l'espace de noms contenant votre service.REGION: région Google Cloud contenant l'espace de noms.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C# et installer le SDK C# Service Directory.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installez le SDK Go de l'Annuaire des services.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Java de l'Annuaire des services.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js et installer le SDK Node.js Service Directory.
PHP
Pour exécuter ce code, commencez par configurer un environnement de développement PHP et installer le SDK PHP Service Directory.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installer le SDK Python Service Directory.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installer le SDK Ruby Service Directory.
Supprimer un service d'un espace de noms
Vous pouvez supprimer un service qui possède des points de terminaison. Lorsqu'un service est supprimé, tous ses points de terminaison sont également supprimés.
Vous pouvez supprimer un service vers lequel pointe une zone de l'Annuaire des services. Toute autre requête DNS pour ce service renvoie NXDOMAIN.
Console
Dans la console Google Cloud , accédez à la page Annuaire des services.
- Cochez la case en regard du service à supprimer.
- Cliquez sur Supprimer.
- Dans la boîte de dialogue de confirmation, cliquez à nouveau sur Supprimer.
gcloud
Pour utiliser l'Annuaire des services sur la ligne de commande, commencez par installer ou mettre à niveau la dernière version de Google Cloud CLI.
gcloud service-directory services delete SERVICE \
--namespace=NAMESPACE \
--location=REGION
Remplacez les éléments suivants :
SERVICE: nom du service que vous supprimez.NAMESPACE: nom de l'espace de noms contenant votre service.REGION: région Google Cloud contenant l'espace de noms.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C# et installer le SDK C# Service Directory.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installez le SDK Go de l'Annuaire des services.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Java de l'Annuaire des services.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js et installez le SDK Node.js de l'Annuaire des services.
PHP
Pour exécuter ce code, commencez par configurer un environnement de développement PHP et installer le SDK PHP de l'Annuaire des services.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Python de l'Annuaire des services.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installer le SDK Ruby Service Directory.
Supprimer un espace de noms
Vous pouvez supprimer un espace de noms contenant des services et des points de terminaison. Lorsqu'un espace de noms est supprimé, tous ses services et points de terminaison le sont également.
Vous pouvez supprimer un espace de noms vers lequel pointe une zone de l'Annuaire des services. Toutes les autres requêtes DNS (à l'exception des requêtes SOA/NS pour l'origine de la zone) renvoient NXDOMAIN.
Console
Dans la console Google Cloud , accédez à la page Espaces de noms Service Directory.
- Cochez la case à côté de l'espace de noms que vous souhaitez supprimer.
- Cliquez sur Supprimer.
- Dans la boîte de dialogue de confirmation, cliquez à nouveau sur Supprimer.
gcloud
Pour utiliser l'Annuaire des services sur la ligne de commande, commencez par installer ou mettre à niveau la dernière version de Google Cloud CLI.
gcloud service-directory namespaces delete NAMESPACE \
--location=REGION
Remplacez les éléments suivants :
NAMESPACE: nom de l'espace de noms que vous supprimez.REGION: région Google Cloud contenant l'espace de noms.
C#
Pour exécuter ce code, commencez par configurer un environnement de développement C# et installer le SDK C# Service Directory.
Go
Pour exécuter ce code, commencez par configurer un environnement de développement Go et installer le SDK Go Service Directory.
Java
Pour exécuter ce code, commencez par configurer un environnement de développement Java et installez le SDK Java de l'Annuaire des services.
Node.js
Pour exécuter ce code, commencez par configurer un environnement de développement Node.js et installez le SDK Node.js de l'Annuaire des services.
PHP
Pour exécuter ce code, commencez par configurer un environnement de développement PHP et installer le SDK PHP Service Directory.
Python
Pour exécuter ce code, commencez par configurer un environnement de développement Python et installez le SDK Python de l'Annuaire des services.
Ruby
Pour exécuter ce code, commencez par configurer un environnement de développement Ruby et installer le SDK Ruby Service Directory.
Étapes suivantes
- Pour configurer une zone de l'Annuaire des services afin de pouvoir interroger votre service à l'aide de DNS, consultez Configurer une zone de l'Annuaire des services.
- Pour obtenir une présentation de l'annuaire des services, consultez la Présentation de l'annuaire des services.
- Pour trouver des solutions aux problèmes courants que vous pouvez rencontrer lors de l'utilisation de l'Annuaire des services, consultez la page Dépannage.