Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2022-11-14 GMT+08:00

Creación de una instancia de notebook

Función

Esta API se utiliza para crear una instancia de notebook basada en la variante especificada, las imágenes del motor de IA y el almacenamiento. Puede acceder a la instancia a través de una página web o un cliente SSH. Llamar a esta API es una operación asincrónica. El estado de la instancia del notebook se puede obtener llamando a la API para consultar los detalles sobre esta instancia.

Restricciones

No hay

URI

POST /v1/{project_id}/notebooks

Tabla 1 Parámetros de ruta

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

ID del proyecto. Para obtener más información, consulte Obtención de un ID de proyecto.

Parámetros de solicitud

Tabla 2 Parámetros del cuerpo de solicitud

Parámetro

Obligatorio

Tipo

Descripción

description

No

String

Descripción de la instancia. El valor puede contener un máximo de 512 caracteres y no puede contener los siguientes caracteres especiales: &<>"'/. De forma predeterminada, este parámetro se deja en blanco.

duration

No

Long

Duración de la ejecución calculada a partir de la hora actual, en milisegundos. La instancia se detiene automáticamente cuando expira la duración.

endpoints

No

Array of EndpointsReq objects

IDE local (como PyCharm y vsCode) o cliente SSH para acceder remotamente a una instancia de notebook a través de SSH.

feature

No

String

Tipo de instancia. El valor predeterminado es NOTEBOOK. Opciones:

  • DEFAULT: instancia CodeLab gratuita. Solo puede crear uno.
  • NOTEBOOK: instancia facturada.

flavor

String

Variante de la instancia. Opciones:

  • modelarts.vm.cpu.2u: variantes de CPU Intel de propósito general, ideal para la exploración y pruebas rápidas de datos.
  • modelarts.vm.cpu.8u: Cómputo general-plus variantes de CPU Intel, ideal para aplicaciones informáticas intensivas.
  • modelarts.bm.gpu.v100NV32: Una GPU NVIDIA V100 con 32 GB de memoria, ideal para entrenar y depurar algoritmos de aprendizaje profundo.
  • modelarts.bm.d910.xlarge.1: One Arm-powered Ascend 910 processor with 32 GB of GPU memory, ideal for training and debugging deep learning models.
  • modelarts.bm.d910.xlarge.2: Dos procesadores Arm-powered Ascend 910, cada uno con 32 GB de memoria GPU, ideales para entrenar y depurar modelos de aprendizaje profundo.
  • modelarts.bm.d910.xlarge.8: Ocho procesadores Arm-powered Ascend 910, cada uno con 32 GB de memoria GPU, ideales para entrenar y depurar algoritmos de aprendizaje profundo.

Las variantes anteriores son solo para referencia. Las variantes disponibles en regiones específicas se muestran en la consola.

image_id

String

ID de la imagen utilizada para crear instancias de notebook. El ID está en formato de identificador único universal (UUID). Para obtener más información, véase Consulta de imágenes admitidas

name

String

Nombre de instancia, que contiene un máximo de 64 caracteres que se pueden duplicar. El nombre puede contener letras mayúsculas, minúsculas, dígitos, guiones (-) y guiones bajos (_).

pool_id

No

String

ID de un grupo de recursos dedicado, por ejemplo, pool41664192. Este parámetro es obligatorio si es necesario especificar un fondo de recursos dedicado para crear una instancia.

volume

VolumeReq object

Volumen de almacenamiento.

workspace_id

No

String

ID del espacio de trabajo. Si no hay espacios de trabajo disponibles, el valor predeterminado es 0.

Tabla 3 EndpointsReq

Parámetro

Obligatorio

Tipo

Descripción

allowed_access_ips

No

Array of strings

Direcciones IP públicas que pueden acceder de forma remota a la instancia de notebook. Se admite un máximo de cinco direcciones IP públicas.

dev_service

No

String

Servicios soportados. Opciones:

  • NOTEBOOK: Puede acceder a la instancia del notebook mediante HTTPS.
  • SSH: Puede acceder remotamente a la instancia del notebook a través de SSH.

ssh_keys

No

Array of strings

Nombre del par de claves SSH, que se puede crear y ver en la página Key Pair de la consola de Elastic Cloud Server (ECS).

Tabla 4 VolumeReq

Parámetro

Obligatorio

Tipo

Descripción

capacity

No

Integer

Capacidad de almacenamiento. El valor predeterminado es 5 GB para EVS y 50 GB para EFS. El valor máximo es de 4,096 GB.

category

String

Tipo de almacenamiento. Se admite el almacenamiento EVS.

ownership

String

Propietario al que pertenece el recurso. Opciones:

  • MANAGED: Los recursos son gestionados por servicios.
  • DEDICATED: Los recursos son administrados por la cuenta de usuario. Este modo sólo se admite cuando la categoría de instancia es EFS.

uri

No

String

URI de la EFS. Este parámetro sólo es obligatorio cuando la categoría de instancia es EFS y la propiedad es DEDICATED. Un URI de ejemplo es 192.168.0.1:/user-9sfdsdgdfgh5ea4d56871e75d6966aa274/mount/.

Parámetros de respuesta

Código de estado: 200

Tabla 5 Parámetros del cuerpo de respuesta

Parámetro

Tipo

Descripción

action_progress

Array of JobProgress objects

Progreso de inicialización de instancia.

description

String

Descripción de la instancia

endpoints

Array of EndpointsRes objects

IDE local (como PyCharm y vsCode) o cliente SSH para acceder remotamente a una instancia de notebook a través de SSH.

fail_reason

String

Causa de error de instancia

feature

String

Tipo de instancia. Opciones:

  • DEFAULT: instancia CodeLab gratuita. Solo puede crear uno.
  • NOTEBOOK: instancia facturada.

flavor

String

Variante de la instancia

id

String

ID de la instancia

image

Image object

Imagen de instancia

lease

Lease object

Cuenta atrás para detener la instancia automática.

name

String

Nombre de la instancia

pool

Pool object

Información básica sobre el grupo dedicado, que es devuelto por la instancia creada en el grupo dedicado.

status

String

Opciones de estado de instancia:

  • INIT: Se está inicializando la instancia.
  • CREATING: Se está creando la instancia.
  • STARTING: La instancia se está iniciando.
  • STOPPING: La instancia se está deteniendo.
  • DELETING: se está eliminando la instancia.
  • RUNNING: La instancia se está ejecutando.
  • STOPPED: La instancia se detiene.
  • SNAPSHOTTING: Se está tomando una instantánea para la instancia (estado cuando se guarda la imagen).
  • CREATE_FAILED: Error al crear la instancia.
  • START_FAILED: Error al iniciar la instancia.
  • DELETE_FAILED: Error al eliminar la instancia.
  • ERROR: Se ha producido un error.
  • DELETED: Se ha eliminado la instancia.
  • FROZEN: La instancia está congelada.

token

String

Token utilizado para la autenticación del notebook

url

String

URL para acceder a la instancia del notebook

volume

VolumeRes object

Volumen de almacenamiento

workspace_id

String

ID del espacio de trabajo. Si no hay espacios de trabajo disponibles, el valor predeterminado es 0.

Tabla 6 JobProgress

Parámetro

Tipo

Descripción

notebook_id

String

ID de la instancia

status

String

Estado del trabajo en un paso especificado. Opciones:

  • WAITING: El trabajo está esperando para comenzar.
  • PROCESSING: El trabajo se está procesando.
  • FAILED: El trabajo falló.
  • COMPLETED: La tarea está completa.

step

Integer

Paso de trabajo. Opciones:

  • 1: Preparación de almacenamiento.
  • 2: Preparación de recursos informáticos.
  • 3: Configuraciones de red.
  • 4: Inicialización de instancia.

step_description

String

Descripción de un paso en un trabajo.

Tabla 7 EndpointsRes

Parámetro

Tipo

Descripción

allowed_access_ips

Array of strings

Lista blanca de direcciones IP públicas a las que se les permite acceder a la instancia del cuaderno a través de SSH. De forma predeterminada, todas las direcciones IP públicas pueden acceder a la instancia de notebook. Si se especifica este parámetro, sólo los clientes con las direcciones IP especificadas pueden acceder a la instancia del notebook.

dev_service

String

Servicios soportados. Opciones:

  • NOTEBOOK: Puede acceder a la instancia del notebook mediante HTTPS.
  • SSH: Puede acceder remotamente a la instancia del notebook a través de SSH.

ssh_keys

Array of strings

Lista de pares de claves SSH. Puede establecer varios pares de claves para acceder a una instancia SSH al mismo tiempo.

Tabla 8 Image

Parámetro

Tipo

Descripción

id

String

ID de imagen

name

String

Nombre de la imagen.

swr_path

String

Dirección de imagen SWR

type

String

Tipo de imagen. Opciones:

  • BUILD_IN: imagen integrada del sistema
  • DEDICATED: imagen guardada por el usuario
Tabla 9 Lease

Parámetro

Tipo

Descripción

create_at

Long

Hora (UTC) en la que se crea la instancia, con una precisión de milisegundos.

duration

Long

Duración de ejecución de la instancia, que se calcula en función del tiempo de creación de la instancia. Si el tiempo de creación de la instancia más la duración es mayor que el tiempo actual, el sistema detiene automáticamente la instancia.

enable

Boolean

Si se activa la detención automática de la instancia.

update_at

Long

Tiempo (UTC) cuando la instancia se actualiza por última vez (excluyendo el tiempo de latido del corazón de keepalive), exacto a milisegundos.

Tabla 10 Pool

Parámetro

Tipo

Descripción

id

String

ID de un fondo de recursos dedicado

name

String

Nombre de un fondo de recursos dedicado

Tabla 11 VolumeRes

Parámetro

Tipo

Descripción

capacity

Integer

Capacidad de almacenamiento. El valor predeterminado es 5 GB para EVS y 50 GB para EFS. El valor máximo es de 4,096 GB.

category

String

Tipo de almacenamiento. Se admite el almacenamiento EVS.

mount_path

String

Directorio de la instancia de notebook en la que está montado el almacenamiento OBS. Actualmente, el directorio es /home/ma-user/work/.

ownership

String

Propietario al que pertenece el recurso. Opciones:

  • MANAGED: Los recursos son gestionados por servicios.
  • DEDICATED: Los recursos son administrados por la cuenta de usuario. Este modo sólo se admite cuando la categoría de instancia es EFS.

status

String

Estado de expansión de la capacidad del disco EVS, que es RESIZING durante la expansión de la capacidad y no afecta a la instancia.

Ejemplo de las solicitudes

{
  "name" : "notebooks_test",
  "feature" : "NOTEBOOK",
  "workspace_id" : "0",
  "description" : "api-test",
  "flavor" : "modelarts.vm.cpu.2u",
  "image_id" : "e1a07296-22a8-4f05-8bc8-e936c8e54090",
  "volume" : {
    "category" : "evs",
    "ownership" : "managed",
    "capacity" : 50
  }
}

Ejemplo de las respuestas

Código de estado: 200

OK

{
  "action_progress" : [ {
    "step" : 1,
    "status" : "WAITING",
    "description" : "Prepare the storage."
  }, {
    "step" : 2,
    "status" : "WAITING",
    "description" : "Prepare the compute resource."
  }, {
    "step" : 3,
    "status" : "WAITING",
    "description" : "Configuring the network."
  }, {
    "step" : 4,
    "status" : "WAITING",
    "description" : "Initialize the notebook instance."
  } ],
  "create_at" : 1638841744521,
  "description" : "api-test",
  "feature" : "NOTEBOOK",
  "flavor" : "modelarts.vm.cpu.2u",
  "id" : "f9937afa-4451-42db-a76b-72d624749f66",
  "image" : {
    "description" : "description",
    "id" : "e1a07296-22a8-4f05-8bc8-e936c8e54090",
    "name" : "notebook2.0-mul-kernel-cpu-cp36",
    "swr_path" : "swr.cn-north-7.myhuaweicloud.com/atelier/notebook2.0-mul-kernel-cpu-cp36:3.3.2-release_v1",
    "tag" : "3.3.2-release_v1",
    "type" : "BUILD_IN"
  },
  "lease" : {
    "create_at" : 1638841744515,
    "duration" : 3600000,
    "enable" : true,
    "update_at" : 1638841744515
  },
  "name" : "notebooks_test",
  "status" : "CREATING",
  "token" : "3eff13f2-3d70-5456-6dc7-e3f99f562022",
  "update_at" : 1638841744522,
  "workspace_id" : "0"
}

Códigos de estado

Código de estado

Descripción

200

Aceptar

201

Creado

401

Sin autorización

403

Prohibido

404

No se ha encontrado

Códigos de error

Consulte Códigos de error.