Noms de ressource de cloud

Un nom de ressource de cloud permet d'identifier des ressources IBM Cloud® de manière unique. Un nom de ressource de cloud permet de spécifier une ressource sans aucune ambiguïté et de garantir qu'elle est unique.

Un nom de ressource de cloud est constitué d'une concaténation de "segments" qui identifient hiérarchiquement la ressource, son emplacement et le service auquel elle appartient. Le délimiteur de segment est défini sur un signe deux-points (:). Toutes les CRN commencent par l'identificateur de segment crn.

Format CRN (nom de ressource de cloud)

Le format canonique de base d'un nom de ressource de cloud est le suivant :

crn:version:cname:ctype:service-name:location:scope:service-instance:resource-type:resource

version

Le segment version identifie la version du format de nom de ressource de cloud. Actuellement, la seule valeur de segment de version valide est v1.

cname

Le segment cname identifie l'instance cloud et est un identificateur alphanumérique identifiant de manière unique l'instance cloud qui contient la ressource. Un segment cname identifie véritablement un plan de contrôle indépendant auquel appartient la ressource identifiée. La valeur du segment cname doit être bluemix pour les utilisateurs IBM Cloud.

ctype

Le segment ctype identifie le type d'instance de cloud représentée par le segment cname spécifié.

Valeurs valides :

  • public - Tous les services disponibles du catalogue public
  • dedicated - Uniquement pour les environnements dédiés IBM Cloud
  • local - Tous les services déployés en local dans votre propre environnement

nom-service

IBM Cloud garantit l'unicité des noms de service à l'échelle mondiale. Le segment service-name identifie une fonction (service, composant ou produit) qui est proposée par le cloud. Cette capacité peut être un service fourni par un utilisateur, tels les services répertoriés dans le catalogue IBM Cloud, ou un composant d'architecture interne critique pour la fonctionnalité IBM Cloud.

Le segment service-name indique le service auquel la ressource appartient. Le segment service-name doit être alphanumérique, minuscule et ne doit pas contenir d'espaces ou de caractères spéciaux autres que -. Si vous identifiez un nom de service pour un service enfant, vous devez avoir une période . qui sépare le nom de service parent de l'enfant. Par exemple, si vous avez un service appelé iam-service et dont un enfant est appelé micro, iam-service est le service parent et iam-service.micro est considéré comme le service enfant.

Pour les services enregistrés dans le catalogue IBM Cloud, le segment service-name doit correspondre à l'un des services enregistrés auprès du service de catalogue global IBM Cloud. Il s'agit de la propriété « name » renvoyée par l'API du service de catalogue global IBM Cloud GET https://globalcatalog.cloud.ibm.com/api/v1/{id} pour l'instance de ressource correspondante, ou de la valeur « service-name » affichée par l'interface de ligne de commande (CLI): ibmcloud service offerings dans la colonne « service ».

emplacement

Secteur géographique/région/zone/centre de données de cloud où réside la ressource.

Le segment location doit être l'un des noms d'emplacement répertoriés par la commande CLI ibmcloud catalog locations.

Pour certaines ressources, aucune région n'est requise car elles peuvent être considérées comme étant globales. Dans ce cas, le segment region a la valeur global.

scope

Le segment scope identifies la restriction ou le propriétaire de la ressource. Certaines ressources ne nécessitent pas de propriétaire (elles peuvent être considérées comme étant global). Dans ce cas, le segment scope est vide (chaîne vide).

La valeur du segment scope doit être au format {scopePrefix}/{id}. scopePrefix correspond au format utilisé pour identifier le propriétaire ou la restriction. id correspond à l'identité du propriétaire ou de la restriction dans un format propre à scopePrefix.

Utilisation du champ d'application
Type de portée Préfixe de portée Utilisation Exemple
Compte a/{account id} Compte dans lequel la ressource a été créée. a/292558
Organisation o/{org guid} Organisation IBM Cloud à laquelle la ressource a été affectée. o/4716e2d1-35b7-431f-891a-b552bf0b3c66
Espace s/{space guid} Espace IBM Cloud auquel la ressource a été affectée. s/48b3cdcd-e804-4398-9032-73065863ad7c

service-instance

Le segment service-instance identifie l'instance de service de manière unique. Le format du segment service-instance varie en fonction du service. Chaque service doit documenter le format de son segment service_instance dans le cadre de ses métadonnées de service. Certains services n'ont pas d'instance car l'instance est globale et, dans ce cas, la zone service-instance est vide.

L'élément service-instance doit être composé de caractères alphanumériques minuscules. Il ne doit pas inclure d'espace ou de caractères spécial à l'exception des caractères '-' et '/'.

Par exemple, un outil DevOps de suivi et de planification d'éléments de travail peut avoir un simple ID d'instance GUID ("1234-5678-9012-3456"). Cependant, le composant de règle d'un service de groupe de mise à l'échelle automatique peut utiliser une convention de dénomination hiérarchique et avoir un segment service-id de type suivant :

c7a27f55-d35e-4153-b044-8ca9155fc467/my-test-asg1/my-scaleout-policy

Vous pouvez également vous procurer un nom de ressource de cloud à partir d'une ressource IBM Cloud à l'aide de la commande d'interface de ligne de commande suivante :

ibmcloud resource service-instance

resource-type, resource

Les valeurs des segments resource-type et resource varient en fonction du service. Chaque service DOIT indiquer, dans ses métadonnées, les types de ressources qu'il prend en charge ainsi que le format de ces ressources. Notez que si le CRN fait référence à l'instance de service, les segments « resource-type » et « resource » doivent être vides. S'il s'agit d'une référence globale au type de ressource, les segments « resource » doivent être vides.

À titre d'exemple, une image contenue dans le conteneur « receipts » d'un service « Object Storage » peut avoir une valeur « resource-type » égale à « object » et une valeur « resource » égale à « 'CustomerReceipts/clientdinner.png ». resource-type DOIT être alphanumérique, en minuscules, sans espaces ni caractères spéciaux autres que « - »

Un service peut décider que l' resource-type est facultative; dans ce cas, elle peut être omise.

resource DOIT être un GUID ou une chaîne de caractères encodée selon la syntaxe URI telle que décrite dans la RFC 3986 « Uniform Resource Identifier(URI): Generic Syntax », section 2. Le caractère « / » peut notamment être utilisé pour représenter un chemin hiérarchique.

Exemples de nom de ressource de cloud

Le tableau suivant fournit une liste d'exemples CRN :

Exemples de nom de ressource de cloud
Exemple Valeur
Agent Kubernetes crn:v1:bluemix:public:containers-kubernetes:us-south:a/59bcbfa6ea2f006b4ed7094c1a08dcdd:8042b2a8af6a4a5cbf6dbe09e07311d2:worker:kube-hou02-pa8042b2a8af6a4a5cbf6dbe09e07311d2-w1
Groupe de ressources crn:v1:bluemix:public:resource-controller:global:a/59bcbfa6ea2f006b4ed7094c1a08dcdd::resource-group:59bcbfa6ea2f006b4ed7094c1a08dcdd
Instance de service crn:v1:bluemix:public:cloud-object-storage:global:a/59bcbfa6ea2f006b4ed7094c1a08dcdd:1a0ec336-f391-4091-a6fb-5e084a4c56f4::
Compartiment crn:v1:bluemix:public:cloud-object-storage:global:a/59bcbfa6ea2f006b4ed7094c1a08dcdd:1a0ec336-f391-4091-a6fb-5e084a4c56f4:bucket:mybucket
Service enfant crn:v1:bluemix:public:resource-catalog:global:a/9d67f37fdf745e1b3cbef0ee4e6f2eda::composite:is-vpn

Pour voir des exemples d'étapes de récupération de la valeur CRN, voir Récupération de l'ID de votre instance et du nom de la ressource en nuage(CRN).