Omitir vínculos de navegación | |
Salir de la Vista de impresión | |
![]() |
Guía de API de RESTful de Oracle® ZFS Storage Appliance, versión 2013.1.3.0 |
Introducción a la API de RESTful de Oracle ZFS Storage Appliance
Servicio de alertas de la API de RESTful
Servicio de problemas de la API de RESTful
Servicio de rol de la API de RESTful
Servicio de SAN de la API de RESTful
Servicio de almacenamiento de la API de RESTful
Operaciones de la agrupación de almacenamiento
Agregar almacenamiento a una agrupación
Obtener propiedades del proyecto
Operaciones del sistema de archivos
Cuota y uso del sistema de archivos
Obtener servicio de replicación
Modificar el estado del servicio de replicación
Mostrar destinos de replicación
Obtener destino de replicación
Suprimir destino de replicación
Mostrar acciones de replicación
Modificar acción de replicación
Suprimir una acción de replicación
Mostrar fuentes de replicación
Mostrar paquetes de replicación
Todas las operaciones de instantáneas se pueden acotar a una agrupación o a un proyecto determinados. Las operaciones de instantáneas también se pueden acotar a un sistema de archivos o nivel LUN.
El URI para todas las operaciones de instantáneas basadas en proyectos comienza con: /api/storage/v1/pools/{pool}/projects/{project}
El URI para todas las operaciones de instantáneas basadas en sistemas de archivos comienza con: /api/storage/v1/pools/{pool}/projects/{project}/filesystems/{filesystem}
El URI para todas las operaciones de instantáneas basadas en LUN comienza con: /api/storage/v1/pools/{pool}/projects/{project}/luns/{lun}
|
Mostrar las instantáneas disponibles en un dispositivo. Según el URI solicitado, la lista contiene instantáneas del proyecto, del sistema de archivos o del LUN.
|
Ejemplo de solicitud:
GET /api/storage/v1/pools/gold/projects/default/snapshots Accept: application/json
Ejemplo de respuesta:
HTTP/1.1 200 OK Content-Type: application/json { "snapshots": [{ "id": "3fbbcccf-d058-4502-8844-6feeffdf4cb5", "display_name": "snap-001", “display_description": "Daily backup", "volume_id": "521752a6-acf6-4b2d-bc7a-119f9148cd8c", "status": "available", "size": 30, "created_at": "2012-02-29T03:50:07Z" }, { "id": "e479997c-650b-40a4-9dfe-77655818b0d2", "display_name": "snap-002", "display_description": "Weekly backup", "volume_id": "76b8950a-8594-4e5b-8dce-0dfa9c696358", "status": "available", "size": 25, "created_at": "2012-03-19T01:52:47Z" }] }
Ver toda la información acerca de una sola instantánea. Devuelve HTTP Status 200 (OK) (estado HTTP 200 [correcto]) cuando la solicitud es correcta.
Ejemplo de solicitud:
GET /api/storage/v1/pools/gold/projects/default/snapshots/snap-001 Accept: application/json
Ejemplo de respuesta:
HTTP/1.1 200 OK Content-Type: application/json { "snapshot": { "id": "3fbbcccf-d058-4502-8844-6feeffdf4cb5", "display_name": "snap-001", "display_description": "Daily backup", "volume_id": "521752a6-acf6-4b2d-bc7a-119f9148cd8c", "status": "available", "size": 30, "created_at": "2012-02-29T03:50:07Z" } }
El comando crear solicitud crea instantáneas para proyectos, sistemas de archivos, o LUN.
Crear instantánea de proyecto – POST /pools/{pool}/projects/{project}/snapshots
Crear instantánea de sistema de archivos – POST /pools/{pool}/projects/{project}/filesystems/{share}/snapshots
Crear instantánea de volumen – POST /pools/{pool}/projects/{project}/luns/{lun}/snapshots
Ejemplo de solicitud:
POST /api/storage/v1/pools/gold/projects/default/snapshots Content-Type: application/json {"name": "initial-backup"}
Ejemplo de respuesta:
HTTP/1.1 201 Created Content-Type: application/json Location: /pools/gold/projects/default/ snapshot/initial-backup { "snapshot": { "name": "initial-backup", "numclones": 0, "creation": "20130610T21:00:49", "collection": "local", "project": "default", "canonical_name": "gold/local/default@initial-backup", "usage": { "unique": 0.0, "loading": false, "data": 145408.0 }, "type": "snapshot", "id": "a26abd24-e22b-62b2-0000-000000000000", "pool": "gold" } }
Cambia el nombre de una instantánea existente.
Solicitar URI: instantánea, el nombre de la instantánea actual
Cuerpo de la solicitud: objeto de JSON con parámetro de nombre que contiene el nombre de una instantánea nueva
Ejemplo de solicitud:
PUT /api/storage/v1/pools/gold/projects/default/snapshots/initial-snapshot Content-Type: application/json Accept: application/json {“name”:”old-snapshot”}
Ejemplo de respuesta:
HTTP/1.1 202 Accepted Content-Type: application/json Location: /pools/gold/projects/default/snapshot/initial-backup
Crear un sistema de archivos o LUN nuevo a partir de una instantánea existente.
Solicitar sistema de archivos de clonación de URI:
PUT /pools/{pool}/projects/{project}/filesystems/{share}/snapshots/{snap}/clone
Clonar volumen:
PUT /pools/{pool}/projects/{project}/luns/{lun}/snapshots/{snapshot}/clone
|
El cuerpo de la solicitud contiene un objeto de JSON con las siguientes propiedades.
|
Ejemplo de solicitud:
PUT /api/storage/v1/pools/gold/projects/default/filesystems/fs01/ snapshots/snap01/clone {"project":"rest", "share":"snap01clone01", "compression": "gzip-9"}
Ejemplo de respuesta:
HTTP/1.1 201 Created Content-Length: 2035 X-Zfssa-Storage-Api: 1.0 Location: /api/storage/v1/pools/gold/projects/rest/filesystem/snap01clone01 Content-Type: application/json; charset=utf-8 { "filesystem": { "origin": { "project": "default", "share": "fs01", "snapshot": "snap01", "pool": "gold", "collection": "local" }, "href": "/api/storage/v1/pools/gold/projects/rest/filesystems/snap01clone01", "mountpoint": "/export/snap01clone01", "compression": "gzip-9", "source": { "compression": "local", ... }, ... "canonical_name": "gold/local/rest/snap01clone01" } }
La opción Revestir instantánea hace que el sistema de archivos o el LUN de origen vuelvan al estado que tenían en el momento en el que se tomó la instantánea. La respuesta satisfactoria devuelve HTTP Status 202 (Accepted) (estado HTTP 202 [aceptado]) además de las propiedades de la instantánea en formato JSON.
Revertir una instantánea del sistema de archivos:
PUT /pools/{pool}/projects/{project}/filesystems/{share}/snapshots/{snap}/rollback
Revertir una instantánea del LUN:
PUT /pools/{pool}/projects/{project}/luns/{lun}/snapshots/{snapshot}/rollback
|
Ejemplo de solicitud:
PUT /api/storage/v1/pools/gold/projects/default/filesystems/fs-01 /snapshots/initial-backup/rollback
Ejemplo de respuesta:
HTTP/1.1 202 Accepted Location: /pools/gold/projects/default/filesystems/fs-01/snapshot/fs-01-initial-clone Content-Type: application/json { "snapshot": { "name": "fs-01-initial-clone", "numclones": 0, "creation": "20130610T21:00:49", "filesystem": "fs-01", "collection": "local", "project": "default", "canonical_name": "gold/local/default/ fs-01@fs-01-initial-clone", "usage": { "unique": 0.0, "loading": false, "data": 31744.0 }, "type": "snapshot", "id": "5c9bda07-21c1-2238-0000-000000000000", "pool": "gold" } }
El comando de supresión de instantáneas suprime un proyecto, un sistema de archivos o una instantánea del LUN del sistema.
Suprimir una sola instantánea con la instantánea determinada - DELETE /snapshots/{snapshot_id}
Suprimir una instantánea del proyecto con el nombre de la agrupación, el nombre del proyecto y el nombre de la instantánea determinado - DELETE /pools/{pool}/projects/{project}/snapshots/{snapshot_name}
Suprimir una instantánea del sistema de archivos con el nombre de la agrupación, el nombre del proyecto, el nombre del sistema de archivos y el nombre de la instantánea determinados: DELETE /pools/{pool}/projects/{project}/filesystems/{share}/snapshots/{snapshot_name}
Suprimir un LUN del sistema de archivos con el nombre de la agrupación, el nombre del proyecto, el nombre del sistema de archivos y el nombre de la instantánea determinados: DELETE /pools/{pool}/projects/{project}/luns/{lun}/snapshots/{snapshot_name}
Ejemplo de solicitud:
PUT /pools/gold/projects/default/filesystems/fs-01/ snapshots/initial-backup HTTP/1.1
La supresión correcta devuelve el estado de HTTP 204 (No Content) (204 [sin contenido]).
HTTP/1.1 204 No-Content
Mostrar los dependientes de un sistema de archivos o de un volumen.
|
|
Ejemplo de solicitud:
GET /apistorage/v1/pools/gold/projects/default/filesystems/fs01/ snapshots/snap01/dependents Accept: application/json
Ejemplo de respuesta:
HTTP/1.1 200 OK X-Zfssa-Storage-Api: 1.0 Content-Type: application/json; charset=utf-8 X-Zfssa-Api-Version: 1.0 { "dependents": [ { "project": "rest", "href": "/api/storage/v1/pools/gold/projects/rest/filesystems/snap01clone01", "share": "snap01clone01" }, { "project": "rest", "href": "/api/storage/v1/pools/gold/projects/rest/filesystems/snap01clone02", "share": "snap01clone02" }, { "project": "rest", "href": "/api/storage/v1/pools/gold/projects/rest/filesystems/snap01clone03", "share": "snap01clone03" } ] }