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 publicdedicated- Uniquement pour les environnements dédiés IBM Cloudlocal- 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.
| 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 :
| 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).