JavaScript is required to for searching.
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
Red de tecnología de Oracle
Biblioteca
PDF
Vista de impresión
Comentarios
search filter icon
search icon

Información del documento

Introducción a la API de RESTful de Oracle ZFS Storage Appliance

Trabajo con la API de RESTful

Servicio de alertas de la API de RESTful

Servicios de análisis

Servicios de hardware

Comandos de log

Comandos de red

Servicio de problemas de la API de RESTful

Servicio de rol de la API de RESTful

Servicio de SAN de la API de RESTful

Comandos de servicio

Servicio de almacenamiento de la API de RESTful

Operaciones de la agrupación de almacenamiento

Mostrar agrupaciones

Obtener agrupación

Configurar agrupación

Agregar almacenamiento a una agrupación

Limpieza de agrupación

Desconfigurar agrupación

Operaciones de los proyectos

Mostrar proyectos

Obtener propiedades del proyecto

Crear proyecto

Modificar proyecto

Suprimir proyecto

Uso del proyecto

Operaciones del sistema de archivos

Mostrar sistemas de archivos

Obtener sistema de archivos

Crear sistema de archivos

Modificar sistema de archivos

Suprimir sistema de archivos

Cuota y uso del sistema de archivos

Operaciones de LUN

Mostrar LUN

Obtener LUN

Crear un LUN nuevo

Modificar LUN

Suprimir Lun

Operaciones de clonación e instantánea

Mostrar instantáneas

Obtener instantánea

Crear instantánea

Cambiar el nombre de la instantánea

Clonar instantánea

Revertir instantánea

Suprimir una instantánea

Mostrar dependientes de la instantánea

Esquema

Mostrar propiedades

Obtener propiedad

Crear propiedad

Modificar propiedad

Suprimir propiedad

Replicación

Obtener servicio de replicación

Modificar el estado del servicio de replicación

Destinos de replicación

Mostrar destinos de replicación

Obtener destino de replicación

Crear destino de replicación

Suprimir destino de replicación

Acciones de replicación

Mostrar acciones de replicación

Obtener acción de replicación

Crear acción de replicación

Modificar acción de replicación

Cancelar actualización

Enviar actualización

Suprimir una acción de replicación

Paquetes de replicación

Mostrar fuentes de replicación

Mostrar paquetes de replicación

Modificar paquete

Suprimir paquete

Cancelar actualización

Clonar paquete

Cortar paquete

Invertir paquete

Comandos del sistema

Servicio de usuario de la API de RESTful

Comandos de flujo de trabajo

Clientes RESTful

Operaciones del sistema de archivos

Lista de operaciones del sistema y gestión de recursos compartidos del sistema de archivos. Todos los comandos se pueden acotar a una agrupación de almacenamiento o a un proyecto determinados.

{service_uri}/pools/{pool}/project/{project}
Tabla 12-10  Comandos del sistema de archivos
Solicitud
Ruta /api/storage/v1
Descripción
GET
/filesystems
Mostrar todos los sistemas de archivos.
GET
/pools/<pool>/projects /<project>/filesystems
Mostrar sistemas de archivos.
GET
/pools/<pool>/projects /<project>/filesystems /<filesystem>
Obtener detalles del sistema de archivos.
POST
/pools/<pool>/projects /<project>/filesystems
Crear un sistema de archivos.
PUT
/pools/<pool>/projects /<project>/filesystems /<filesystem>
Modificar un sistema de archivos.
DELETE
/pools/<pool>/projects /<project>/filesystems /<filesystem>
Destruir un sistema de archivos.
GET
/pools/<pool>/projects /<project>/filesystems /<filesystem>/usage/groups
Obtener uso de grupo del sistema de archivos.
GET
/pools/<pool>/projects /<project>/filesystems /<filesystem>/usage/groups /<group>
Obtener uso del sistema de archivos para el grupo especificado.
POST
/pools/<pool>/projects /<project>/filesystems /<filesystem>/usage/groups
Crear cuota de grupo para un sistema de archivos.
PUT
/pools/<pool>/projects /<project>/filesystems /<filesystem>/usage/groups /<name>
Modificar cuota de grupo para un sistema de archivos.
GET
/pools/<pool>/projects /<project>/filesystems /<filesystem>/usage/users
Obtener uso de usuario del sistema de archivos.
GET
/pools/<pool>/projects /<project>/filesystems /<filesystem>/usage/users /<user>
Obtener uso del sistema de archivos para el usuario especificado.
POST
/pools/<pool>/projects /<project>/filesystems /<filesystem>/usage/users
Crear cuota de usuario para un sistema de archivos.
PUT
/pools/<pool>/projects /<project>/filesystems /<filesystem>/usage/users /<name>
Modificar cuota de usuario para un sistema de archivos.

Cada sistema de archivos contiene propiedades del proyecto y tiene las siguientes propiedades específicas del sistema de archivos.

Tabla 12-11  Propiedades del sistema de archivos
Tipo
Nombre
Descripción
string
casesensitivity
Ajuste de distinción de mayúsculas y minúsculas ("mixed", “sensitive” o “insensitive”).
string
group
El nombre del grupo.
string
normalization
Normalización.
string
permissions
Los permisos del sistema de archivos.
string
project
El nombre del proyecto
boolean
quota_snap
Marcar para incluir instantáneas en la cuota.
boolean
reservation_snap
Marcar para incluir instantáneas en la reserva.
string
shadow
Origen de migración de datos.
string
sharesmb_name
Nombre del recurso compartido de SMB.
object
source
Propiedades de herencia del proyecto.
object
usage
Información sobre el uso del sistema de archivos.
string
usuario
El nombre de usuario que posee el recurso compartido.
boolean
utf8only
Marcar para rechazar configuraciones locales no UTF-8.

Mostrar sistemas de archivos

El comando Mostrar sistemas de archivos muestra todos los sistemas de archivos de una agrupación o un proyecto determinado.

Filtro de parámetros de consulta: un filtro de coincidencia de cadenas simple que requiere una propiedad dentro del proyecto para contener la misma cadena de filtros dentro de su valor.

Tabla 12-12  Parámetros del URI
Parámetro
Descripción
pool
Nombre de agrupación de almacenamiento
project
El nombre del proyecto

Ejemplo de solicitud:

GET /api/storage/v1/pools/gold/projects/proj-01/filesystems HTTP/1.1
Host: zfs-storage.example.com
Accept: application/json

La solicitud correcta devuelve HTTP Status 200 (OK) (estado HTTP 200 [correcto]) junto con una matriz de propiedades del sistema de archivos en formato JSON.

Resultado de ejemplo:

HTTP/1.1 200 OK
Content-Type: application/json

{
    “filesystems”: [{
        “name”: “filesystem-01”,
        “project”: “proj-01”,
        “pool”: “gold”,
        ...
    }, {
        “name”: “filesystem-02”,
        “project”: “proj-01”,
        “pool”: “gold”,
        ...
    }]
}

También se admite una lista de todos los sistemas de archivos de todas las agrupaciones y proyectos. En ese caso, el URI será /api/storage/v1/filesystems.

Solicitud de ejemplo (para obtener todos los sistemas de archivos con la cadena "abcd" como parte de sus propiedades):

GET /api/storage/v1/filesystems?filter=abcd HTTP/1.1
Host: zfs-storage.example.com
Accept: application/json

Obtener sistema de archivos

El comando obtener sistema de archivos devuelve las propiedades del sistema de archivos en una agrupación o en un proyecto determinados.

Tabla 12-13  Parámetros del URI
Parámetro
Descripción
pool
Nombre de agrupación de almacenamiento
project
El nombre del proyecto
filesystem
El nombre del sistema de archivos

Ejemplo de solicitud (para visualizar un proyecto denominado "proj-01"):

GET /api/storage/v1/pools/gold/projects/proj-01 HTTP/1.1
Host: zfs-storage.example.com
Accept: application/json

Un comando get correcto devuelve HTTP Status 200 (OK) (estado HTTP 200 [correcto]) junto con las propiedades del sistema de archivos en formato JSON.

Ejemplo de respuesta:

HTTP/1.1 200 OK
Content-Type: application/json

{
    "filesystem": {
        "logbias": "latency",
        "creation": "20130423T21:30:34",
        "nodestroy": false,
        "dedup": false,
        "sharenfs": "on",
        "sharesmb": "off",
        "mountpoint": "/export/grape",
        "snaplabel": "",
        "id": "424ca2ec-b3fa-df86-0000-000000000000",
        "readonly": false,
        "rrsrc_actions": [],
        "compression": "off",
        "sharetftp": "",
        "source": {
            "logbias": "default",
            "dedup": "default",
            "sharenfs": "inherited",
            "sharesmb": "off",
            "mountpoint": "inherited",
            "rrsrc_actions": "local",
            "compression": "default",
            "sharetftp": "inherited",
            "snapdir": "default",
            "aclmode": "default",
            "copies": "default",
            "aclinherit": "default",
            "shareftp": "inherited",
            "readonly": "default",
            "secondarycache": "default",
            "exported": "inherited",
            "vscan": "default",
            "reservation": "local",
            "atime": "default",
            "recordsize": "default",
            "checksum": "inherited",
            "sharesftp": "inherited",
            "nbmand": "default",
            "rstchown": "default"
        },
        "snapdir": "hidden",
        "aclmode": "discard",
        "copies": 1,
        "aclinherit": "restricted",
        "shareftp": "",
        "canonical_name": "platinum/local/default/grape",
        "recordsize": 131072.0,
        "usage": {
            "available": 880395477504.0,
            "loading": false,
            "quota": 0.0,
            "snapshots": 18432.0,
            "compressratio": 100.0,
            "reservation": 0.0,
            "total": 50176.0,
            "data": 31744.0
        },
        "secondarycache": "all",
        "collection": "local",
        "exported": true,
        "vscan": false,
        "reservation": 0.0,
        "shadow": "none",
        "atime": true,
        "pool": "platinum",
        "quota_snap": true,
        "name": "grape",
        "checksum": "fletcher4",
        "project": "default",
        "sharesftp": "",
        "nbmand": false,
        "reservation_snap": true,
        "sharedav": "",
        "rstchown": true
    }
}

Crear sistema de archivos

El comando de creación de sistema de archivos de proyecto crea un sistema de archivos con un nombre determinado que reside en una agrupación de almacenamiento o un proyecto determinados. Se devuelve el sistema de archivos nuevo con propiedades predeterminadas.

Tabla 12-14  Parámetros del URI
Parámetro
Descripción
pool
Nombre de agrupación de almacenamiento
project
El nombre del proyecto
filesystem
El nombre del sistema de archivos

Solicitar parámetros:

Ejemplo de solicitud (para crear un sistema de archivos denominado "share-01" y propiedad del usuario "joe"):

POST /api/storage/v1/pools/gold/projects/proj-01/filesystems HTTP/1.1
Host: zfs-storage.example.com
Content-Type: application/json
Accept: application/json

{
    “name”: “share-01”,
    “owner”: “joe”
}

La creación satisfactoria devuelve HTTP Status 201 (Created) (estado HTTP 201 [creado]) con el encabezado de ubicación que contiene el URI del sistema de archivos nuevo. El cuerpo contiene todas las propiedades del sistema de archivos en formato JSON.

Ejemplo de respuesta:

HTTP/1.1 201 Created
Content-Type: application/json
Location: /api/storage/v1/pools/gold/projects/proj-01/filesystems/share-01

{
    “filesystem”: {
        “name”: “share-01”,
        “pool”: “gold”,
        “collection”: “local”,
        “project”: “proj-01”,
        “owner”: “joe”
        ...
    }
}

Modificar sistema de archivos

El comando de modificación de sistema de archivos cambia los atributos de un sistema de archivos existente. La respuesta satisfactoria devuelve HTTP Status 202 (Accepted) (estado HTTP 202 [aceptado]) y muestra todas las propiedades del sistema de archivos.

Solicitar parámetros (propiedades del sistema de archivos): se puede modificar cualquiera de las propiedades del sistema de archivos o del proyecto.

Tabla 12-15  Parámetros del URI
Parámetro
Descripción
pool
Nombre de agrupación de almacenamiento
project
El nombre del proyecto
filesystem
El nombre del sistema de archivos

Ejemplo de solicitud (para cambiar el nombre de un sistema de archivos de "share-01" a "new-name" y el propietario a "nobody"):

PUT /api/storage/v1/pools/gold/projects/proj-01/filesystems/share-01
    HTTP/1.1
Host: zfs-storage.example.com
Content-Type: application/json
Accept: application/json

{
    “name”: “new-name”,
    “owner”: “nobody”,
}

Ejemplo de respuesta:

HTTP/1.1 202 Accepted
Content-Type: application/json
Location: http://zfs-storage.example.com:215
          /pools/gold/projects/proj-01/filesystems/share-01

{
    “filesystem”: {
        “name”: “new-name”,
        “pool”: “gold”,
        “collection”: “local”,
        “project”: “proj-01”,
        “owner”: “nobody”
        ...
    }
}

Suprimir sistema de archivos

El comando suprimir sistema de archivos elimina un solo sistema de archivos de una agrupación o un proyecto determinados.

Tabla 12-16  Parámetros del URI
Parámetro
Descripción
pool
Nombre de agrupación de almacenamiento
project
El nombre del proyecto
filesystem
El nombre del sistema de archivos

Ejemplo de solicitud:

DELETE /api/storage/v1/pools/gold/projects/proj-01/filesystems/share-01
       HTTP/1.1
Host: zfs-storage.example.com
Accept: application/json

La supresión satisfactoria devuelve HTTP Status 204 (No Content) (estado HTTP 204 [sin contenido]).

Ejemplo de respuesta:

HTTP/1.1 204 No-Content

Cuota y uso del sistema de archivos

Se pueden crear o modificar cuotas de usuario o de grupo con solicitudes POST o PUT, respectivamente. Las solicitudes GET para los recursos de uso del sistema de archivos se usan para obtener datos de uso por usuario o por grupo para el proyecto.