API REST de Patrones de sistema virtual clásico

Utilice estas API REST para gestionar patrones de sistema virtual clásico.

Estas API REST se aplican a patrones de sistema virtual clásico. Para las API REST que se aplican a patrones de sistema virtual, consulte API REST de patrones de sistema virtual.

Métodos HTTP disponibles

Tabla 1. API REST para patrones de sistema virtual clásico
Método HTTP Patrón de URI Formato de fecha Códigos de operación satisfactoria Códigos de error
GET /resources/patterns application/json
200
Devuelve la lista de patrones de sistema virtual clásico que son visibles para el cliente. Si se ha proporcionado un parámetro de consulta "nombre =" , la lista de patrones de sistema virtual clásico sólo contendrá patrones cuyo nombre contenga la serie de búsqueda especificada.
403
Este código se devuelve si el solicitante no tiene acceso a la lista patrones de sistema virtual clásico.
500
Este código se devuelve si el IBM® Cloud Pak System Software ha encontrado un error interno al procesar la solicitud.
GET /resources/patterns/{id}
200
Devuelve el patrón de sistema virtual clásico asociado con el ID especificado.
403
Este código se devuelve si el solicitante no tiene acceso a la patrón de sistema virtual clásicosolicitada.
404
Este código se devuelve si no se ha definido el patrón solicitado.
500
Este código se devuelve si el IBM Cloud Pak System Software ha encontrado un error interno al procesar la solicitud.
Un patrón de sistema virtual clásico tiene los atributos siguientes:
created
Especifica la hora de creación del patrón, representada como el número de milisegundos desde la medianoche del 1 de enero de 1970 UTC. Este valor es numérico y lo genera automáticamente el sistema.
currentmessage
Especifica el mensaje asociado al estado actual del patrón. Este campo tiene un valor de serie de 8 caracteres generado automáticamente por el sistema.
currentmessage_text
Especifica la representación textual de currentmessage. Se trata de una representación en forma de serie de currentmessage en el idioma preferido del solicitante y la genera automáticamente el sistema.
currentstatus
Especifica una constante de tipo serie que representa el estado actual del patrón. Este campo tiene un valor de serie de 8 caracteres generado automáticamente por el sistema.
currentstatus_text
Especifica la representación textual de currentstatus. Se trata de una representación en forma de serie de currentstatus en el idioma preferido del solicitante y la genera automáticamente el sistema.
description
Especifica la descripción del patrón. Este campo es un valor de serie con un máximo de 1024 caracteres.
id
Especifica el ID del patrón. Este valor numérico es generado automáticamente por el sistema.
name
Especifica el nombre del patrón. Este campo es un valor de serie con un máximo de 1024 caracteres.
owner
Especifica el identificador universal de recursos (URI) del usuario que posee este patrón. El URI es relativo y se debe resolver respecto al URI del patrón.
parts
Especifica una lista que contiene una correlación por parte incluida en el patrón.
La correlación para cada componente contiene los atributos siguientes:
recuento
El número de máquinas virtuales creadas a partir de este componente cuando se despliega el patrón. Un valor nulo indica que el componente solo puede utilizarse para crear una única máquina virtual. Los componentes que pueden utilizarse para construir varias máquinas virtuales tienen un valor de entero positivo para este atributo.
description
Especifica una descripción textual del componente.
id
Especifica el ID del componente del patrón. Este valor numérico es generado automáticamente por el sistema.
label
Especifica el texto visualizable para identificar el componente.
properties
Especifica una lista que contiene una correlación por propiedad definida para el componente.
scripts
Especifica una lista que contiene una correlación por script definido para el componente.
virtualimage
Especifica el identificador universal de recursos (URI) de la imagen virtual asociada al componente. El URI es relativo y se debe resolver respecto al URI del patrón.
La correlación para cada propiedad del componente contiene los siguientes atributos:
description
Especifica una descripción textual de la propiedad.
key
Especifica una serie que identifica de forma exclusiva la propiedad dentro de la propiedad del componente
label
Especifica el texto visualizable para identificar la propiedad.
pclass
Especifica un valor de serie utilizado para identificar las propiedades relacionadas dentro de un componente. La combinación de los valores pclass y key es exclusivo para cada propiedad incluida en un componente determinado.
type
Especifica una serie que indica el tipo de valores que se podrían asignar a esta propiedad. El valor será de un tipo "serie", "entero" o "booleano".
validValues
Para las propiedades que solo están autorizadas para tener determinados valores, el atributo validValues contiene una lista de los valores que se pueden autorizar.
value
Especifica el valor predeterminado para la propiedad. El tipo de este valor depende del tipo de propiedad.
multiSelect
Especifica si la propiedad puede incluirse o no en una selección múltiple. Este campo es opcional.
password
Especifica la contraseña para la propiedad. Este campo es opcional.
locked
Especifica si la propiedad está bloqueada o no. Este campo es opcional.
requiredForDevelopment
Especifica si la propiedad es necesaria para el desarrollo o no. Este campo es opcional.
La correlación para cada script contiene los siguientes atributos:
description
Especifica una descripción textual del script.
id
Especifica el ID del script del patrón. Este valor numérico es generado automáticamente por el sistema.
label
Especifica el texto visualizable utilizado para identificar el script.
parameters
Especifica una lista que contiene una correlación por parámetro definido para el script.
La correlación para cada parámetro contiene los siguientes atributos:
key
Especifica una serie que identifica de forma exclusiva el parámetro. La clave de script es una serie con una longitud máxima de 4098 caracteres.
value
El valor predeterminado para el parámetro. Todos los parámetros tienen valores de serie con una longitud máxima de 4098 caracteres.
locked
Especifica si la propiedad está bloqueada o no. Este campo es opcional.
requiredForDeployment
Especifica si la propiedad es o no necesaria para el despliegue. Este campo es opcional.
type
Especifica una serie que indica el tipo de valores que se podrían asignar a esta propiedad. El valor será de un tipo "serie", "entero" o "booleano".
updated
Especifica la hora en que se actualizó por última vez el patrón, representada como el número de milisegundos desde la medianoche del 1 de enero de 1970 UTC. Este valor es numérico y lo genera automáticamente el sistema.
virtualsystems
Especifica la lista de URI de instancias de sistema virtual clásico utilizando este patrón. Los URI son relativos y se deben resolver respecto al URI del patrón que los contiene.

Ejemplo de GET /resources/patterns

[
   {
      "created": 1242965374865,
      "currentmessage": null,
      "currentmessage_text": null,
      "currentstatus": "RM01028",
      "currentstatus_text": "Read-only",
      "description": "Single server is a WebSphere Application Server topology 
       or part of a WebSphere Application Server Network Deployment topology.  
       The single node can be used for a development environment, or as part of 
       a multiple node, production environment in which the application 
       configuration is manually duplicated.",
      "id": 1,
      "name": "WebSphere single server",
      "owner": "/resources/users/1",
      "updated": 1242965392870,
      "virtualsystems": [
         "/resources/virtualsystems/2",
         "/resources/virtualsystems/4",
         "/resources/virtualsystems/6"
      ]
   },
   {
      "created": 1245007619361,
      "currentmessage": null,
      "currentmessage_text": null,
      "currentstatus": "RM01027",
      "currentstatus_text": "Draft",
      "description": "Test pattern",
      "id": 5,
      "name": "test pattern",
      "owner": "/resources/users/1",
      "updated": 1245007620130,
      "virtualsystems": [
      ]
   },
   etc.
]

Consulte la descripción de GET /resources/patterns/{id} para ver los detalles de atributo.

Ejemplo de GET /resources/patterns/{id}


{
   "created": 1255096393575,
   "currentmessage": null,
   "currentmessage_text": null,
   "currentstatus": "RM01027",
   "currentstatus_text": "Draft",
   "description": "Test pattern",
   "id": 10,
   "name": "test pattern",
   "owner": "/resources/users/1",
   "parts": [
      {
         "description": "Deployment manager",
         "label": "Deployment manager",
         "id": 1,
         "properties": [
            {
               "description": "Number of virtual CPUs required",
               "key": "numvcpus",
               "label": "Virtual CPUs",
               "pclass": "HWAttributes",
               "type": "integer",
               "validValues": [
                  "1",
                  "2",
                  "4"
               ],
               "value": "1"
            },
            {
               "description": "Memory size required in megabytes",
               "key": "memsize",
               "label": "Memory size (MB)",
               "pclass": "HWAttributes",
               "type": "integer",
               "value": "2048"
            },
            {
               "description": "This is the cell name of the profile",
               "key": "cell_name",
               "label": "Cell name",
               "pclass": "ConfigWAS",
               "type": "string",
               "value": "DeployerCell"
            },
            {
               "description": "This is the node name of the profile",
               "key": "node_name",
               "label": "Node name",
               "pclass": "ConfigWAS",
               "type": "string",
               "value": "DeployerNode"
            },
            {
               "description": "List of feature packs",
               "key": "augment_list",
               "label": "Feature packs",
               "pclass": "ConfigWAS",
               "type": "string",
               "validValues": [
                  "sca",
                  "none"
               ],
               "value": "none"
            },
            {
               "description": "This is the root password for the system",
               "key": "password",
               "label": "Password (root)",
               "pclass": "ConfigPWD_ROOT",
               "type": "string",
               "value": ""
            },
            {
               "description": "This is the password for the system and WebSphere account (virtuser)",
               "key": "password",
               "label": "Password (virtuser)",
               "pclass": "ConfigPWD_USER",
               "type": "string",
               "value": ""
            }
         ],
         "scripts": [
            {
               "description": "Test script",
               "id": 1,
               "label": "test script",
               "parameters": [
                  {
                     "key": "key1",
                     "value": "value1"
                  },
                  {
                     "key": "key2",
                     "value": ""
                  }
               ]
            }
         ]
         "virtualimage": "/resources/virtualImages/3"
      },
      {
         "description": "Custom nodes",
         "id": 3,
         "label": "Custom nodes",
         "properties": [
            {
               "description": "Number of virtual CPUs required",
               "key": "numvcpus",
               "label": "Virtual CPUs",
               "pclass": "HWAttributes",
               "type": "integer",
               "validValues": [
                  "1",
                  "2",
                  "4"
               ],
               "value": "1"
            },
            {
               "description": "Memory size required in megabytes",
               "key": "memsize",
               "label": "Memory size (MB)",
               "pclass": "HWAttributes",
               "type": "integer",
               "value": "2048"
            },
            {
               "description": "This is the cell name of the profile",
               "key": "cell_name",
               "label": "Cell name",
               "pclass": "ConfigWAS",
               "type": "string",
               "value": "DeployerCell"
            },
            {
               "description": "This is the node name of the profile",
               "key": "node_name",
               "label": "Node name",
               "pclass": "ConfigWAS",
               "type": "string",
               "value": "DeployerNode"
            },
            {
               "description": "This is the root password for the system",
               "key": "password",
               "label": "Password (root)",
               "pclass": "ConfigPWD_ROOT",
               "type": "string",
               "value": ""
            },
            {
               "description": "This is the password for the system and WebSphere account (virtuser)",
               "key": "password",
               "label": "Password (virtuser)",
               "pclass": "ConfigPWD_USER",
               "type": "string",
               "value": ""
            }
         ],
         "scripts": [
         ]
         "virtualimage": "/resources/virtualImages/5"
      }
   ],
   "updated": 1255096509565,
   "virtualsystems": [
   ]
}

Actualización de derechos de acceso

La llamada a la API REST para conceder acceso de usuario a una instancia requiere el ID del usuario en la interfaz de usuario, el cual se puede recuperar utilizando un GET similar al del ejemplo siguiente:
GET: https://nodename/resources/users
Para otorgar a un usuario acceso a una instancia pueden ser necesarias dos llamadas a API REST, parecidas a las del ejemplo siguiente:
POST: https://nodename/resources/instances/<instance_ID>/acl/user-<user_ID>
La operación POST otorga al usuario acceso de solo lectura a la instancia. Luego se puede realizar una llamada PUT para otorgar al usuario acceso de escritura o todo el acceso sobre la instancia:
PUT: https://nodename/resources/instances/<instance_ID>/acl/user-<user_ID>
La entrada de la llamada PUT puede tener uno de los siguientes valores numéricos:
  • 1 - acceso de solo lectura
  • 2 - acceso de escritura
  • 4 - acceso a todo/completo