Nombres de recursos de nube
Un nombre de recurso de nube (CRN - Cloud Resource Name) identifica de forma exclusiva recursos de IBM Cloud®. Un CRN se utiliza para especificar un recurso de forma inequívoca y con garantía de que es globalmente exclusivo.
Un CRN se forma a partir de una concatenación de "segmentos" que identifican jerárquicamente el recurso, su ubicación y el servicio al que pertenece. El delimitador de segmento se establece en dos puntos (:). Todas las CRN
empiezan con el identificador de segmento crn.
Formato de CRN
El formato canónico base de un CRN es:
crn:version:cname:ctype:service-name:location:scope:service-instance:resource-type:resource
versión
El segmento version identifica la versión del formato de CRN. Actualmente, el único valor de segmento de versión válido es v1.
cname
El segmento cname identifica la instancia de nube y es un identificador alfanumérico que identifica de forma exclusiva la instancia de nube que contiene el recurso. Un cname identifica de forma eficaz un plano de control
independiente que posee el recurso identificado. El valor del segmento cname debe ser bluemix para los usuarios de IBM Cloud.
ctype
El segmento ctype identifica el tipo de instancia de nube representado por el segmento cname especificado.
Valores válidos:
public: Todos los servicios disponibles del catálogo públicodedicated: Solo para los entornos dedicados de IBM Cloud actualeslocal: Todos los servicios desplegados localmente en su propio entorno
nombre-servicio
IBM Cloud garantiza la unicidad global de los nombres de los servicios. El segmento service-name identifica una prestación (servicio, componente o producto) que ofrece la nube. La funcionalidad puede ser un servicio proporcionado
por el usuario, como con los servicios listados en el catálogo de IBM Cloud o un componente de arquitectura interno crítico para la funcionalidad de IBM Cloud.
El segmento service-name indica el servicio al que pertenece el recurso. El segmento service-name debe ser alfanumérico, en minúsculas y no tener espacios ni caracteres especiales que no sean -. Si está
identificando un nombre de servicio para un servicio hijo, debe tener un periodo . que separe el nombre del servicio padre del hijo. Por ejemplo, si tiene un servicio llamado iam-service y un hijo del mismo se llama
micro, iam-service es el servicio padre y iam-service.micro se considera el servicio hijo.
En el caso de los servicios registrados en el catálogo IBM Cloud, el segmento service-name debe corresponder a uno de los servicios registrados en el servicio de catálogo global IBM Cloud. Se trata de la propiedad « name » que devuelve la API del servicio de catálogo global IBM Cloud GET https://globalcatalog.cloud.ibm.com/api/v1/{id} para la instancia de recurso correspondiente, o del valor « service-name » que muestra la interfaz
comando (CLI): ibmcloud service offerings en la columna « service ».
ubicación
La geografía, región, zona o centro de datos de nube donde reside el recurso.
El segmento location debe ser uno de los nombres de ubicación listados por el mandato de CLI de ibmcloud catalog locations.
Algunos recursos no requieren una región, ya que pueden considerarse global. En este caso, el segmento region se establece en global.
alcance
El segmento scope identifica la contención o propietario del recurso. Algunos recursos no requieren un propietario (pueden considerarse global). En este caso, el segmento scope está vacío (una serie en
blanco).
El valor del segmento scope debe tener el formato {scopePrefix}/{id}. El valor scopePrefix representa el formato utilizado para identificar al propietario o la contención. El id representa la identidad del propietario o la contención en un formato que es específico del scopePrefix.
| Tipo de ámbito | Prefijo de ámbito | Uso | Ejemplo |
|---|---|---|---|
| Cuenta | a/{account id} |
La cuenta en la que se ha creado el recurso. | a/292558 |
| Organización | o/{org guid} |
La organización de IBM Cloud a la que se ha asignado el recurso. | o/4716e2d1-35b7-431f-891a-b552bf0b3c66 |
| Espacio | s/{space guid} |
El espacio de IBM Cloud al que se ha asignado el recurso. | s/48b3cdcd-e804-4398-9032-73065863ad7c |
instancia de servicio
El segmento service-instance identifica la instancia de servicio de forma exclusiva. El formato del segmento service-instance varía en función del servicio. Cada servicio debe documentar el formato de su segmento service_instance como parte de sus metadatos de servicio. Algunos servicios no tienen instancias puesto que la instancia es global y, en ese caso, el campo service-instance está en blanco.
El service-instance debe ser alfanumérico, en minúsculas, sin espacios ni caracteres especiales que no sean '-' y '/'.
Por ejemplo, una herramienta DevOps utilizada para realizar el seguimiento y planificar elementos de trabajo puede tener un ID de instancia GUID simple ("1234-5678-9012-3456"). Pero el componente de política de un servicio
de grupo de autoscale puede utilizar un convenio de denominación jerárquica y tener el segmento service-id:
c7a27f55-d35e-4153-b044-8ca9155fc467/my-test-asg1/my-scaleout-policy
También puede obtener un CRN de un recurso de IBM Cloud utilizando el mandato de CLI siguiente:
ibmcloud resource service-instance
resource-type, resource
Los valores de los segmentos resource-type y resource varían en función del servicio. Cada servicio DEBE documentar los tipos de recursos que admite y el formato de dichos recursos como parte de los metadatos del servicio.
Ten en cuenta que, si el CRN hace referencia a la instancia de servicio, los segmentos « resource-type » y « resource » deben estar vacíos. Si hace referencia al tipo de recurso de forma global, los segmentos « resource » deben estar vacíos.
Por ejemplo, una imagen del contenedor de recibos de clientes de un servicio de Object Storage puede tener un « resource-type » de «object» y un valor de « resource » de « 'CustomerReceipts/clientdinner.png». resource-type DEBE ser alfanumérico, en minúsculas, sin espacios ni caracteres especiales, salvo el signo «-»
Un servicio puede determinar que el resource-type sea opcional, en cuyo caso puede omitirse.
resource DEBE ser un GUID o una cadena codificada según la sintaxis URI, tal y como se describe en el RFC 3986 «Identificador Uniforme de Recursos(URI): Sintaxis genérica», sección 2.
En concreto, el carácter «/» puede utilizarse para representar una ruta jerárquica.
Ejemplos de CRN
La siguiente tabla contiene una lista de ejemplos de CRN.
| Ejemplo | Valor |
|---|---|
| Nodo trabajador de Kubernetes | crn:v1:bluemix:public:containers-kubernetes:us-south:a/59bcbfa6ea2f006b4ed7094c1a08dcdd:8042b2a8af6a4a5cbf6dbe09e07311d2:worker:kube-hou02-pa8042b2a8af6a4a5cbf6dbe09e07311d2-w1 |
| Grupo de recursos | crn:v1:bluemix:public:resource-controller:global:a/59bcbfa6ea2f006b4ed7094c1a08dcdd::resource-group:59bcbfa6ea2f006b4ed7094c1a08dcdd |
| Instancia de servicio | crn:v1:bluemix:public:cloud-object-storage:global:a/59bcbfa6ea2f006b4ed7094c1a08dcdd:1a0ec336-f391-4091-a6fb-5e084a4c56f4:: |
| Grupo | crn:v1:bluemix:public:cloud-object-storage:global:a/59bcbfa6ea2f006b4ed7094c1a08dcdd:1a0ec336-f391-4091-a6fb-5e084a4c56f4:bucket:mybucket |
| Servicio hijo | crn:v1:bluemix:public:resource-catalog:global:a/9d67f37fdf745e1b3cbef0ee4e6f2eda::composite:is-vpn |
Para ver los pasos de ejemplo para recuperar el valor CRN, consulte Recuperación del ID de su instancia y del nombre del recurso en la nube(CRN).