Skip to end of metadata
Go to start of metadata





Indice



1 Descripción

WBSAirback dispone de una interfaz RESTful que permite gestionar una máquina WBSAirback® a través de peticiones HTTP.

Las operaciones CRUD (Create, Read, Update y Delete) sobre cada entidad se corresponden con peticiones HTTP de la siguiente manera:

URL                                 HTTP-METHOD        ACCIÓN
 ========================================================================================
 /entidad                         +   GET            => Listar elementos
 /entidad/identificador           +   GET            => Obtener un elemento
 /entidad                         +   PUT            => Añadir elemento
 /entidad                         +   POST           => Modificar elemento
 /entidad                         +   DELETE         => Eliminar elemento
 /entidad/identificador/accion    +   GET            => Realizar acción sobre un elemento


En las peticiones de tipo GET obtenemos listados, elementos o mensajes de éxito. En las peticiones tipo POST y PUT, obtenemos, además, una cabecera de redirección a la página de consulta del elemento afectado. Una petición DELETE genera un mensaje de éxito. Cuando cualquiera de ellas falla por cualquier motivo, se genera un mensaje de error.

Esta capa REST ofrece los datos por defecto en formato XML, no obstante, también puede trabajar en formato JSON. Para ello, simplemente hay que enviar una cabecera tipo: Content-Type: application/json

2 Acceso a la interfaz

La URL base para WBSAirback®, desde la cual se puede acceder a la interfaz de gestión REST es:

 http://ip.de.maquina.airback/resources

A partir de esa URL base, solamente hay que añadir el path de la operación deseada para empezar a trabajar. Por ejemplo, para obtener el listado de clientes en la máquina con ip 192.168.0.50, tendríamos:


 GET - http://192.168.0.50/resources/clients


Para utilizar la interfaz Restful, hay que autenticarse por HTTP (Basic HTTP Authentication) con alguno de los usuarios que estén registrados en el WBSAirback® en cuestión. Si se hace una primera llamada sin autenticación, se pedirán los credenciales, después se mantiene la sesión.

La autenticación básica en http consiste en codificar en base64 la cadena usuario:contraseña y enviar el resultado en una cabecera HTTP de nombre: Authorization y de contenido: Basic Base64(usuario:contraseña). Ejemplo de cabecera de autenticación HTTP:

Ejemplo
  • Datos de acceso:
    • Usuario: admin
    • Password: jorgegea
  • Cabecera HTTP:  Authorization: Basic YWRtaW46am9yZ2VnZWE=


En cuando a los permisos de acceso a esta capa REST:

Permisos
  • Podrán hacer peticiones de tipo GET usuarios con el rol REST-Lectura
  • Podrán hacer peticiones de cualquier tipo (GET, POST, PUT, DELETE) usuarios con el rol REST-Escritura
  • También podrá hacer peticiones de cualquier tipo el usuario root.


Por otro lado, cuando se envían peticiones POST o PUT con datos a la interfaz RestFul, hay que enviar alguna de estas tres cabeceras HTTP:

Content-Type: application/xml
Content-Type: text/xml
Content-Type: application/atom+xml

O bien, si se va a trabajar en formato JSON:

Content-Type: application/json
Content-Type: text/json

Solamente se interpretarán datos XML correctamente construidos, que respeten las especificaciones de la hoja XSD, cuyas peticiones contengan alguna de estas cabeceras, que estén autenticadas. Adicionalmente, el usuario solicitante ha de tener los permisos y licencias oportunas para ejecutar la operación solicitada.

3 WADL/XSD y WSDL 2.0

La hoja WADL, que lista todos los servicios disponibles indicando el método adecuado para invocarlos, la podemos consultar desde:

 http://ip.de.maquina.airback/resources/application.wadl


Esta hoja se genera dinámicamente, por lo que, en ocasiones, puede tardar algunos segundos en obtenerse.

Para consultar los esquemas de datos asociados a las entidades, los cuales definen los parámetros y restricciones de cada elemento, lo podemos hacer en:

 http://ip.de.maquina.airback/resources/application.wadl/xsd0.xsd


También se dispone de las hojas WSDL 2.0. Podemos ver el listado en este formato (además de enlaces a WADL y XSD) en la sección Sistema > Servicios Web de cualquier WBSAirback®. Es una sección pública, por lo que también podemos acceder directamente introduciendo la URL:

http://ip.de.maquina.airback/admin/WebServices

4 Petición-respuesta

Las respuestas que genera la interfaz RESTful de WBSAirback®, se presentan siempre envueltas de estas etiquetas

<wbsairback>
  <response>
  </response>
 </wbsairback>


Dentro del elemento <response> podemos tener una de las siguientes opciones:

Opciones
  1. Listado de elementos (<jobs> <job></job> <job></job> … <jobs>)
  2. Descripción de un elmento (<job><name>job1</name> … </job>)
  3. Valor concreto de alguna propiedad (<serialNumber>ADASDFD1ASDF</serialNumber>)
  4. Mensaje de confirmación (<success>El elemento se borró correctamente</success>)
  5. Mensaje de error (<error>Se produjo en error al intentar … </error>)


En el caso de las peticiones, por el momento, se interpretan solamente en formato xml que respeten el formato establecido por las hojas xsd. Por ejemplo, para guardar un nuevo job, acompañaríamos la petición HTTP PUT correspondiente con un contenido así:

<jobScheduled>
   <jobName>job1</jobName>
   <clientName>clienteWindowsXP</clientName>
   <level>Full</level>
    ....
 </jobScheduled>


5 Probando el servicio

La manera más sencilla de testear la aplicación y comprobar ciertas peticiones o respuestas directamente, es utilizando el navegador Firefox con su plugin RESTclient:

 https://addons.mozilla.org/en-US/firefox/addon/restclient/


Este plugin nos permite, de una manera muy sencilla, generar peticiones HTTP de todo tipo (GET, POST, PUT, DELETE …), añadirle cabeceras 'add-hoc' o cabeceras estándar (como la cabecera de autenticación) y añadir el contenido xml oportuno a cada petición. Además, permite visualizar las respuestas en diferentes formatos.

6 Listado de servicios

A continuación se describen los servicios y acciones que se pueden invocar mediante RESTful en WBSAirback®. Se exponen las urls omitiendo la url base, es decir, que para invocar cualquiera de ellos, es necesario concatenarle http://ip.de.maquina.airback/resources a la izquierda.

6.1 Servicios de Configuración

6.1.1 Gestión de usuarios


Parámetros

/users

  • GET: Obtiene el listado de usuario
  • PUT + user: Da de alta un nuevo usuario
  • POST + user: Actualiza un usuario existente

/users/{name}

  • GET: Obtiene los datos de un usuario
  • DELETE: Elimina un usuario

/users/roles

  • GET: Lista los roles de usuarios definidos en el sistema

/users/root/password/{newPassword}

  • GET: Establece un nuevo password para el usuario root

6.1.2 Configuración del sistema


Parámetros

/system/configuration

  • GET: Obtiene el objeto systemConfiguration con todos los parámetros configurados en ese momento (correo de administración, servidor snmp, etc)
  • POST + systemConfiguration: Establece nuevos parámetros de configuración para el sistema

/system/configuration/restart   o bien    /system/configuration/reboot

  • GET: Reinicia el sistema

/system/configuration/shutdown

  • GET: Apaga el sistema

/system/configuration/service

  • GET: Obtiene el listado de los servicios del sistema con su correspondiente estado (running o stopped)

/system/configuration/service/{nameService}

  • GET: Obtiene el estado de un servicio (running o stopped)

    • Los nombres de servicio posibles son: BACKUP-DIRECTOR, BACKUP-STORAGE, BACKUP-FILE, BACKUP-DATABASE, ISCSI, NFS, CIFS, FTP, WATCHDOG
    • No importa si es en minúsculas o mayúsculas

/system/configuration/service/{nameService}/start

  • GET: Inicia un servicio dado

    • Los nombres de servicio posible son: BACKUP-DIRECTOR, BACKUP-STORAGE, BACKUP-FILE, BACKUP-DATABASE, ISCSI, NFS, CIFS, FTP, WATCHDOG
    • No importa si es en minúsculas o mayúsculas

/system/configuration/service/{nameService}/stop

  • GET: Detiene un servicio dado

    • Los nombres de servicio posible son: BACKUP-DIRECTOR, BACKUP-STORAGE, BACKUP-FILE, BACKUP-DATABASE, ISCSI, NFS, CIFS, FTP, WATCHDOG
    • No importa si es en minúsculas o mayúsculas

/system/configuration/sendemail

  • GET: Envía el email de prueba


6.1.3 Configuración de red


Parámetros

/system/network/interfaces/{idInterface}

  • GET: Obtiene los datos de la interfaz de red con identificador idInterface
  • DELETE: Elimina la configuración de red asociada a la interfaz con identificador idInterface

/system/network/interfaces/configured

  • GET: Obtiene el listado de interfaces de red configuradas en el sistema

/system/network/interfaces/available

  • GET: Obtiene el listado de interfaces de red libres (no configuradas) en el sistema

/system/network/interfaces

  • GET: Obtiene el listado total de interfaces de red en el sistema (configuradas y no configuradas)
  • POST + networkInterfacesConfig: Establece la configuración de interfaces de red en el sistema

/system/network/routes

  • GET: Obtiene la configuración de rutas estáticas del sistema
  • POST + networkRoutesConfig: Establece la configuración de rutas estáticas del sistema

/routes/interface/{interface}

  • GET; Obtiene las rutas estáticas establecidas para la interfaz identificada por interface.

/nameservers

  • GET; Obtiene los servidores de nombres configurados
  • POST + networkNameServersConfig: Establece los servidores de nombres del sistema


6.1.4 Configuración del reloj


Parámetros

/system/time/date

  • GET; Obtiene la fecha actual en el sistema
  • POST + timeDate: Establece una nueva fecha

/system/time/zones

  • GET: Obtiene el listado de zonas horarias disponibles
  • POST + timeZone: Establece una zona horaria

/system/time/zones/configured

  • GET: Obtiene la zona horaria actualmente configurada

/system/time/servers

  • GET: Obtiene el listado de servidores ntp configurados
  • POST + timeServerSet: Establece una nueva configuración de servidores ntp

6.1.5 Tareas de mantenimiento


Parámetros

/system/maintenance

  • GET: Obtiene la configuración de mantenimiento actual (configuración de bd y configuración de copia de seguridad del catálogo)
  • POST + maintenanceConfiguration: Establece una nueva configuración de mantenimiento

/db/recomended

  • GET: Obtiene los datos de la configuración recomendada para WBSAirback®

/db/vacuum:

  • GET: Ejecuta el proceso de vacunación y generación de índices en la BD

/import/share/{share}:

  • GET: Importa la configuración del catálogo que esté contenida en el volumen compartido share

/export/share/{share}:

  • GET: Exporta la configuración del catálogo al volumen compartido share.

/password/storage   o bien    /password/sd

  • GET: Obtiene la contraseña que deben utilizar los repositorios para contactar con el servicio director de airback

/password/client      o bien     /password/fd

  • GET: Obtiene la contraseña del cliente de backup de WBSAirback® (airback-fd)

/alive

  • GET: Consulta para comprobar si el equipo está activo

/alerts

  • GET: Obtiene el listado de alertas de Watchdog activas en el sistema

/memory

  • GET: Obtiene el estado de memoria del equipo

/cpu

  • GET: Obtiene el estado de carga y cpu del equipo

/network

  • GET: Lista las interfaces de red, sus estados y sus niveles de transferencia puntuales y acumulados

/network/{interface}

  • GET: Obtiene el estado de una interfaz de red concreta

/ha

  • GET: Obtiene el estado de los servicios asociados a HA, si está configurado; DRBD, estado de sincronización DRBD, Heartbeat (HA), rol del nodo, lista de nodos activos, estado CMAN..

/vdisks

  • GET: Obtiene el listado de VDISKS asociado a controladoras RAID del sistema.

/vdisks/{controllerId}/{vdiskId}/init

  • GET: Lanza un proceso de chequeo de consistencia para el VDISK identificado por el controlador de id: controllerId y el vdisk de id: vdiskId

/vdisks/{controllerId}/{vdiskId}/cancel

  • GET: Cancela un proceso de chequeo de consistencia activo para el VDISK identificado por el controlador de id: controllerId y el vdisk de id: vdiskId


6.1.6 Configuración de proxy


Parámetros

/system/proxy

  • GET: Obtiene la configuración de proxy
  • POST + proxy: Establece una nueva configuración de proxy
  • DELETE: Elimina la configuración actual de proxy

6.1.7 Servicios de actualización


Parámetros

/update

  • GET: Obtiene el listado de licencias registradas en el producto

/update/upgrade

  • GET: Lanza una actualización total del sistema (si hay paquetes para actualizar)

6.1.8 Servicios de subscripción


Parámetros

/subscription/serial

  • GET: Obtiene el número de serie del producto

/subscription/register:

  • GET: Obtiene el estado actual de registro del producto

/subscription/register/account/{account}

  • GET: Registra una nueva cuenta de producto

/subscription/support/connect

  • GET: Se conecta a la VPN de soporte remoto

/subscription/support/disconnect

  • GET: Desconecta la VPN de soporte remoto

/subscription/licenses

  • GET: Obtiene el listado de licencias registradas actualmente para este producto

/subscription/licenses/register/{code}

  • GET: Registra una nueva licencia


6.1.9 Auditoría

Parámetros

/system/auditory/actions

  • GET: Obtiene el listado de acciones de auditoría del sistema
  • Filtros:
    • page (int) y rows (int): permiten paginar el resultado.
    • date_from (string): fecha desde en formato yyyy-MM-dd_HH:mm:ss
    • date_to (string):  fecha hasta en formato yyyy-MM-dd_HH:mm:ss
    • type (string): tipo de entrada (WEB o REST)
    • user (string): usuario
    • origin (string): ip origen de la llamada
    • operation (string): opearción ejecutada
    • url (string): url completa que se invocó

/system/auditory/alerts

  • GET: Obtiene el listado histórico de alertas del sistema
  • Filtros:
    • page (int) y rows (int): permiten paginar el resultado.
    • date_from (string): fecha desde en formato yyyy-MM-dd_HH:mm:ss
    • date_to (string):  fecha hasta en formato yyyy-MM-dd_HH:mm:ss
    • subject (string): resumen/asunto de alerta
    • message (string); mensaje de alerta completo

6.2 Servicios de Backup

6.2.1 Gestión de clientes


Parámetros

/clients

  • GET: Obtiene el listado de clientes
  • PUT + client: Añade un nuevo cliente de backup.
    • Opcional: Auto despliegue de agente => /clients?deployUsername={user}&&deployPassword={password}. Se intentará el autodespliegue y autoconfiguración del agente en el cliente configurado
  • POST + client:
    • Opcional: Auto despliegue de agente => /clients?deployUsername={user}&&deployPassword={password}. Se intentará el autodespliegue y autoconfiguración del agente en el cliente configurado

/clients/find/name/{clientName}

  • GET: Busca por nombre un cliente y devuelve sus datos asociados

/clients{clientId}

  • GET: Obtiene los datos de un cliente con identificador clientId.
  • DELETE: Elimina un cliente con identificador clientId

/clients/checkonline/{clientid}

  • GET: Comprueba si se puede conectar con un cliente con identificador clientID

/clients/status/{clientName}

  • GET: Comprueba el estado del cliente nombrado 'clientName'. Devuelve los plugins instalados, jobs en ejecución, su conexión, la versión de Bacula instalada  y la fecha de inicio del demonio. 


6.2.2 Gestión de categorías


Parámetros

/categories

  • GET: Obtiene el listado de categorías definidas
  • PUT + category: Añade una nueva categoría
  • POST + category: Modifica una categoría

/categories/{name}

  • GET: Obtiene una categoría con nombre name.
  • DELETE: Elimina una categoría con nombre name.


6.2.3 Gestión de patrones de ficheros


Parámetros

/filesets

  • GET: Obtiene el listado de todos los filesets definidos en el sistema
  • PUT + fileset: Añade un nuevo fileset
    • Con este método se pueden dar de alta los siguientes tipos de filesets:
      • Standard de Cliente: Ficheros, SystemState, Exchange, Hyper-V, MssqlServer, Delta
      • Locales
      • NDMP
      • VMWare
  • POST + fileset: Modifica un fileset
    • Con este método se pueden modificar los siguientes tipos de filesets:
      • Standard de Cliente: Ficheros, SystemState, Exchange, Hyper-V, MssqlServer, Delta
      • Locales
      • NDMP
      • VMWare

/filesets/oracle

  • PUT + filesetOracle: Añade un nuevo fileset oracle
  • POST + filesetOracle: Modifica un fileset oracle

/filesets/netappacc

  • PUT + filesetNetappAccelerator: Añade un nuevo fileset netapp accelerator
  • POST + filesetNetappAccelerator: Modifica un fileset netapp accelerator

/filesets/mysql

  • PUT + filesetMysql: Añade un nuevo fileset mysql
  • POST + filesetMysql: Modifica un fileset mysql

/filesets/postgresql

  • PUT + filesetPostgresql: Añade un nuevo fileset postgresql
  • POST + filesetPostgresql: Modifica un fileset postgresql

/filesets/mssqlvdi

  • PUT + filesetMssqlvdi: Añade un nuevo fileset mssql-vdi
  • POST + filesetMssqlvdi: Modifica un fileset mssql-vdi

/filesets/ndmp

  • GET: Obtiene los filesets de tipo ndmp

/filesets/local

  • GET: Obtiene los filesets de tipo local

/filesets/vmware

  • GET: Obtiene los filesets de tipo vmware

/filesets/rhv

  • GET: Obtiene todos los filesets de tipo rhv
  • PUT: Añade un nuevo fileset rhv
  • POST + nameFileset: Modifica el fileset seleccionado en 'nameFileset'. Permite modificar todo excepto el nombre y cliente.

/filesets/rhv/{name}/tree/{path}

  • GET: Obtiene la lista de elementos que se especifica en el {path} de un determinado fileset. Este path se encuentra bajo la estructura RHV.

/filesets/docker

  • GET: Obtiene todos los filesets de tipo docker
  • PUT: Añade un nuevo fileset docker
  • POST + nameFileset: Modifica el fileset seleccionado en 'nameFileset'. Permite modificar todo excepto el nombre y cliente.

/filesets/docker/{name}/tree/{path}

  • GET: Obtiene la lista de elementos que se especifica en el {path} de un determinado fileset. Este path se encuentra bajo la estructura Docker.

/filesets/kubernetes

  • GET: Obtiene todos los filesets de tipo kubernetes
  • PUT: Añade un nuevo fileset kubernetes
  • POST + nameFileset: Modifica el fileset seleccionado en 'nameFileset'. Permite modificar cualquier parámetro excepto el nombre y cliente.

/filesets/oracle

  • GET: Obtiene los filesets de tipo oracle

/filesets/mysql

  • GET: Obtiene los filesets de tipo mysql

/filesets/postgresql

  • GET: Obtiene los filesets de tipo postgresql

/filesets/netappacc

  • GET: Obtiene los filesets de tipo netapp accelerator

/filesets/mssqlvdi

  • GET: Obtiene los fielsets de tipo mssqlvdi

/filesets/vmware/tree

  • GET: Obtiene el árbol de elementos vmware (vcenter > host > datastore > máquina) a los que tiene acceso WBSAirback® en base a los clientes vmware configurados. Es necesaria su consulta para obtener los datos necesarios para construir los filesets Vmware o llevar a cabo recuperaciones Vmware.

/filesets/{filesetName}

  • GET: Devuelve los datos de un fileset de nombre filesetName
  • DELETE: Elimina un fileset de nombre filesetName

/files/mssql/client/{clientName}/databases

  • GET: Obtiene el listado de bases de datos de las que se tiene algún backup para el cliente clientName. Este listado muestra el nombre, fileset y PATH de cada base de datos. El PATH es necesario para lanzar recuperaciones

/files/mssql/client/{clientName}/databases/{databasePath}/jobs

  • GET: Obtiene el listado de versiones (jobs) de cierta base de datos determinada por databasePath (el formato es INSTANCIA___NOMBREBBDD y se puede obtener del método anterio). Su consulta es necesaria para encontrar el identificador de versión deseado en una recuperación por versión.

/files/mssql/client/{clientName}/restore/version/{level}

  • POST + restoreMSSQLVDI: Lanza una recuperación por versión para el cliente clientName.
    • El parámetro level indica el tipo de recuperación: full, differential o pitr
    • Recibe por URL el número de version: http://.....?version=123
    • El resto de parámetros se especifican en el objeto restoreMSSQLVDI

/files/mssql/client/{clientName}/restore/date/{level}

  • POST + restoreMSSQLVDI: Lanza una recuperación por fecha para el cliente clientName.
    • El parámetro level indica el tipo de recuperación: full, differential o pitr
    • Recibe por URL la fecha de recuperación: http://.....?date=yyyy-MM-dd_HH:mm:ss
    • El resto de parámetros se especifican en el objeto restoreMSSQLVDI


6.2.4 Gestión de planificaciones


Parámetros

/schedules/{scheduleName}

  • DELETE: Elimina la planificación con nombre scheduleName

/schedules/monthly

  • GET: Obtiene el listado de planificaciones mensuales configuradas
  • PUT + scheduleMonthly: Añade una nueva planificación mensual
  • POST + scheduleMonthly: Edita una planificación mensual existente

/schedules/monthly/{name}

  • GET: Obtiene todos los datos de una planificación mensual de nombre name.

/schedules/daily

  • GET: Obtiene el listado de planificaciones diarias configuradas
  • PUT + scheduleDaily: Añade una nueva planificación diaria
  • POST + scheduleDaily: Edita una nueva planificación diaria existente

/schedules/daily/{name}

  • GET: Obtiene todos los datos de una planficación diaria de nombre name.

/schedules/weekly

  • GET: Obtiene el listado de planificaciones semanales
  • PUT + scheduleWeekly: Añade una nueva planficiación semanal
  • POST + scheduleWeekly: Edita una planficiacón semanal existente

/schedules/weekly/{name}

  • GET: Obtiene todos los datos de una planificación semanal de nombre name

/schedules/yearly

  • GET: Obtiene el listado de planificaciones anuales configuradas
  • PUT + scheduleYearly:Añade una nueva planificación anual
  • POST + scheduleYearly:Edita una planificación anual existente

/schedules/yearly/{name}

  • GET: Obtiene todos los datos de una planificación anual de nombre name


6.2.5 Gestión de pools


Parámetros

/pools

  • GET: Obtiene el listado de pools del sistema
  • PUT + pool: Añade un nuevo pool
  • POST + pool: Edita un pool existente

/pools/{poolName}

  • GET: Obtiene los datos del pool de nombre poolName
  • DELETE: Elimina el pool llamado poolName

/pools/{poolName}/jobs

  • GET: Obtiene los jobs que utilizan el pool poolName

/pools/{poolName}/volumes

  • GET: Obtiene los volúmenes generados para el pool poolName

/pools/{poolName}/volumes/purge

  • GET: Lanza una operación de purgado de volúmenes para el pool poolName

/pools/{poolName}/volumes/add/volume/{nameVol}

  • GET: Añade un volumen de nombre nameVol al pool de nombre poolName, en otras palabras, añade una cinta etiquetada al pool.

/pools/{poolName}/volumes/add/volume/{nameVol}/slot/{slot}/drive/{drive}

  • GET: Añade un volumen de cita de una librería a partir de un slot y drive concretos.

/pools/{poolName}/volumes/{label}

  • DELETE: Elimina un volumen llamado label del pool poolName. Esta operación elimina los datos y los registros del catálogo.

/pools/{poolName}/volumes/{nameVol}/status/{newstatus}

  • GET: Cambia el estado de un volumen de un pool

/pool/volumes

  • GET: Devuelve el listado de volúmenes. Se puede filtrar por los siguientes parámetros:
    • pool (string): Nombre de un pool existente
    • storage (string): Nombre de un repositorio existente
    • name (string): Nombre de un volumen existente
    • status (string): Estado del volumen (Full, Append, Error, Recycled, Purged ..)
    • slot (int): Número de slot
    • retention (long): Retención asociada (en segundos)
    • type (string): MediaType asociado: LTO4, LTO5, LTO6, File, agg1-vol1-X2131331313 ...
    • firstwrite_from (string): fecha de primera escritura desde en formato yyyy-MM-dd_HH:mm:ss
    • firstwrite_to (string): fecha de primera escritura desde en formato yyyy-MM-dd_HH:mm:ss
    • lastwrite_from (string): fecha de última escritura hasta en formato yyyy-MM-dd_HH:mm:ss
    • lastwrite_to (string): fecha de última escritura hasta en formato yyyy-MM-dd_HH:mm:ss


6.2.6 Gestión de repositorios de disco


Parámetros

/storage/disks

  • GET: Obtiene el listado de repositorios de tipo disco configurados
  • PUT + storageDisk: Añade un nuevo repositorio de tipo disco al sistema
  • POST + storageDisk: Modifica un repositorio de tipo disco existente

/storage/disks/{storageName}

  • GET: Obtiene todos los datos de un repostorio de tipo disco de nombre storageName
  • DELETE: Elimina un repositorio de tipo disco llamado storageName


6.2.7 Gestión de repositorios remotos


Parámetros

/storage/remotes

  • GET: Obtiene el listado de repositorios remotos configurados
  • PUT + storageRemote: Añade un nuevo repositorio remoto al sistema
  • POST + storageRemote: Modifica un repositorio remoto existente

/storage/remotes/{storageName}

  • GET: Obtiene todos los datos de un repositorio remoto de nombre storageName
  • DELETE: Elimina un repositorio remoto llamado storageName


6.2.8 Gestión de repositorios de librería


Parámetros

/storage/libraries

  • GET: Obtiene el listado de repositorios de tipo librería configurados
  • PUT + storageLibrary: Añade un nuevo repositorio de tipo librería al sistema
  • POST + storageLibrary: Modifica un repositorio de tipo librería existente

/storage/libraries/{storageName}

  • GET: Obtiene todos los datos de un repostorio de tipo librería de nombre storageName
  • DELETE: Elimina un repositorio de tipo librería llamado storageName

/storage/libraries/{storageName}/slots

  • GET: Obtiene los slots disponibles del repositorio de tipo librería llamado storageName

/storage/libraries/{storageName}/umount/drive/{numDrive}

  • GET: Desmonta el drive numDrive del repositorio de tipo librería llamado storageName

/storage/libraries/{storageName}/mount/drive/{numDrive}/slot/{numSlot}

  • GET: Monta el slot numSlot en el drive numDrive del repositorio de tipo librería llamado storageName

/storage/libraries/{storageName}/format/drive/{numDrive}

  • GET: Formate la cinta montada en en un drive numDrive del repositorio de tipo librería llamado storageName

/storage/libraries/{storageName}/drives

  • GET: Obtiene el listado de drives de la librería

6.2.9 Gestión de repositorios de cinta


Parámetros

/storage/tapes

  • GET: Obtiene el listado de repositorios de tipo cinta configurados
  • PUT + storageTape: Añade un nuevo repositorio de tipo cinta al sistema
  • POST + storageTape: Modifica un repositorio de tipo cinta existente

/storage/tapes/{storageName}

  • GET: Obtiene todos los datos de un repositorio de tipo cinta de nombre storageName
  • DELETE: Elimina un repositorio de tipo cinta llamado storageName

/format/{storageName}

  • GET: Formatea la cinta asociada al repositorio

/mount/{storageName}

  • GET: Monta la cinta asociada al repositorio

/umount/{storageName}

  • GET: Desmonta la cinta asociada al repositorio

6.2.10 Gestión de hipervisores


Parámetros

/hypervisors

  • GET: Obtiene el listado de hipervisores definidos
  • PUT + hypervisor: Añade un nuevo hipervisor
  • POST + hypervisor: Edita un hipervisor existente

/hypervisors/{name}

  • GET: Obtiene la configuración de un hipervisor llamado name
  • DELETE: Elimina un hipervisor llamado name

/hypervisors/jobs

  • GET: Obtiene los jobs configurados de tipo hipervisor en el sistema
  • PUT + hypervisorJob: Añade un nuevo trabajo de hipervisor
  • POST+ hypervisorJob: Edita un trabajo de hipervisor existente

/hypervisors/jobs/{name}

  • GET: Obtiene la configuracion de un trabajo de tipo hipervisor de nombre name
  • DELETE: Elimina un trabajo de hipervisor de nombre name

/hypervisors/{name}/jobs

  • GET: Obtiene los jobs de hipervisor de un hipervisor llamado name

/hypervisors/{name}/machines

  • GET: Obtiene las máquinas accesibles mediante el hipervisor llamado name

/hypervisors/{hypervisorName}/machines/{machineName}

  • GET: Obtiene los datos de una maquina virtual concreta

/hypervisors/{hypervisorName}/machines/storage/{storageName}

  • GET: Obtiene las maquinas asociadas a cierto repositorio

/hypervisors/{hypervisorName}/stores

  • GET: Obtiene los datastores accesibles mediante un hipervisor de nombre hypervisorName

6.2.11 Gestión de trabajos de backup


Parámetros

/jobs

  • PUT + jobScheduled: Añade un nuevo trabajo planificado
  • POST + jobScheduled: Edita un trabajo planificado existente
    • Si no recibe listado de scripts (no se recibe etiqueta <scripts>), los scripts asociados al job no se modifican
    • Si se recibe una etiqueta scripts vacía, los scripts se eliminarían

/jobs/archieved/

  • GET: Obtiene el listado de todos los trabajos presentes en el catálogo.
    • Filtro por fechas disponible en el formato: yyyy-MM-dd_HH:mm:ss usando los siguientes parámetros:
      • starttime_from
      • starttime_to
      • endtime_from
      • endtime_to
      • realendtime_from
      • realendtime_to
      • modified_from
      • modified_to
        • Podemos usar los parámetros modifed_ para obtener los trabajos que han sido modificados desde esa fecha concreta (útil para procesos externos de lectura de jobs en equipos con infinidad de jobs en los que la query tarda mucho. De esta forma podemos obtener jobs de forma 'incremental')
    • Otros filtros:
      • pool (string): Nombre de un pool existente
      • storage (string): Nombre de un repositorio existente
      • clientName (string): Nombre de cliente asociado existente
      • type (string): Tipo de job: Backup, Copy, Migration
      • level (string): Nivel del job: Full, Incremental, Differential
      • category (string): Nombre de categoría(s)
      • status (string): Estado del job: (Running, Completed successfully, Fatal error ..)
      • page (int) y recordsByPage (int): Paginación del resultado

/jobs/archieved/deleted

  • GET: Obtiene el listado de los jobs borrados desde una fecha indicada con en parámetro 'deleted_from' en formato yyyy-MM-dd_HH:mm:ss

/jobs/archieved/client/name/{clientname}

  • GET: Obtiene el listado de trabajos presentes en el catálogo para un cliente de nombre clientname. Los clientes Vmware han de emplear este método para obtener el listado de sus jobs, ya que carecen de identificador.

/jobs/archieved/client/{clientid}

  • GET: Obtiene el listado de trabajos presentes en el catálogo para un cliente de identificador clientId

/jobs/archieved/{jobid}

  • DELETE: Elimina un trabajo con identificador jobId

/jobs/archieved/{jobname}

  • GET: Obtiene el último trabajo incorporado en el catálogo (finalizado, corriendo...) para el trabajo de nombre jobname

/jobs/archieved/id/{jobid}

  • GET: Obtiene un trabajo a partir de su identificador

/jobs/archieved/copyof/{jobid}

  • GET: A partir del jobid de un job tipo 'c' coordinador de copias, obtiene el trabajo de datos tipo 'C' asociado (si existe).

/jobs/archieved/failed

  • GET: Obtiene el listado de jobs (ejecuciones) cuya última ejecución no fue exitosa
    • parámetro failedExecutions: Número entero que indica cuántas ejecuciones fallidas consecutivas hay que considerar para incluir a un trabajo en el listado (ej: /jobs/archieved/failed?failedExecutions=2)
    • parámetro showOne: true | false: Indica si se muestra sólo una ocurrencia o todas, de cada uno de los trabajos/ejecuciones que cumplen la condición (/jobs/archieved/failed?showOne=true)

/jobs/log/{jobid}

  • GET: Obtiene el log de un job
    • parámetro text: Valor boolean (true | false) para obtener el log en formato texto. Si no se indica, se obtienen objetos tipo jobLog

/jobs/scheduled/

  • GET: Obtiene el listado de configuraciones de todos los trabajos del sistema
    • parámetro storage: Filtro por repositorio (obtener trabajos que usan el repositorio seleccionado. Ej: /jobs/scheduled?storage=STG-BACKUP-DISK-A)
    • parámetro schedule: Filtro por planificación (obtener trabajos que usan la planificación seleccionada. Ej: /jobs/scheduled?schedule=PLAN-WED-9H)
    • parámetro clientId: Filtro por cliente (obtener trabajos asociados a el cliente indicado. Ej: /jobs/scheduled?clientId=27)

/jobs/scheduled/{jobname}

  • GET: Obtiene la configuración de un trabajo de nombre jobname
  • DELETE: Elimina el trabajo configurado de nombre jobname

/jobs/scheduled/client/{clientid}

  • GET: Obtiene los trabajos configurados para el cliente de identificador clientid

/jobs/scheduled/client/name/{clientname}

  • GET: Obtiene los trabajos configurados para el cliente de nombre clientname. Los clientes Vmware han de emplear este método para obtener el listado de sus jobs, ya que carecen de identificador.

/jobs/inventory

  • GET: Obtiene el inventario de bakups del sistema. El inventario es un resumen de los jobs configurados, con datos específicos sobre el cliente asociado, repositorio y filesets. Es una lista de objetos inventoryBackup.

/jobs/inventory/{job}

  • GET: Obtiene los datos de inventario de un trabajo específico. El inventario contiene datos específicos sobre el cliente asociado, repositorio y filesets. Es un objeto inventoryBackup.

/jobs/plan

  • GET: Obtiene la planificación de todos los trabajos del sistema para los próximos N días
    • parametro days: Número de días para la obtención del plan. Si no se especifica, por defecto es 30 (ej: /jobs/plan?days=60)

/jobs/plan/{jobName}

  • GET: Obtiene la planificación del trabajo indicado para los próximos N días
    • parametro days: Número de días para la obtención del plan. Si no se especifica, por defecto es 30 (ej: /jobs/plan?days=60)

/jobs/restart/{jobid}

  • GET: Reinicia un job

/jobs/run/{jobName}

  • GET: Lanza un job
    • parámetro when: Hora de lanzamiento del job. Si no se especifica, se lanza inmediatamente. Parámetro en formato fecha yyyy-MM-dd_HH:mm:ss. Ej: /jobs/run/backupOracle?when=2018-06-12_08:00:00)
    • parámetro level: Nivel de lanzamiento del job (Full, Incremental Differential). Ej: /jobs/run/backupOracle?level=Incremental

/jobs/cancel/{jobid}

  • GET: Cancela un job

/jobs/stop/{jobid}

  • GET: Detiene/pausa un job

/jobs/prune/{clientId}

  • GET: Elimina los trabajos antiguos para el cliente de identificador clientId

/jobs/running

  • GET: Indica si hay jobs running o no con un mensaje <success>XX</success> que puede tomar los valores true o false


6.2.13 Recuperaciones


Parámetros

/files/{clientId}

  • GET: Obtiene el listado de ficheros de los que se tiene copia para el cliente de identificador clientId
    • Opcional: Se puede especificar el directorio en base al cual obtener el listado, así como parámetros de paginación con: directory, max_entries y pag.
    • El directorio ha de ir codificado en formato URL y UTF-8. Por ejemplo: 
      • Directorio: C;/Backup     |      Resultados por pagina:20       |     Pág. 2
        /files/{clientId}?directory=C%3A%2FBackup%2F&&max_entries=20&pag=2

/files/job/{jobId}

  • GET: Obtiene e listado de ficheros respaldados por el job de identificador jobId
    • Opcionales:
      • totalSize (boolean). Si se especifica (totalSize=true), se devuelve la suma total del tamaño respaldado por ese job
      • omitSizeInfo (boolean); Si se especifica (omitSizeInfo=true), se omite la información de tamaño y fecha de cada archivo. Esto aumenta enormemente el rendimiento de estas consultas
      • page (int) y recordsByPage (int): Permiten paginar el resultado para consultas de jobs muy grandes (casos VF, por ejemplo).

/files/versions/find?path=XX

  • GET: Obtiene el listado de jobs que han respaldado un path completo dado que viene especificado por la variable path.
    • Opcionales:
      • clientId (int): Identificador de cliente
      • level (string): Nivel para filtrar jobs (F, I, D..)

/files/{clientId}/jobs

  • GET: Obtiene los jobs que han hecho backup para un determinado archivo, que se indica como parámetro:
    • El archivo se indica con el parámetro file. Es posible especificar parámetros de paginación con: max_entries y pag.
    • El archivo ha de ir codificado en formato URL y UTF-8. Por ejemplo: archivo: C;/Backup     |      Resultados por pagina:20
      /files/{clientId}?file=C%3A%2FBackup%2F&&max_entries=20

/files/{clientId}/restore/version/{jobId}

  • GET: Lanza una recuperación por versión del cliente clientId, utilizando el job jobId, del archivo especificado como parámetro file (en formato URL y UTF-8)
    • Opcionales en la petición:
      • destinationClientId: Identificador del cliente donde restaurar el/los archivo/s
      • destinationPath: Path donde restaurar el/los archivo/s
      • lv: Volúmen lógico donde restaurar el/los archivos si el cliente destino es el cliente local airback-fd
      • share: Volúmen lógico compartido donde restaurar el/los archivos si el cliente destino es el cliente local airback-fd
      • prescript: Script a ejecutar antes de lanzar la restauración
      • postscript: Script a ejecutar después de lanzar la restauración
      • dependentJobs: boolean que indica si se deben buscar y aplicar los posibles trabajos dependientes a la restauración

/files/{clientId}/restore/date

  • GET: Lanza una recuperación por fecha del cliente clientId, utilizando:
    • Fecha máxima: parámetro date en formato yyyy-MM-dd_HH:mm:ss
    • Archivos: Parámetros file (en formato URL y UTF-8): http://.......?file=file1&file=file2&file=file3....
    • Opcionales en la petición:
      • destinationClientId: Identificador del cliente donde restaurar el/los archivo/s
      • destinationPath: Path donde restaurar el/los archivo/s
      • lv: Volúmen lógico donde restaurar el/los archivos si el cliente destino es el cliente local airback-fd
      • share: Volúmen lógico compartido donde restaurar el/los archivos si el cliente destino es el cliente local airback-fd
      • prescript: Script a ejecutar antes de lanzar la restauración
      • postscript: Script a ejecutar después de lanzar la restauración

/files/job/{jobId}

  • GET: Obtiene el listado completo de archivos respaldados por un trabajo, a partir de su jobid

/files/storages

  • GET: Devuelve el listado de ficheros respaldados por un conjunto de repositorios entre dos fechas dadas:
    • Fecha hasta: parámetro to en formato yyyy-MM-dd_HH:mm:ss
    • Fecha desde: parámetro from en formato yyyy-MM-dd_HH:mm:ss
    • Lista de storages: lista de parámetros storage con el nombre de cada repositorio implicado. Se debe indicar o bien esta lista, o bien el parámetro libraries=true.
    • Búsqueda en librerías: parámetro booleano libraries que, si se utiliza con el valor true, buscaría en todos los repositorios de tipo librería (locales o remotas). Si se utiliza este parámetro, no se debe indicar ningún storage en 'Lista de storages'.
    • Opcionales:
      • Tipo: Permite filtrar con el parámetro type por el tipo de job ('B', 'C', 'c', 'R')
      • Lista de paths por los que filtrar: lista de parámetros include con la ruta por las rutas por las cuales filtrar. Cualquier archivo que en su ruta contenga alguno de los includes indicados, será mostrado en la salida.
    • Ejemplo:
      • http://x.x.x.x/resources/files/storages?from=2016-09-20_00:00:00&to=2016-09-21_00:00:00&include=share&libraries=true
        • Obtendría la lista de ficheros respaldados entre los días 20 y 21 de todas las librerías del sistema en los que estuviesen implicados volúmenes compartidos

/vmware/client/{clientName}/machines

  • GET: Obtiene el listado de máquinas virtuales de las que se tiene backup para el cliente clientName. Este listado muestra nombre e identificador vm-x de cada máquina.

/vmware/client/{clientName}/machines/{virtualMachineId}/jobs

  • GET: Obtiene el listado de versiones (jobs) de cierta máquina virtual virtualMachineId (vm-x ó nombre de máquina). Su consulta es necesaria antes de lanzar una recuperación Vmware por versión.

/files/vmware/client/{clientName}/restore/date

  • GET: Lanza una recuperación por fecha de un conjunto de máquinas virtuales para el cliente clientName, utilizando como parámetros en la URL:

/files/vmware/client/{clientName}/restore/version/job/{jobId}

  • GET: Lanza una recuperación por versión de un conjunto de máquinas virtuales para el cliente clientName y la versión de job jobId, utilizando como parámetros en la URL:

/files/rhv/job/{jobId}/machines?path={path}

  • GET: Listado de máquinas respaldadas que tiene un determinado job {jobId}.
    • (Opcional) Permite obtener los discos de una máquina específica {path}. Formatos permitidos: path=/vm1/ || path=vm1 || path=/vm1.

/files/rhv/client/{cName}/machines/{mName}/jobs

  • GET: Listado de jobs pertenecientes al cliente {cName} que contienen un backup de la máquina especificada {mName}.

/files/rhv/restore

  • POST: Realización de una restauración a partir de un jobId o una fecha en concreto. Prioriza el parámetro fecha.

/files/docker/job/{jobId}/machines?path={path}

  • GET: Listado de los elementos respaldados que tiene un determinado job {jobId}.
    • (Opcional) Permite obtener los discos de una máquina específica {path}. Formatos permitidos: path=/image/ || path=image || path=/image.

/files/docker/restore

  • POST: Realización de una restauración a partir de un jobId o una fecha en concreto. Prioriza el parámetro fecha.

/files/kubernetes/job/{jobId}/machines?path={path}

  • GET: Listado de los elementos respaldados que tiene un determinado job. 

/kubernetes/client/{cName}/machines?path={path}

  • GET: Listado de jobs del cliente definido en {cName} que almacenan los elementos definidos por el argumento {path}

/kubernetes/restore

  • POST: Realización de una restauración a partir de un jobId o una fecha en concreto. Prioriza el parámetro fecha.

6.2.14 Plantillas


Parámetros

/templates/

  • GET: Obtiene el listado de las plantillas configuradas
  • PUT + template: Añade una nueva plantilla al sistema
  • POST + template: Modifica una plantilla existente

/templates/{templateName}

  • GET: Obtiene la plantilla con el nombre de {templateName}
  • DELETE: Elimina la plantilla llamada {templateName}


6.3 Servicios de Almacenamiento

6.3.1 Gestión de agregados


Parámetros

/aggregates

  • GET: Obtiene el listado de agregados definidos en el sistema
  • PUT + aggregate: Añade un nuevo agregado
  • POST + aggregate: Edita un agregado existente

/aggregates/{aggregateName}

  • GET: Obtiene los datos de un agregado de nombre aggregateName
  • DELETE: Elimina un agregado

/aggregates/refresh

  • GET: Intenta montar todos los volúmenes de todos los agregados del sistema

/aggregates/{aggregateName}/umount

  • GET: Desmonta todos los volúmenes del agregado aggregateName

/aggregates/devices

  • GET: Obtiene los dispositivos sin asignar del sistema

/aggregates/recover/{aggregateName}

  • GET: Intenta forzar la recuperación de un agregado de tipo ZFS que tuviese de nombre aggregateName


6.3.2 Gestión de volúmenes


Parámetros

/volumes

  • GET: Obtiene el listado de volúmenes del sistema
  • PUT + volumeAdd: Añade un nuevo volúmen

/volumes/aggregate/{aggregateName}

  • GET: Obtiene los volúmenes definidos pertenecientes al agregado aggregateName

/volumes/extend

  • POST + volumeExtend;
    • Extiende el tamaño de un volumen
    • (opcional) Modifica los parámetros zfs de cuotas y reservas
    • (opcional) Establece la política de snapshots

/volumes/reduce

  • POST + volumeExtend:
    • Reduce el tamaño de un volumen
    • (opcional) Modifica los parámetros zfs de cuotas y reservas
    • (opcional) Establece la política de snapshots

/volumes/aggregate/{aggregateName}/volume/{volumeName}

  • GET: Obtiene los datos de un volumen concreto llamado volumeName del agregado aggregateName
  • DELETE: Elimina un volumen concreto llamado volumeName del agregado aggregateName

/volumes/aggregate/{aggregateName}/volume/{volumeName}/snapshot

  • GET: Obtiene el listado de snapshots asociados a un volumen llamado volumeName del agregado aggregateName

/volumes/aggregate/{aggregateName}/volume/{volumeName}/snapshot/make

  • GET: Realiza un snapshot manual sobre el volumen volumeName perteneciente al agregado aggregateName

/volumes/aggregate/{aggregateName}/volume/{volumeName}/snapshot/{snapshotName}

  • GET: Obtiene los datos del snapshot snapshotName, del volumen volumeName perteneciente al agregado aggregateName
  • DELETE: Elimina el snapshot snapshotName, del volumen volumeName perteneciente al agregado aggregateName



6.3.3 Dispositivos iscsi


Parámetros

/iscsi

  • GET: Obtiene el listado de targets iscsi definidos en el sistema
  • PUT + iscsiTarget: Añade un nuevo target iscsi
  • DELETE: Elimina todos los targets iscsi definidos

/iscsi/{iqn}

  • DELETE: Elimina el target iscsi de iqn iqn

/iscsi/vg/{vg}/lv/{lv}

  • GET: Obtiene los targets iscsi definidos para el volumen lv del agregado vg

/iscsi/type/{type}

  • GET: Lista los targets iscsi por tipo. El tipo puede ser autochanger, tape o volume.

/iscsi/external

  • GET: Obtiene los targets iscsi externos de la sesión

/iscsi/external/outdated

  • GET: Obtiene el listado de accesos de targets iscsi externos que no son accesibles

/iscsi/external/outdated/remove/address/{address}/port/{port}

  • DELETE: Elimina del histórico de accesos de targets iscsi externos el registro de ip address y puerto port

/iscsi/external/send

  • GET: Obtiene los targets iscsi nuevos disponibles para la sesión

/iscsi/external/search/address/{address}

  • GET: Lanza una búsqueda de targets iscsi externos disponibles en la dirección ip address

/iscsi/external/login

  • PUT + iscsiExternalTargetLogin: Lleva a cabo un login iscsi en un target externo

/iscsi/external/logout

  • POST + iscsiExternalTargetLogin: Lleva a cabo un logout iscsi de un target externo

/iscsi/airback/name

  • GET: Obtiene el nombre de iniciador iscsi de WBSAirback

/iscsi/vg/{vg}/lv/{lv}/snapshot/{snapshot}

  • GET: Obtiene un target de tipo snapshot, de nombre snapshot, del volumen lv perteneciente al agregado vg.
  • PUT: Añade un target de tipo snapshot llamado snapshot para el volumen lv del agregado vg.


6.3.4 Configuración de replicas de almacenamiento


Parámetros

/replication/sources

  • GET: Obtiene el listado de orígenes de replicación configuradas.
  • PUT + replicationDestination: Añade un nuevo origen de replicación
  • POST + replicationDestination: Edita un origen de replicación

/replication/sources/vg/{vg}/lv/{lv}/address/{address}

  • GET: Obtiene los datos de configuración de un origen de replicación de agregado vg, volumen lv y dirección address
  • DELETE: Elimina un origen de replicación de agregado vg, volumen lv y dirección address

/replication/destinations

  • GET: Obtiene el listado de destinos de replicación configuradas.
  • PUT + replicationDestination: Añade un nuevo destino de replicación
  • POST + replicationDestination: Edita un destino de replicación

/replication/destinations/vg/{vg}/lv/{lv}/address/{address}

  • GET: Obtiene los datos de configuración de un destino de replicación de agregado vg, volumen lv y dirección address
  • DELETE: Elimina un destino de replicación de agregado vg, volumen lv y dirección address

/replication/interval

  • GET: Obtiene el intervalo de replicación configurado

/replication/interval/{minutes}

  • GET: Establece un nuevo intervalo de replicación

/replication/executions

  • GET: Obtiene el listado de ejecuciones de sincronización


6.3.5 Cuentas y discos cloud


Parámetros

/cloud/accounts

  • GET: Obtiene el listado de cuentas en la nube configuradas
  • PUT + cloudAccount: Añade una nueva cuenta en la nube
  • POST + cloudAccount: Edita una cuenta en la nube existente

/cloud/accounts/{alias}

  • GET: Obtiene los datos de configuración de una cuenta en la nube de nombre alias
  • DELETE: Elimina una cuenta en la nube de nombre alias

/cloud/disks

  • GET: Obtiene los discos en la nube definidos
  • PUT + cloudDisk: Añade un nuevo disco en la nube

/cloud/disks/device/{device}

  • GET: Obtiene el disco en la nube definido con identificador de dispositivo device
  • DELETE: Elimina el disco en la nube con identificador de dispositivo device

/cloud/disks/unassigned

  • GET: Obtiene el listado de discos en la nube definidos que no están asignados a ningún agregado

/cloud/disks/group/{group}/stats

  • GET: Obtiene las estadísticas de I/O de un disco en la nube

/cloud/disks/group/{group}

  • GET: Obtiene el listado de discos en la nube asociados al agregado de nombre group


6.3.6 Quotas de disco


Parámetros

/quota/users

  • PUT + quotaAdd:Añade una nueva quota de disco de usuario

/quota/users/group/{group}/volume/{volume}

  • GET: Obtiene las quotas de usuario del volumen volume del agregado group

    • Parametro de query match: Cadena por la que buscar el nombre del grupo

/quota/users/group/{group}/volume/{volume}/username/{username}

  • GET: Obtiene los datos de una quota de usuario de nombre groupname del volumen volume del agregado group
  • DELETE: Elimina la quota de usuario de nombre groupname del volumen volume del agregado group

/quota/groups

  • PUT + quotaAdd:

/groups/group/{group}/volume/{volume}

  • GET: Obtiene las quotas de grupo del volumen volume del agregado group
    • Parametro de query match: Cadena por la que buscar el nombre de usuario

/quota/groups/group/{group}/volume/{volume}/groupname/{groupname}

  • GET: Obtiene los datos de una quota de grupo de nombre groupname del volumen volume del agregado group
  • DELETE: Elimina la quota de grupo de nombre groupname del volumen volume del agregado group


6.3.7 Volúmenes compartidos


Parámetros

/shares

  • PUT + share: Añade un nuevo volumen compartido
  • POST + share: Edita un volumen compartido existente

/shares/type/{type}

  • GET: Obtiene el listado de volúmenes compartidos por tipo. El tipo puede ser: NFS, CIFS ó FTP

/shares/type/{type}/aggregate/{aggregateName}/volume/{volumeName}

  • GET: Obtiene los datos de un volumen compartido del volumen volumeName del agregado aggregateName
  • DELETE: Elimina el volumen compartido del volumen volumeName del agregado aggregateName

/shares/external

  • GET: Obtiene el listado de volúmenes compartidos externos configurados
  • PUT + shareExternalAdd: Añade un nuevo volumen compartido externo
  • POST + shareExternalAdd: Modifica un volumen compartido externo existente

/shares/external/server/{server}?share={share}

  • GET: Obtiene los datos de conrfiguración del volumen comparitdo externo share que se encuentra en el servidor server
  • DELETE: Elimina el volumen comparitdo externo share que se encuentra en el servidor server




6.4 Servicios de Advanced Backup

6.4.1 Gestión de grupos de jobs


Parámetros

/groupjob

  • GET: Obtiene el listado de group jobs
  • PUT + group: Añade un grupo de jobs de tipo manual (agrupación de jobs existentes)
  • POST + group: Modifica un grupo de jobs de tipo manual (agrupación de jobs existentes)

/groupjob/configure

  • PUT + groupJobConfig: Añade un grupo de jobs a partir de la configuración de una plantilla
  • POST + groupJobConfig: Añade un grupo de jobs a partir de la configuración de una plantilla

/groupjob/{name}/configuration

  • GET: Obtiene la configuración de un grupo de jobs llamado name
  • DELETE: Elimina la configuración de un grupo de jobs llamado name, pero no el grupo de jobs en si

/groupjob/{name}

  • GET: Obtiene todos los datos de un grupo de jobs llamado name
  • DELETE: Elimina un grupo de jobs llamado name

/groupjob/{name}/launch

  • GET: Lanza la ejecución de un grupo de jobs llamado name

/groupjob/{name}/stop

  • GET: Detiene la ejecución de un grupo de jobs llamado name

/groupjob/{name}/cancel

  • GET: Cancela la ejecución de un grupo de jobs llamado name

/groupjob/{name}/restart

  • GET; Reinicia la ejecución de un grupo de jobs llamado name


6.4.2 Gestión de plantillas


Parámetros

/advanced/templatejob

  • GET: Obtiene el listado de las plantillas existentes
  • PUT + templateJob: Añade una nueva plantilla al sistema
  • POST + templateJob: Edita una plantilla existente

/advanced/templatejob/{name}

  • GET: Obtiene todos los datos asociados a una plantilla llamada name
  • DELETE: Elimina una plantilla de nombre name



6.4.3 Gestión de tipos de almacenamiento avanzado


Parámetros

/advanced/storage

  • GET: Obtiene el listado de advanced storages configurados
  • PUT + advancedStorage: Añade un nuevo elemento advanced storage
  • POST + advancedStorage: Edita un elemento advanced storage existente

/advanced/storage/{name}

  • GET: Obtiene los datos de un elemento advanced storage llamado name
  • DELETE: Elimina un advanced storage llamado name

/advanced/storage/{storageName}/step/{stepName}

  • DELETE: Elimina un paso llamado stepName asociado a un advanced storage llamado storageName



6.4.4 Gestión de pasos


Parámetros

/advanced/step

  • GET: Obtiene el listado de pasos existente.
  • PUT + step: Añade un nuevo paso
  • POST + step: Edita un paso existente

/advanced/step/{name}

  • GET: Obtiene el paso de nombre name
  • DELETE: Elimina el paso de nombre name

/advanced/step/type/{type}

  • GET: Obtiene el listado de pasos del tipo type.
    • Los tipos validos son: backup, advanced_storage, script_process y script_application



6.4.5 Gestión de procesos de script


Parámetros

/advanced/script

  • GET: Obtiene el listado de procesos de script configurados en el sistema
  • PUT + scriptProcess: Añade un nuevo proceso de script
  • POST + scriptProcess: Edita un proceso de script existente en el sistema

/advanced/script/{name}

  • GET: Obtiene la configuración de un proceso de script llamado name
  • DELETE: Elimina un proceso de script llamado name



6.4.6 Gestión de sistemas


Parámetros

/advanced/inventory/system

  • GET: Obtiene el listado de sistemas configurados en el inventario
  • PUT + system: Añade un nuevo sistema al inventario
  • POST + system: Edita un sistema existente en el inventario

/advanced/inventory/system/{name}

  • GET: Obtiene la configuración de sistema del inventario llamado name
  • DELETE: Elimina un sistema llamado name del inventario


6.4.7 Gestión de aplicaciones


Parámetros

/advanced/inventory/application

  • GET: Obtiene el listado de aplicaciones configuradas en el inventario
  • PUT + application: Añade una nueva applicación al inventario
  • POST + application: Edita una aplicación existente en el inventario

/advanced/inventory/application/{name}

  • GET: Obtiene la configuración de una aplicación del inventario llamada name
  • DELETE: Elimina una aplicación llamada name del inventario


6.4.8 Gestión de equipos de almacenamiento avanzado


Parámetros

/advanced/inventory/storage

  • GET: Obtiene el listado de elementos storage configurados en el inventario
  • PUT + storageInventory: Añade un nuevo storage al inventario
  • POST + storageInventory: Edita un storage existente en el inventario

/advanced/inventory/storage/{name}

  • GET: Obtiene la configuración de un elemento storage del inventario llamado name
  • DELETE: Elimina un elemento storage llamado name del inventario

6.5 Continous Data Protection

Parámetros

/cdp/jobs

  • GET: Obtiene el listado de jobs ejecutados en este módulo
    • parámetro from: parámetro en formato fecha yyyy-MM-dd_HH:mm:ss. Ej: /cdp/jobs?from=2018-05-12_09:15:00
    • parámetro to: parámetro en formato fecha yyyy-MM-dd_HH:mm:ss. Ej: /cdp/jobs?to=2018-06-12_23:15:00

/cdp/jobs/{userName}

  • GET + userName: Obtiene el listado de jobs ejecutados en este módulo por el usuario indicado
    • parámetro from: parámetro en formato fecha yyyy-MM-dd_HH:mm:ss. Ej: /cdp/jobs/Win2012SQL?from=2018-05-12_09:15:00
    • parámetro to: parámetro en formato fecha yyyy-MM-dd_HH:mm:ss. Ej: /cdp/jobs/Win2012SQL?to=2018-06-12_23:15:00

7 Configuraciones masivas

Cuando se ejecutan configuraciones masivas, es muy importante que el script cliente que las ejecute, lo haga de forma secuencial. Es decir, se lanza el PUT/POST/DELETE correspondiete y cuando finaliza y retorna con éxito, se lanza el siguiente comando. En caso de error, la secuencia debería terminar. De esta forma se evitan errores de concurrencia y se puede detectar mejor posibles situaciones anómalas.

El motivo de estas acciones es que en WBSAirback todo depende de unos mismos ficheros de configuración centrales en su motor de backup (Bacula). Estos se han de cargar en memoria y modificar con cada acción de configuración, por lo tanto se debe tratar de evitar la configuración concurrente de muchos elementos.

Por otro lado, también es recomendable ejecutar la configuración en bloques, según la dependencia de unos elementos sobre otros. Así como configurar cada elemento una sola vez sin repetición en cada iteración. Una secuencia para reconfigurar por completo el equipo, en cuanto a backup, teniendo en cuenta el punto de ejecución secuencial comentado, podría ser:

- Configuramos todos los Clientes

- Configuramos todos los Repositorios

- Configuramos todos los Pools

- Configuramos todas las Planificaciones

- Configuramos todos los Patrones de ficheros

- Configuramos todos los Jobs

8 Tipos de datos

A continuación se expone un listado con los tipos de datos disponibles.

Es un listado orientativo para construir los xml de las peticiones post y put, así como de los objetos de respuesta. El esquema preciso y 100% actualizado, se puede consultar en cualquier momento en la hoja xsd de cada WBSAirback.

Nombre CampoTipo de datoOpcionalValores posiblesDescripción





networkNameServersConfig


Elemento de configuración de DNS
nameServersList<networkNameServer>
Listado clase networkNameServerListado de servidores de nombres





networkNameServer



addressstring
IP válidaDirección ip de un servidor





maintenanceConfiguration


Elemento de configuración de mantenimiento
dbCacheint

Tamaño de la caché de la BD de WBSAirback®
dbMaxConnectionsint

Máximo número de conexiones a la BD de WBSAirback®
dbSharedBuffersint

Tamaño del buffer compartido
exportHourint[opcional]
Hora de exportación del catálogo (copia seguridad catálogo)
exportRetentionint[opcional]
Retención de la exportación del catáolog (copia seguridad catálogo)
exportSharestring[opcional]Volumen compartido existenteVolumen compartido para exportación del catálogo
multipathboolean

Activar / Desactivar multipath





hypervisor


Elemento hypervisor para backup de máquinas virtuales
addressstring
IP válidaDirección de hipervisor
namestring

Nombre de hipervisor
osstring
vmware | xenSistema operativo
passwordstring[opcional]
Contraseña de acceso
userstring[opcional]
Usuario de acceso





storageRemote


Repositorio remoto de backup
addressstring
IP válidaDirección ip donde se aloja el repositorio remoto
devicestring
Repositorio remoto existenteNombre del repositorio remoto de la otra máquina
mediatypestring[opcional]LTO1 | LTO2 | LTO3 | LTO4 | DLT | SDLT | DDS1 | DDS2 | DDS3 | DDS4 | DAT72 | DAT160 | TR | FileTipo de datos
namestring

Nombre del repositorio que se está configurando
passwordstring

Password para repositorios del WBSAirback® remoto
typestring
File | Tape | AutochangerTipo de origen de datos
remotedisknamestring[opcional]
Nombre del disco que aloja el repositorio remoto, en el formato "Agregado/volumen"
remoteparalelstring[opcional]
Indica si el repositorio remoto utiliza paralelización
sharedWithboolean[opcional]Repositorio local existente que tenga la opción Compartir marcadaRepositorio local con el cual se compartirá una librería accesible mediante una red SAN





timeDate


Elemento de configuración de la hora de WBSAirback®
dayint
01 a 31Día del mes
hourint
00 a 23Hora
minuteint
00 a 59Minutos
monthint
01 a 12Mes
secondint[opcional]00 a 59Segundos
timeOfDaystring[opcional]am | pm
yearint
yyyyAño





quotaAdd


Elemento de configuración de nuevas cuotas de disco
groupNamestring

Nombre del agregado
namestring

Nombre del grupo ó usuario a quien aplicar la nueva cuota
sizedouble

Tamaño de cuota
volumeNamestring

Nombre del volumen





networkRoutesConfig


Elemento de configuración de rutas
routesList<networkRoute>
Listado de clase networkRouteLista de rutas





networkRoute


Representa una ruta de red
addressstring
IP válidaDirección de red
gatewaystring
IP válidaGateway
ifacestring
Interfaz existente en el sistemaInterfaz de la ruta
netmaskstring
Máscara de red válidaMáscara de red





scheduleYearly


Planificación anual
yearlyCalendarList<yearlyCalendar>

Lista de elementos calendario anual
namestring
Lista de clases yearlyCalendarNombre de planificación





scheduleYearlyCalendar


Elemento de calendario anual
dayint
01 a 31Dia
hourint
00 a 23Hora
levelstring
Full | Differential | Virtual | IncrementalNivel de backup
minuteint
00 a 59Minutos
monthstring
01 a 12Mes
poolstring
Pool existente en el sistemaNombre de pool





jobScheduled


Trabajo de backup. Para dar de alta y para obtener los trabajos planificados
accurateboolean[opcional]
Con precisión / Sin precisión
bandwithint[opcional]
Ancho de banda
clientNamestring
Cliente existenteNombre de cliente
enabledboolean[opcional]
Activado / Desactivado
filesetstring
Patrón de ficheros de tipo cliente existentePatrón de ficheros
hypervisorJobstring[opcional]Trabajo de hipervisor existenteTrabajo de hipervisor
jobNamestring

Nombre del trabajo
levelstring
Full | Differential | Virtual | IncrementalNivel de backup
maxRunTimeint[opcional]
Máximo tiempo de ejecución del trabajo
maxStartDelayint[opcional]
Máximo tiempo de espera antes de comenzar
maxWaitTimeint[opcional]
Máximo tiempo de espera
nextJobstring[opcional]Trabajo existenteEjecutar este trabajo al acabar el actual
poolstring
Conjunto existenteConjunto de backup
poolDifferentialstring[opcional]Conjunto existenteConjunto diferencial
poolFullstring[opcional]Conjunto existenteConjunto para copia total
poolIncrementalstring[opcional]Conjunto existenteConjunto para copia incremental
priorityint[opcional]
Prioridad
rescheduleIntervalint[opcional]
Intervalo de relanzamiento
rescheduleOnErrorboolean[opcional]
Relanzar si falla el trabajo
rescheduleTimesint[opcional]
Número de veces que se relanzará en caso de fallo
schedulestring
Planificación existentePlanificación asociada
spooldataboolean[opcional]
Activar / Desactivar caché previa a disco
storagestring
Repositorio existenteRepositorio
typeint[opcional]1 = backup | 2 = copia | 3 = migraciónTipo de trabajo
verifyPreviousJobboolean[opcional]
Verificar trabajo previo
allowDuplicateboolean[opcional]
Permitir un trabajo virtual duplicado (Para ejecuciones concurrentes de trabajo virtual y su incremental)
scriptsList<jobScript>[opcional]Lista de scriptsLista de scripts









Elemento de configuración de jobs
namestring

Nombre de la plantilla
descriptionstring[opcional]
Descripción de la plantilla
typestring[opcional]backup | copy | migrateTipo de trabajo
levelstring[opcional]Full | Differential | Virtual | IncrementalNivel de backup
client_idstring[opcional]
Id del cliente
clientstring[opcional]Nombre de un cliente existenteNombre del cliente (airback-fd si es virtual)
client_realstring[opcional]
Nombre del cliente (si no es virtual será el mismo que client)
schedulestring[opcional]Planificación existentePlanificación del backup
filesetstring[opcional]Patrón de ficheros existentePatrón de ficheros del cliente
storagestring[opcional]Repositorio existenteRepositorio
poolstring[opcional]Conjunto existenteConjunto del backup
full_backup_poolstring[opcional]Conjunto existenteConjunto para copia total
partial_poolstring[opcional]Conjunto existente
differential_backup_poolstring[opcional]Conjunto existenteConjunto para copia diferencial
incremental_backup_poolstring[opcional]Conjunto existenteConjunto para copia incremental
maximum_concurrent_jobsstring[opcional]
Número máximo de jobs concurrentes para el cliente

max_start_delay

string[opcional]
Máximo tiempo de ejecución del trabajo
max_run_timestring[opcional]
Máximo tiempo de espera antes de comenzar
max_wait_timestring[opcional]
Máximo tiempo de espera
accuratestring[opcional]
Precisión
maximum_bandwidthstring[opcional]
Ancho de banda
prioritystring[opcional]
Prioridad
enabledstring[opcional]
Activo
spooldatastring[opcional]
Activar / Desactivar caché previa a disco





groupJobConfig


Elemento de configuración de un grupo de jobs
namestring[opcional]
Nombre del grupo
schedulestring[opcional]Planificación existentePlanificación
stepsList<groupStep>
Listado de clase groupStepListado de pasos asociados
storagestring[opcional]Repositorio existenteRepositorio por defecto
templateJobstring[opcional]Plantilla existentePlantilla asociada





groupStep


Paso de grupo de jobs
clientstring[opcional]Cliente existenteCliente
jobjobScheduled[opcional]Trabajo existenteTrabajo
namestring[opcional]
Nombre
orderint[opcional]
Orden dentro del grupo
storageInventorystring[opcional]Storage de inventario existenteStorage de inventario asociado
typestring[opcional]Backup | advanced_storage | script_process | script_applicationTipo de paso
variablesList<variableValue>[opcional]Listado de clase variableValueListado de valores de las variables implicadas





variableValue


Variable con valor
namestring

Nombre de variable
valuestring[opcional]
Valor de variable





scheduleWeekly


Planificación semanal
weeklyCalendarList<weeklyCalendar>
Listado de clase weeklyCalendarListado de elementos de calendario semanal
namestring

Nombre de la planificación





scheduleWeeklyCalendar


Elemento de calendario semanal
daystring
L | M | X | J | V | S | DDía de la semana
hourint
00 a 23Hora
levelstring
Full | Differential | Virtual | IncrementalNivel de backup
minuteint
00 a 59Minutos
poolstring[opcional]Pool existente en el sistemaNombre de pool





cloudAccount


Cuenta de la nube
idstring

Identificador de cuenta en el servicio de la nube
keystring

Clave de cuenta en el servicio de la nube
namestring

Nombre de la cuenta
serverstring[opcional]
Servidor Atmos de la cuenta
typestring[opcional]S3 | AtmosTipo de la cuenta





volumeAdd


Elemento para añadir nuevos volúmenes al sistema
aggregatestring
agregado existenteAgregado
compressionstring[opcional]gzip | lzjb | lzoTipo de compresión
deduplicationboolean[opcional]
Activar / Desactivar deduplicación
encryptionboolean[opcional]
Activar / Desactivar encriptación (MD5)
lv_typestring[opcional]linear | mirror | strippedTipo de volumen lógico
namestring

Nombre del volumen
percent_snapshotdouble[opcional]0 a 60Porcentaje asignado a snapshots
sizelong

Tamaño
size_unitsstring

Unidades del tamaño indicado
storage_typestring[opcional]nas | sanTipo de almacenamiento





shareExternalAdd


Elemento para añadir nuevos volúmenes comparitdos externos
domainstring[opcional]
Dominio donde se encuentra el volumen externo
passwordstring[opcional]
Contraseña de acceso
serverstring

Servidor del volumen
sharestring

Path del recurso compartido
typestring
NFS | CIFS | FTPTipo de recurso
userstring[opcional]
Usuario del recurso





networkInterfacesConfig


Elemento de configuración de interfaces de red
interfacesList<networkInterface>
Lista de clases networkInterfaceListado de interfaces de red





networkInterface


Elemento interfaz de red
addressstring
IP válidaDirección ip asociada a la interfaz
bondtypestring[opcional]LACP | RRTipo de bonding
gatewaystring[opcional]IP válidaGateway
ifacestring
Interfaz existente en el sistemaNombre de interfaz
netmaskstring
Máscara IP válidaMáscara de red
slavesList<networkSlaveInterface>[opcional]Listado de clases networkSlaveInterfaceListado de interfaces esclavas de bondig





networkSlaveInterface


Interfaz esclava de bonding
ifacestring
Interfaz existente en el sistemaNombre de interfaz





proxy


Elemento de configuración de proxy
passwordstring[opcional]
Contraseña de proxy
portint[opcional]
Puerto de proxy
serverstring
IP válidaServidor de proxy
userstring[opcional]
Usuario de proxy





client


Cliente de backup. Sólo Los campos marcados con * se utlizan para el alta.
address*string[opcional]IP válidaDirección ip del cliente*
alertstring[opcional]
Alerta de último backup finalizado.
autoprune*boolean[opcional]
Activar / Desactivar autopurgado*
catalogstring[opcional]
Nombre de catálogo asociado
category*List<CategoryRs>[opcional]
Categorías a las que pertenecerá el cliente*
charset*string[opcional]UTF-8 | ISO-8859-1 | ISO-8859-15Codificación de caracteres*
dnsname*string[opcional]
Nombre DNS.*
fdportint[opcional]
Puerto
fileretention*int[opcional]
Tiempo de renteción de ficheros*
fileretentionPeriod*string[opcional]days | months | yearsPeríodo de retención al que se refiere fileretention*
idint[opcional]
Identificador de cliente
jobretention*int[opcional]
Tiempo de retención de jobs*
jobretentionPeriod*string[opcional]days | months | yearsPeríodo de retención al que se refiere jobretention*
maximumconcurrentjobs*int[opcional]
Número máximo de jobs concurrentes para el cliente*
name*string

Nombre del cliente*
os*string
linux-debian-squeeze-32 | linux-debian-squeeze-64 | linux-debian-wheezy-32 | linux-debian-wheezy-64 | linux-ubuntu-precise-32 |linux-ubuntu-precise-64 | linux-redhat-6-32 | linux-redhat-6-64 | linux-suse-10-32 | linux-suse-10-64 | linux-suse-11-32 | linux-suse-11-64 | linux | win32 | win64 | solaris-8-sparc | solaris-9-sparc | solaris-10-sparc | solaris-10-i86 |solaris-11-i86 | mac | vmwareSistema operativo*
password*string

Password a usar en client-fd y el director de WBSAirback®*
port*int[opcional]
Puerto*
starttimestring[opcional]
Fecha de comienzo de último backup
statusstring[opcional]
Estado de último backup
unamestring[opcional]
Descripción de cliente obtenida por el sistema
tlsboolean[opcional]true | falseActivar cifrado TLS





step


Paso de advanced backup
namestring

Nombre del paso
typestring
BACKUP | ADVANCED_STORAGE | SCRIPT_PROCES | SCRIPT_APPILCATIONTipo del paso





replicationDestination


Destion de replicación de disco
addressstring
IP válidaDirección del servidor origen permitida
filesystemboolean[opcional]
Replicación a nivel de sistema de ficheros (ZFS)
lvstring
Volumen existenteNombre de volúmen lógico
passwordstring

Password de replicación
vgstring
Agregado existenteAgregado de replicación





application


Aplicación de advanced backup
descriptionstring[opcional]
Descripción
namestring

Nombre
systemsList<system>
Listado de clases systemListado de sistemas donde está presente la aplicación





system


Sistemas de advanced backup. Sólo Los campos marcados con * se utlizan para el alta.
applicationsList<reference>
Listado de clases referenceListado de aplicaciones definidas con este sistema
description*string[opcional]
Descripción
name*string

Nombre
scriptsList<reference>

Listado de clases reference





reference


Clase envoltorio para encapsular listados de nombres en otras clases
namestring

Nombre





scheduleMonthly


Planificación mensual
calendarsDifferentialList<monthlyCalendar>[opcional]Listado de clase monthlyCalendarListado de calendarios para hacer copias diferenciales
calendarsIncrementalList<monthlyCalendar>[opcional]Listado de clase monthlyCalendarListado de calendarios para hacer copias incrementales
calendarsVirtualList<monthlyCalendar>[opcional]Listado de clase monthlyCalendarListado de calendarios para hacer copias virtuales
differentialHourint[opcional]
Hora de copia diferencial
differentialMinuteint[opcional]
Minuto de copia diferencial
differentialPoolstring[opcional]Pool existentePool de copia diferencial
fullHourint[opcional]
Hora de copia total
fullMinuteint[opcional]
Minuto de copia total
fullPoolstring[opcional]Pool existentePool de copia total
incrementalHourint[opcional]
Hora de copia incremental
incrementalMinuteint[opcional]
Minuto de copia incremental
incrementalPoolstring[opcional]Pool existentePool de copia incremental
namestring

Nombre
virtualHourint[opcional]
Hora de copia virtual
virtualMinuteint[opcional]
Minuto de copia virtual
virtualPoolstring[opcional]Pool existentePool de copia virtual





scheduleMonthlyCalendar


Elemento de calendario de planificación mensual
daystring
L | M | X | J | V | S | DDía de la semana
numWeekint
1 a 4Número de semana del mes





pool


Conjunto de backup
copyDestinationstring[opcional]Pool existenteConjuto destino de copia
durationHoursint[opcional]
Máxima duración en horas de copia
idstring[opcional]
Identificador de pool
migrationHoursint[opcional]
Máxima duración de migración
namestring

Nombre del conjunto
recyclePoolstring[opcional]Pool existenteConjunto de reciclaje
retentionint

Retención de volúmenes en días
scratchPoolstring[opcional]Pool existentePool de scractch
storagestring

Repositorio asociado
typestring[opcional]Por defecto es Backup. No necesario para el altaTipo de pool
autoRecycleboolean[opcional]
Auto-reciclado (bacula elimina los volúmenes purgados si necesita nuevos y no hay disponibles)
maximumVolumeJobsint[opcional]
Número máximo de jobs por volumen (recomendable a 1 con storages con paralelización)





storageDisk


Repositorio de tipo disco
alignedboolean[opcional]
Activar / Desactivar alineamiento para deduplicación de datos
groupstring[opcional]Agregado existenteNombre de agregado
namestring

Nombre de repositorio
netInterfacestring[opcional]Interfaz existente | TodasInterfaz de red por la que es accesible el repositorio
serverstring[opcional]IP válidaServidor si el repositorio se aloja en un volumen compartido
sharestring[opcional]Recurso compartido existenteNombre del recurso compartido si es el caso
typestring
No necesario para el altaTipo de repositorio
volumestring[opcional]Volumen existenteNombre de volumen
paralelJobsint[opcional]
Número máximo de jobs en paralelo que podrán ejecutarse sobre el repositorio





storageLibrary


Repositorio de tipo librería
addressstring[opcional]
Dirección del storage
drivestring

Path del drive
formatstring
LTO1 | LTO2 | LTO3 | LTO4 | DLT | SDLT | DDS1 | DDS2 | DDS3 | DDS4 | DAT72 | DAT160 | TR | FileFormato de datos
namestring

Nombre del reposiitorio
netInterfacestring

Interfaz de red por la que es visible el repositorio
spoolstring

Nombre de volumen de caché previa a disco
spoolSizeint[opcional]
Tamaño de caché previa a disco
tapesList<tape>
Lista de clases tapeLista de cintas asociadas
unitsSizestring[opcional]M | G | TUnidad de tamaño de caché previa a disco
sharedboolean[opcional]
Parámetro para compartir la librería utilizando el plugin 'Shared Storage'





storageLibraryTape


Cinta asociada a una librería
namestring

Nombre / path de cinta





cloudDiskAdd


Elemento para añadir discos cloud
accountAliasstring

Cuenta asociada al disco
bucketstring[opcional]
Nombre del bucket en el caso de cuentas S3
sizeint

Tamaño del disco a crear
sizeUnitstring
M | G | TUnidad para el tamaño
typestring
S3 | AtmosTipo





iscsiTarget


Elemento de targets iscsi. Los campos necesarios para el alta están marcados con *
device*string[opcional]
Identificador de dispositivo al dar de alta un target*
diskstring[opcional]
Identificador de disco
iqnstring

Iqn del target
lv*string

Nombre del volúmen lógico*
password*string[opcional]
Password (si tiene acceso CHAP)*
scsistring[opcional]
Identificador scsi en el equipo
tapeModelstring[opcional]
Modelo de cinta
tapeSerialstring[opcional]
Número de serie de cinta
tapeVendorstring[opcional]
Fabricante de la cinta
type*string
autochanger | tape | volumeTipo de target*
user*string[opcional]
Usuario (para acceso CHAP)*
vg*string

Nombre del agregado*





templateJob



groupStatusstring[opcional]
Plantilla para advanced backup. Los campos necesarios para el alta están marcados con *
namestring

Estado de grupos de jobs
templateStepsList<templateStep>
Listado de clases templateStepNombre de plantilla




Listado de pasos
templateStep



datastring[opcional]
Valor asignado a la entidad asociada
namestring
Paso existenteNombre del paso
orderint[opcional]
Orden del paso en la plantilla
typestring
BACKUP | SCRIPT_PROCESS | SCRIPT_APPLICATION | ADVANCED_STORAGETipo de paso





share


Recurso compartido
address*string[opcional]
Dirección permitida de acceso
async*boolean[opcional]
Activar o desactivar transacciones asíncronas (NFS)
fstypestring[opcional]
Tipo de sistema de ficheros (CIFS)
lv*string
Volumen existenteNombre de volumen lógico a compartir
namestring[opcional]
Nombre del recurso compartido (CIFS)
pathstring[opcional]
Path del recurso compartido
protocol*string
NFS | CIFS | FTPProtocolo de volumen compartido
recycle*boolean[opcional]
Activar o desactivar directorio de reciclaje (CIFS)
squash*boolean[opcional]
Activar o desactivar squash (NFS)
vg*string
Agregado existenteNombre del agregado que contiene el volumen





hypervisorJob


Trabajo de hipervisor
datastoresList<hypervisorDataStore>[opcional]Listado de clases hypervisorDataStoreListado de datastores objetivo
hypervisorstring[opcional]Hipervisor existenteNombre de hipervisor asociado
modestring[opcional]generic | vmware | xenModo del trabajo de hipervisor
namestring[opcional]
Nombre
storagestring[opcional]Repositorio existenteRepositorio asociado
virtualMachinesList<hypervisorVirtualMachine>[opcional]Listado de clases hypervisorVirtualMachineListado de máquinas virtuales objetivo





hypervisorDataStore


Objeto datastore de hipervisor
directoryBasedboolean[opcional]
Basado o no en directorio
freestring[opcional]
Espacio disponible
modestring[opcional]
Modo
namestring

Nombre
pathstring[opcional]
Path





hypervisorVirtualMachine


Máquina virtual de hipervisor
datastorestring[opcional]
Datastore asociado
namestring

Nombre
networkstring[opcional]
Datos de red
snapshotstring[opcional]
Nombre de snapshot (si procede)





volumeExtend


Objeto para configurar un volumen existente
aggregatestring
Agregado existenteAgregado al que pertenece el volumen
total_reservationdouble[opcional]
Tamaño de reserva total
data_reservationdouble[opcional]
Tamaño para reserva de datos
data_sizedouble[opcional]
Tamaño para cuota de datos
namestring
Volumen existenteNombre del volumen
sizeint

Tamaño del volumen
size_typestring
M | G | TUnidad en la que se indican los tamaños
snap_reservationdouble[opcional]
Tamaño de reserva de snapshots
snap_sizedouble[opcional]
Tamaño de cutoa de snapshots
snapshotDailyboolean[opcional]
Activar / Desactivar snapshots diarios (volúmenes de tipo ZFS)
snapshotDailyHourint[opcional]
Hora para snapshots diarios
snapshotDailyRetentionint[opcional]
Días de retención de los snapshots diarios
snapshotHourlyboolean[opcional]
Activar / Desactivar snapshots cada hora
snapshotHourlyRetentionint[opcional]
Días de retención de snapshots de hora
snapshotManualRemoveboolean[opcional]
Activa o desactiva el borrado horario de snapshots manuales en el volumen actual





timeZone


Objeto de zona horaria
zonestring

Nombre de zona





scriptProcess


Proceso de script de advanced backup
abortTypeboolean[opcional]
Activar / desactivar abortar en caso de fallo
applicationstring[opcional]Aplicación existenteAplicación asociada
namestring

Nombre de proceso de script
scriptItemsList<scriptItem>
Listado de clases scriptItemListado de elementos de comando
stepstring
Paso existentePaso de advanced backup asociado
systemstring
Sistema existenteSistema de advanced backup asociado
typestring[opcional]0 = Después de ejecución | 1 = Antes de ejecuciónTipo de paso
variablesList<variable>[opcional]Listado de clases variableListado de variables del script





scriptItem


Elemento comando de script process
contentstring

Comando
orderint

Orden dentro de un listado de scriptItems
shellstring[opcional]sh | bash | csh | perl | win | othersShell en la que se ejecutará





variable


Objeto variable de advanced backup
descriptionstring[opcional]
Descripción
namestring

Nombre
passwordboolean[opcional]
Indicar si es una variable para un password o no





advancedStorage


Objeto de advanced storage de advanced backup
namestring

Nombre
stepsList<stepStorage>[opcional]Listado de clases stepStorageLista de pasos de advanced storage
typeConnectionstring[opcional]SSHTipo de conexión
typeStoragestring[opcional]iscsi | fcTipo de storage
variablesList<variable>[opcional]Listado de clases variableLista de variables asociadas





stepStorage


Paso de advanced storage
mountboolean[opcional]
Indica si es un paso de presentación de lun, que requiere posterior montaje
namestring

Nombre de paso
scriptsList<scriptItem>[opcional]Lista de clases scriptItemListado de comandos
lvmboolean

Indica si es un paso de montaje en el que las luns a montar contienen un sistema lvm
volsToMountList<reference>

Nombres de las luns a montar, pueden contener variables: /vol/volX/{[[[lun1]]]
lvmVolsList<reference>

Nombres de los volúmenes LVM a montar: agg1-vol1, agg2-vol2 ...





storageTape


Repositorio de cinta. Alta: campos marcados con *
addressstring[opcional]
Dirección del repositorio
autoMount*boolean[opcional]
Activar / desactivar automontaje
drive*string
Path de dispositivo existente en el sistemaDispositivo de cinta asociado
format*string
LTO1 | LTO2 | LTO3 | LTO4 | DLT | SDLT | DDS1 | DDS2 | DDS3 | DDS4 | DAT72 | DAT160 | TR | FileFormato de cinta
name*string

Nombre de repositorio
netInterface*string
Interfaz de red existente | TodasInterfaz de red asociada
spool*string
Volumen existente en el sistemaVolumen de spool
spoolSize*int[opcional]
Tamaño de spool en bytes





user


Usuario del sistema
categoryList<category>[opcional]Lista de categorías existentesCategorías asociadas al usuario
descriptionstring[opcional]
Descripción
namestring

Nombre de usuario
passwordstring[opcional]
Contraseña
rolesList<role>[opcional]Listado de clases roleListado de roles del usuario





role


Rol de usuarios del sistema
descriptionstring[opcional]
Descripción
namestring

Nombre





scheduleDaily


Planificación diaria
dailyCalendarList<dailyCalendar>[opcional]Listado de clases dailyCalendarListado de calendiarios diarios
namestring

Nombre de planificación





scheduleDailyCalendar


Objeto calendario de planirficación diaria
hourint
00 a 23Hora de planificación
levelstring
Virtual | Full | Incremental | DiferencialNivel de backup
minuteint
00 a 59Minutos
poolstring
Conjunto existenteConjunto de backup





fileset


Patrón de ficheros
aclboolean[opcional]
Activar / Desactivar ACL
compressionstring[opcional]no | gzip | lzoTipo de compresión
extensionstring[opcional]extensiones separadas por ','Extensiones a excluir
excludestring[opcional]Separar por \nPaths a excluir
includestring[opcional]Separar por \nPaths a incluir
localboolean[opcional]
Indica si es un fileset local
md5boolean[opcional]
Activa / Desactiva encriptación md5
multiplefsboolean[opcional]
Activa / Desactiva el soporte para múltiples sistemas de ficheros
namestring

Nombre del patrón
ndmpboolean[opcional]
Indica si es un patrón ndmp
ndmpAddressstring[opcional]
Dirección del servidor ndmp
ndmpAuthstring[opcional]none | text | md5Protocolo de autenticación
ndmpPasswordstring[opcional]
Password ndmp
ndmpPortint[opcional]
Puerto ndmp
ndmpTypestring[opcional]dumpTipo de copia (actualmenet solamente se soporta dump)
ndmpUserstring[opcional]
Usuario ndmp
volumesNdmpList<volumeNdmp>[opcional]
Listado de volúmenes ndmp objetivo
pluginsList<plugin>[opcional]
Listado de plugins a aplicar (patrón de ficheros normal de cliente)
volumesList<volume>[opcional]
Listado de volúmenes objetivo (patrón de ficheros local)
vssboolean[opcional]
Activar / desactivar vss
vmwareboolean[opcional]
Indica si es un fileset vmware
vmwareCbtboolean[opcional]
Indica si el fileset utilizará tecnología cbt
vmwareIndexboolean[opcional]
Indica si se generarán en tiempo de backup los índices para la aceleración de las recuperaciones de ficheros individuales de máquinas virtuales
vmwareClientstring[opcional]Nombre de cliente vmware existente en el sistemaCliente vmware existente en el sistema
vmwareDatastoresList<vmwareDatastore>[opcional]
Listado de datastores de los que hacer backup (datastore completo)
vmwareHostsList<vmwareHost>[opcional]
Listado de hosts de los que hacer backup (host completo)
vmwareMachinesList<vmwareMachine>[opcional]
Listado de máquinas virtuales de las que hacer backup
vmwareVcenterCompleteboolean

Indica si se quiere efectuar backup del vcenter completo





FilesetRhv


Patrón de ficheros RHV

name

String

PUT:Obligatorio

POST: Ausente


Nombre del fileset
descriptionString

Descripción del fileset
clientString

PUT: Obligatorio

POST: Ausente


Cliente
typeString

Tipo
signatureString

Parámetro Bacula
md5String
true or falseParámetro Bacula
abort_on_errorString
true or falseParámetro Bacula
dedupString
no, storage, bothsidesParámetro Bacula
compressionString
no, GZIP, LZOParámetro Bacula
pathStringPUT: ObligatorioEjemplo: /vms/vmPrueba, /vms/vmPrueba2, /datacenters/Default/clusters/Default/Ruta RHV de cada elemento separado por ","
target_exclude_disksString

Exclusión de discosId separados por ","
target_exclude_vmsString

Exclusión de vms separadas por ","
clone_storageString
true or falseClonación en el backup
restorecache_storage_domainString

Dominio de almacenamiento de la cache
restorecache_retentionString
restorecache_retention > 0Numero de copias almacenadas en el RHVM
target_configuration_onlyString
true or falseBackup de sólo la configuración
num_tries_connectionString
num_tries_connection > 0Número de intentos de conexión antes de dar error.
timeout_requestString
timeout_request > 0Tiempo de espera entre cada intento de petición.





FilesetDocker


Patrón de ficheros Docker

name

String

PUT:Obligatorio

POST: Ausente


Nombre del fileset
descriptionString

Descripción del fileset
clientString

PUT: Obligatorio

POST: Ausente


Cliente
typeString

Tipo
signatureString

Parámetro Bacula
md5String
true or falseParámetro Bacula
abort_on_errorString
true or falseParámetro Bacula
dedupString
no, storage, bothsidesParámetro Bacula
compressionString
no, GZIP, LZOParámetro Bacula
volumeString
Ejemplo: volumeData,volume2Volúmenes Docker separadas por ",". Permite expresiones regulares.
all_volumesString
Ejemplo: yes or noEspecifica el backup automático de los volúmenes indexados por los contenedores seleccionados.
include_containerString
Ejemplo: Debian10_1e796b22-f2ec-423d-96b2-97d336c0928c_0Contenedores Docker separados por ",". Permite expresiones regulares.
include_imageString
Ejemplo: Debian.*, Ubuntu.*Imágenes Docker separadas por ",". Permite expresiones regulares.
exclude_containerString
Ejemplo: Debian9.*Backup de sólo la configuración
exclude_imageString
Ejemplo: Debian9.*,Ubuntu16.*Número de intentos de conexión antes de dar error.
modeString
pause or nopauseDeshabilitación de las entradas E/S de los contenedores.
timeoutInteger
60Timeout para la conexión con el contenedor 'Bacula Archive' durante el backup de volúmenes.
docker_hostString
Ejemplo: 192.168.0.10:2709

Si se especifica, todas las operaciones serán ejecutadas utilizando esta dirección. Esta opción deshabilita el respaldo de volúmenes






FilesetKubernetes


Patrón de ficheros Kubernetes

name

String

PUT:Obligatorio

POST: Ausente


Nombre del fileset
descriptionString

Descripción del fileset
clientString

PUT: Obligatorio

POST: Ausente


Cliente
typeString

Tipo
signatureString

Parámetro Bacula
md5String
true or falseParámetro Bacula
abort_on_errorString
true or falseParámetro Bacula
dedupString
no, storage, bothsidesParámetro Bacula
compressionString
no, GZIP, LZOParámetro Bacula
configString
/etc/kubernetes/admin.confRuta de la configuración del cluster
inclusterString
yes o noDefinido cuando el agente se encuentra en un pod del cluster.
hostString
192.168.0.23Define la url del API de kubernetes
tokenString
(Hash token)Define el token de la conexión.
verify_sslString
yes o noVerificación SSL en la conexión
ssl_ca_certString
/etc/kubernetes/certs/ca.certRuta del certificado
timeoutInteger
10Timeout (segundos) en las operaciones de red. 
debugString
true o falseActivación del debug. Ruta '/opt/bacula/working/backendplugin/'
namespaceString
Ejemplo: default,kuber-controlNamespaces que se respaldarán. Permite múltiples valores separados por una ','. El valor '**' respaldará todos. 
persistentvolumeString
Ejemplo:my-volume,volume-data Configuración de los volúmenes persistentes  que se respaldarán. Permite múltiples valores separados por una ','. El valor '**' respaldará todos. 
pvconfigString
true or falseDeshabilita el respaldo de la configuración del volumen persistente
pvcdataString
Ejemplo: volumeClaim, myVolumeClaimPersistent Volume Claims que se respaldarán. Permite múltiples valores separados por una ','. El valor '**' respaldará todos. Es necesario especificar namespaces concretos.
fdaddressString
Ejemplo:192.168.0.32Ip o nombre dominio donde está alojado el plugin, accesible desde el Bacula Backup Proxy.
fdportInteger
Ejemplo: 9104Puerto donde escuchará el plugin las conexiones entrantes del Bacula Backup Proxy.
pluginhostString
Ejemplo: 192.168.0.32Ip o dominio donde el Bacula Backup Proxy se conecta durante las operaciones de respaldo.
pluginportInteger
Ejemplo: 9104Puerto donde escuchará el plugin las conexiones entrantes del Bacula Backup Proxy.
fdcertfileString
/etc/kubernetes/certs/bacula-backup.certPath del certficiado CA del FD
fdkeyfileString
/etc/kubernetes/certs/bacula-backup.keyPath de la clave del certificado del FD
baculaimageString
Ejemplo: bacula-backup:29Oct19Nombre de la imagen del pod del Bacula Backup Proxy en el registro del cluster.
imagepullpolicyString
ifnotpresent, always or neverConjutno de políticas de pull de las imágenes durante el despliegue del pod Bacula Backup Proxy.





filesetNdmpVolume


Volumen de patrón de ficheros ndmp
filestring

Path a copiar
volumestring

Nombre / Path del volumen





filesetPlugin


Pugin de patrón de ficheros
namestring
delta | systemstate | sharepoint | mssql | exchange | winbmrNombre del plugin





filesetLocalVolume


Volumen local para patrón de ficheros local
namestring
Path existente de un volumen localPath completo del volumen local





filesetNetappAccelerator


Patrón de ficheros para el plugin Netapp Accelerator
namestring

Nombre
typestring
NFS | CIFSTipo de volumen compartido que albergará los datos de Netapp (NFS ó CIFS)
hoststring

Host donde se encuentra Netapp
userstring

Usuario de acceso
passwordstring

Password de acceso
basevoldirstring[opcional]
Volumen base donde se encuentran los directorios (No necesario especificar para altas/mod)
allvolumesboolean

Coger todos los volúmenes presentes o no
md5boolean[opcional]
Ficheros con firma md5
compressionstring[opcional]no | gzip | lzoTipo de compresión
volumesList<filesetNetappAcceleratorVolume>

Lista de volúmenes de los que hacer backup





filesetNetappAcceleratorVolume


Clase wrapper para especificar volúmenes en un patrón del plugin Netapp Acceleratro
namestring

Nombre





filesetOracle


Patrón de ficheros para el plugin oracle
namestring

Nombre del patrón
typestring
DUMP | RMANTipo de patrón Oracle
oracle_userstring[opcional]
Usuario
sidstring[opcional]
SID de la BD
oracle_homestring[opcional]
Ruta home de la instalación de Oracle
sbtboolean[opcional]
Activar modo SBT
verboseboolean[opcional]
Activar modo 'verbose' para ver más información en el log
oracle_sudoboolean[opcional]
Activar modo 'oracle_sudo' para ejecutar los comandos como sudo
md5boolean[opcional]
Activar firma md5 en ficheros
compressionstring[opcional]no | gzip | lzoTipo de compresión
exCompressionboolean[opcional]
Activar compresión en el comando de exportación
squemasList<FilesetOracleSquema>[opcional]
Listado de squemas de las bases de datos a respaldar
dump_optsstring[opcional]
Opciones adicionales para el modo dump





FilesetOracleSquema


Representa pares de instancia-esquema para el plugin de oracle
squemastring

Nombre de esquema
instancestring[opcional]
Nombre de instancia





storageInventory


Storage de inventario de advacned backup
addressstring
IP válidaDirección del storage
certificatestring[opcional]
Certificado digital de acceso
iqnwwnstring

IQN o WWN según el caso
namestring

Nombre
passwordstring[opcional]
Contraseña de acceso SSH
portint

Puerto de acceso SSH
typesAdvancedList<typeAdvanced>[opcional]Listado de clases typeAdvancedListado de advanced storages asociados
userstring[opcional]
Usuario de acceso





typeAdvanced


Tipo de advanced storage para dar de alta storage de inventario en advanced backup
namestring
Advanced storage existenteNombre de advanced storage





iscsiExternalTargetLogin


Objeto para hacer login en un target iscsi externo
addressstring
IP válidaDirección del target
methodstring[opcional]vacío | CHAPMétodo de login
passwordstring[opcional]
Contraseña
portstring[opcional]
Puerto
targetsList<iscsiTargetSimple> [opcional]

Listado de targets
userstring[opcional]
Usuario





iscsiTargetSimple


Target iscsi para login en targets externos
targetstring[opcional]Iqn existente en la máquina destinoNombre iqn del target





group


Objeto representante de un grupo de jobs (no es para alta)
alertstring[opcional]
Alerta de la última ejecución del grupo
endstring[opcional]
Fecha de fin de la última ejecución
jobsList<jobGroup>

Listado de jobs del grupo
namestring[opcional]
Nombre del grupo
schedulestring[opcional]
Planificación asociada
startstring[opcional]
Fecha de inicio de la última ejecución
statusstring[opcional]
Estado global del grupo
storagestring[opcional]
Repositorio asociado al grupo





jobGroup


Objeto de trabajo que agrupa datos de configuración y ejecución para clase group
jobConfigurationjobScheduled[opcional]
Datos de configuración del trabajo
lastJobjobArchieved[opcional]
Datos de la última ejecución del trabajo
namestring[opcional]
Nombre del trabajo
orderint[opcional]
Orden dentro del listado de trabajos del grupo





jobArchieved


Trabajo ejecutado. Datos de ejecución
alertstring

Mensaje de alerta del trabajo
endtimestring

Fecha de fin
virtualEndtimestring

Fecha de fin para backups virtuales. Los backups virtuales muestran en su endtime por defecto el 'realendtime' o fecha de fin de ejecución
errorsstring

Errores en la ejecución
filesint

Número de archivos copiados
idstring

Identificador del trabajo
levelstring

Nivel de ejecución del trabajo
namestring

Nombre del trabajo
returnedstring

Estado de retorno del trabajo
sizestring

Tamaño de archivos copiados
sizeOriginstring

Tamaño de archivos leídos o en origen
starttimestring

Fecha de inicio
statusstring

Estado del trabajo
typestring

Tipo de trabajo
clientNamestring

Nombre del cliente asociado
speeddouble

Velocidad del job
returnCodeint

Código de retorno del job (si ha finalizado)
returnCodeDescriptionstring

Descripción del mensaje del código de retorno
storagestring

Repositorio asociado
poolstring

Pool asociado
categorystring

Categorías del cliente asociado al trabajo





replicationSource


Origen de replicación de volúmenes
addressstring
IP válidaDirección destino con la cual se comunicará este origen
appendboolean[opcional]
Activa | Desactiva el append de ficheros
checksumboolean[opcional]
Activa | Desactiva el checksum
compressboolean[opcional]
Activa | Desactiva la compresión
deleteboolean[opcional]
Activa | Desactiva el borrado de ficheros en destino
deltaboolean[opcional]
Activa | Desactiva las transferencias delta
destinationLvstring
Volumen existente y configurado en destnioVolumen de destino
destinationVgstring
Agregado que contiene el volumen existente y configurado en destinoAgregado de destino
filesystemboolean[opcional]
Activa | Desactiva la réplica a nivel de sistema de ficheros
localAddressstring
IP válidaDirección local por la que se comunica esta réplica
lvstring
Volumen existenteVolumen origen a replicar
mbsint[opcional]
Límite de megabytes por segundo de transferencia
passwordstring

Password de réplica
vgstring
Agregado existenteAgregado contenedor del volumen origen a replicar





category


Categorías para clientes
descriptionstring[opcional]
Descripción
emailstring[opcional]
Email asociado a la categoría para alertas
namestring

Nombre de categoría





systemConfiguration


Objeto de configuración del sistema
httpsboolean[opcional]
Activar o desactivar https para la interfaz eb
httpsCertificatestring[opcional]
Certificado https
httpsPasswordstring[opcional]
Password https
mailstring[opcional]
Email de administración del sistema para enviar alertas
mailHoststring[opcional]
Servidor de reenvío de correo
passwordstring[opcional]
Password de administración del sistema
reporthourstring[opcional]xx:xxHora de envío de informe diario
snmptraphoststring[opcional]ip válidaServidor de envío de traps snmp
snmptrapversionint[opcional]1 | 2Versión de snmp a utilizar
reportMailstring[opcional]Dirección de email válidaDirección de email a la que se enviarán los informes
mailFromstring[opcional]Dirección de email válidaDirección de email que se utilizará como FROM en informes y correos de Watchdog / Bacula
baculaMailLevelstring[opcional]only_error | only_ok | allNivel de correos de bacula: todos | solo error | solo ok
maximumReloadRequestsint[opcional]
Número máximo de reloads simultáneaos permitidos para bacula





aggregate


Objeto agregado para almacenamiento. Campos para alta marcados con *
devices*List<physicalDevice>

Listado de dispositivos físicos que componene el agregdo
freestring[opcional]
Tamaño libre restante en formato humano
freeRawstring[opcional]
Tamaño libre restante
local*boolean

Indica si es un agregado local o no (para cluster)
lvstring[opcional]
lv (XFS)
name*string

Nombre de agregado
pvstring[opcional]
pv (XFS)
quotastring[opcional]
Cuota total establecida en formato humano
quotaRawstring[opcional]
Cuota total
reservationstring[opcional]
Reservas totales en formato humano
reservationRawstring[opcional]
Reservas totales
sizestring[opcional]
Tamaño total en formato humano
sizeRawstring[opcional]
Tamaño total
type*string
ZFS | XFSTipo de agregado
unusedstring[opcional]
Espacio sin utilizar en formato humano
unusedRawstring[opcional]
Espacio sin utilizar
usedPercentstring[opcional]
Porcentaje de uso





physicalDevice


Dispositivo físico. Campos para alta marcados con *
devicestring[opcional]/dev/xxPath sencillo de dispositivo
deviceId*string[opcional]/dev/disk/by-id/xxxxPath del dispositivo por id
freestring[opcional]
Tamaño libre en formato humano
freeRawstring[opcional]
Tamaño libre
modelstring[opcional]
Modelo de dispositivo
size*string[opcional]
Tamaño del dispositivo en formato humano
sizeRawstring[opcional]
Tamaño del dispositivo
vendorstring[opcional]
Fabricante del dispositivo
vg*string[opcional]
Agregado asociado





timeServerSet


Objeto de configuración de servidores ntp
server1timeServer

Servidor 1
server2timeServer[opcional]
Servidor 2
server3timeServer[opcional]
Servidor 3





timeServer


Contenedor para objeto de servidores ntp
serverstring

Nombre del servidor





filesetVmwareDatastore


Wrapper para el listado de datastores en un fileset vmware
namestring

Nombre de datastore





filesetVmwareHost


Wrapper para el listado de hosts en un fileset vmware
namestring

Nombre de host





filesetVmwareMachine


Wrapper para el listado de máquinas virtuales en un fileset vmware
namestring

Nombre de máquina





alert


Objeto de alerta de Watchdog
idstring

Identificador de alerta
subjectstring

Asunto de la alerta
messagestring

Mensaje específico de alerta
entitystring

Entidad generadora de la alerta
datestring

Fecha de alerta





memoryStatus


Objeto que representa el estado general de la memoria

totalRamRaw

Double

Total RAM (bytes)
totalRamString

Total RAM (formato legible)
usedRamPercentRawDouble

Porcentaje RAM usado
usedRamPercentString

Porcentaje RAM usado (legible con %)
totalUniqueDataRawLong

Cantidad de datos únicos presentes en el sistema (bytes)
totalUniqueDataString

Cantidad de datos únicos presentes en el sistema (formato legible)
recomendedRamRawDouble

RAM recomendada para los datos únicos presentes (bytes)
recomendedRamString

RAM recomendada para los datos únicos presentes (formato legible)
recomendedOverTotalRamAlertBoolean

Alerta si la memoria recomendada supera a la disponible
arcSizeRawDouble

Tamaño de ARC (bytes)
arcSizeString

Tamaño de ARC (formato legible)
arcMetadataSizeRawDouble

Tamaño metadatos de ARC (bytes)
arcMetadataSizeString

Tamaño metadatos de ARC (formato legible)
arcMetadataUsedPercentRawDouble

Porcentaje de uso de metadatos
arcMetadataUsedPercentString

Porcentaje de uso de metadatos (legible con %)
arcHitRatioRawDouble

Porcentaje de acierto en Caché metadatos
arcHitRatioString

Porcentaje de acierto en Caché metadatos (legible con %)
l2arcSizeRawDouble

Tamaño de caché de segundo nivel (bytes)
l2arcSizeString

Tamaño de caché de segundo nivel (legible)
l2arcHitRatioRawDouble

Porcentaje de acierto en caché de segundo nivel
l2arcHitRatioString

Porcentaje de acierto en caché de segundo nivel (legible con %)
gedDedupRatioDouble

(Global Dedup) Factor de deduplicación
gedCompressRatioDouble

(Global Dedup) Factor de compresión
gedSavedRatioDouble

(Global Dedup)Factor total de ahorro (Factor dedup*Factor comp)
gedUniqueDataString

(Global Dedup) Datos únicos (legible)
gedUniqueDataRawDouble

(Global Dedup) Datos únicos (bytes)
gedUniqueCompressedDataString

(Global Dedup) Datos únicos comprimidos (legible)
gedUniqueCompressedDataRawDouble

(Global Dedup) Datos únicos comprimidos (bytes)
gedTotalReferencedDataString

(Global Dedup) Datos totales referenciados (legible)
gedTotalReferencedDataRawDouble

(Global Dedup) Datos totales referenciados (bytes)
gedSavedDataString

(Global Dedup) Datos ahorrados (legible)
gedSavedDataRawDouble

(Global Dedup) Datos ahorrados (bytes)
gedRecommendedSSDString

(Global Dedup) Tamaño recomendado SSD (legible)
gedRecommendedSSDRawDouble

(Global Dedup) Tamaño recomendado SSD (bytes)
gedAllocatedDataString

(Global Dedup) Tamaño de datos de deduplicación escritos en disco (legible)
gedAllocatedDataRawDouble

(Global Dedup) Tamaño de datos de deduplicación escritos en disco (bytes)
gedMLockMaxString

(Global Dedup) Máximo tamaño de metadatos para cargar en memoria
gedMLockMinString

(Global Dedup) Mínimo tamaño de metadatos para cargar en memoria
gedMLockedString

(Global Dedup) Metadatos cargados en memoria actualmente
gedDdeErrorsDouble

(Global Dedup) Número de errores en la tabla de dedup
gedVacuumErrorsDouble

(Global Dedup) Número de errores en último vacuum
gedHashNumString

(Global Dedup) Número de hashes en tabla dedup (legible)
gedHashNumRawDouble

(Global Dedup) Número de hashes en tabla dedup
gedVacuumLastExecutionDate

(Global Dedup) Fecha de último proceso de optimizado
gedVacuumDurationString

(Global Dedup) Duración de último optimizado
gedIndexesVolumeString

(Global Dedup) Volumen configurado para almacén de metadatos
gedDataVolumeString

(Global Dedup) Volumen configurado para almacén de datos
gedMetadataString

(Global Dedup) Tamaño de metadatos (legible)
gedMetadataRawDouble

(Global Dedup) Tamaño de metadatos (bytes)
gedReusableString

(Global Dedup) Tamaño de disco reutilizable (por proceso de optimizado pendiente) (legible)
gedReusableRawDouble

(Global Dedup) Tamaño de disco reutilizable (por proceso de optimizado pendiente) (bytes)
gedTotalUsedString

(Global Dedup) Tamaño total utilizado en almacén de datos (legible)
gedTotalUsedRawDouble

(Global Dedup) Tamaño total utilizado en almacén de datos (bytes)
gedIndexesUsedString

(Global Dedup) Tamaño total utilizado en almacén de índices (legible)
gedIndexesUsedRawDouble

(Global Dedup) Tamaño total utilizado en almacén de índices (bytes)





cpuStatus


Estado de carga de Proceso en el sistema

cores

Integer

Número de núcleos
usedCPUPercentString

Porcentaje de uso general de CPUs (legible con %)

usedCPUPercentRawDouble

Porcentaje de uso general de CPUs
systemLoadDouble

Carga en el sistema (indicador de espera de procesos en cola)





haStatus


Estado de HA

isHARunning

boolean

Indica si está activo HA en el equipo
drbdStatusString

Estado de DRBD
drbdSyncStatusString

Estado de sincronización DRBD
heartbeatRunningboolean

El servicio Heartbeat está funcionando
drbdRunningboolean

El servicio DRBD está funcionando
cmanRunningboolean

El servicio CMAN está funcionando
nodeRoleString

Rol general del nodo (master o slave)
isActiveNodeboolean

Indica si es el nodo activo en ese momento
haNodeListString

Lista de nodos del cluster
haNodeNameString

Nombre de nodo (hostname)
haInterfaceString

Interfaz de cluster
haManagementInterfaceString

Interfaz de gestión (De IP virtual)
virtualAddressString

IP Virtual del cluster
haInterfaceLinkStatusString

Estado de la interfaz de cluster (hay o no conectividad al otro nodo)





networkInterfaceStatus


Estado de interfaz de red

nameInterface

String

Nombre de interfaz
statusString

Estado
instantOutMbDouble

Tasa de transferencia en ese instante (subida)
instantInMbDouble

Tasa de transferencia en ese instante (bajada)
cumulativeInOctectsDouble

Tasa acumulada de trasnferencia (bajada)
cumulativeOutOctectsDouble

Tasa acumulada de trasnferencia (subida)





 inventoryBackup


Entrada de inventario de backup

clientName

String
Nombre de cliente existenteCliente del backup
clientAddressString
Dirección o Nombre de dominio del clienteDirección de cliente
clientSOString
Sistema operativo de clienteSO cliente
clientCategoryString
Categorías asignadas al cliente separadas por ','Categorías del cliente
jobNameString
Nombre de trabajo de backup existenteNombre del trabajo configurado
jobTypeString
Tipo de backup (Backup, Copia)Tipo de backup
jobLevelString
Nivel de backup (Full, Level, Incremental, Virtual)Nivel
enabledboolean
Activo o no (true o false)Trabajo activo o desactivado
filesetTypeString
Tipo de fileset (local, client, vmware, mssqlvdi ...)Tipo de copia
filesetPluginsString
Plugins del fileset (delta, systemstate, mssql, exchange...)Plugins de cliente configurados
filesetTargetString
Listado de rutas de backupRutas objetivo del backup
filesetExcludesString
Listado de rutas excluidas de backupRutas excluidas
poolNameString
Nombre de pool asociadoConjunto de backup
poolRetentionString
Retención en días del pool asociadoRetención de este tipo de backup
storageNameString
Nombre de storage asociadoNombre de storage
storageTypeString

Tipo de storage asociado (remote, library...)

Tipo de storage
storageDeviceString
Dispositivo asociado al storage (nombre remoto, ruta volumen local ...)Dispositivo asociado al storage





jobScript


Script asociado a un trabajo

name

String
Nombre de scriptprocess existenteNombre de scriptProcess existente
jobNameString
Nombre de trabajo existenteNombre de job

order

int
Entero que indica el órden del scriptOrden del script process dentro del listado de scripts del trabajo

runsWhen

String
'BEFORE' | 'AFTER'Cuándo se ejecuta el script

onSuccess

Boolean[opcional]true | falseIndica si se ejecuta cuando tiene éxito el trabajo

onFailure

Boolean[opcional]true | falseIndica si se ejecuta cuando falla un trabajo

abortOnError

Boolean[opcional]true | falseAbortar el trabajo en caso de error del script
variablesList<variableValue>[opcional]Lista de objetos VariableValueListado de variables (nombre - valor) asociadas al script
scriptItemsList<jobScriptItem>
Lista de objetos jobScriptItemListado de items con los comandos del script





jobScriptItem


Item de comando dentro de un jobScript
commandString
Cadena con un comandoComando
orderint
EnteroOrden del comando
shellString[opcional]Tipo de shell





filesetMysql


Patrón de ficheros plugin Mysql

name

String

Nombre del patrón

type

String[opcional]dump | BINARY**Tipo de backup mysql

mysql_user

String[opcional]
Superusuario

mysql_password

String[opcional]
Contraseña superusuario

unix_user

String[opcional]
Usuario sistema

name_service

String[opcional]
Nombre del servicio

bin_path

String[opcional]
Ruta binarios

tmp_path

String[opcional]
Ruta archivos temporales

dump_opts

String[opcional]
Parámetros adicionales

bin_format

String[opcional]
**Formato fichero

config_file

String[opcional]
Fichero de configuración

mycnf_dir

String[opcional]
Directorio fichero de configuración

extra_file

String[opcional]
Fichero de conexión

logbin_dir

String[opcional]
**Directorio registro binario

character_set

String[opcional]
Codificación de caracteres

innobackupex_tmpdir

String[opcional]
**Ruta temporal BINARY

all_bbdd

boolean[opcional]true | falseBackup de todas las bases de datos

sudo

boolean[opcional]true | falseLanzar comandos como sudo

global_consistency

boolean[opcional]true | falseActivar consistencia global

abortOnError

boolean[opcional]true | falseAbortar trabajo en caso de cualquier error

md5

boolean[opcional]true | falseActivar firma md5

compression

String[opcional]no | gzip | lzoCompresión de datos
dedupString[opcional]storage | bothsidesTipo de dedupliación Global
dataBaseNamesList<FilesetDataBaseName>[opcional]Lista de objetos FilesetDataBaseNameLista de bases de datos a respaldar




**El modo binary actualmente no está soportado





filesetPostgresql


Patrón de ficheros plugin Postgresql
nameString

Nombre del patrón
typeString
dump | pitrTipo de backup postgresql
md5boolean[opcional]true | falseActivar firma md5
compressionString[opcional]no | gzip | lzoCompresión de datos
dedupString[opcional]storage | bothsidesTipo de dedupliación Global
postgresql_userString[opcional]
Superusuario
pathPasswordString[opcional]
Ruta de archivo de password si no hay acceso directo
name_serviceString[opcional]
Nombre de servicio
bin_pathString[opcional]
Ruta de binarios
tmp_pathString[opcional]
Ruta de archivos temporales
wal_pathString[opcional]
Ruta de archivado WAL
psql_dump_optsString[opcional]
Parámetros adicionales a backup DUMP
psql_compressionString[opcional]1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9Nivel de compresión nativa postgresql
sudoboolean[opcional]true | falseLanzar comandos como sudo
databaseNameString[opcional]Nombres de BBDD separados por ','. En caso de dejar vacío el campo, se haría backup de todas las BBDDsNombre(s) de BBDD





filesetMssqlvdi


Patrón de ficheros del plugin MSSQL-VDI
nameString

Nombre del patrón
md5boolean[opcional]true | falseActivar firma md5

compression

String[opcional]no | gzip | lzoTipo de compresión
dedupString[opcional]storage | bothsidesTipo de deduplicación
allDataBasesboolean
true | falseBackup de todas las bases de datos
dataBaseNamesList<FilesetDataBaseName>[opcional]
Lista de bases de datos a respaldar
copyOnlyString[opcional]no | all | incrementalModo copy-only
instanceString[opcional]
Nombre de isntancia MSSQL
hostnameString[opcional]
Nombre de host
connectionString[opcional]windows | serverTipo de conexión
domainString[opcional]
Nombre de dominio
userString[opcional]
Usuario de MSSQL
passwordString[opcional]
Password de MSSQL
abortOnErrorboolean[opcional]true | falseAbortar trabajo en caso de cualquier error
buffercountInteger[opcional]Entero positivo > 10Número de buffers
maxtransfersizeInteger[opcional]Cualquier múltiplo de 65536 (64 KB) hasta 4194304 bytes (4 MB)Tamaño máximo de transferencia
blocksizeInteger[opcional]512 | 1024 | 2048 | 4096 | 8192 | 16384 | 32768 | 65536Tamaño de bloque





filesetDataBaseName


Nombre de base de datos en patrones de ficheros
nameString

Nombre de base de datos





jobLog


Entrada de log de un trabajo
dateString

Fecha de la entrada
errorBoolean

Indica si la línea indica la ocurrencia de algún error
lineString

Contenido de la entrada de log





restoreRhv


Restauración RHV
idStringRestauración por versión: Obligatorio
Id del job que se desea restaurar una vm.
client_nameString

Restauración por fecha:

Obligatorio


Nombre del cliente origen
vmStringObligatorio
Nombre de la máquina para respaldar
postscriptString

Parámetro Bacula
prescriptString

Parámetro Bacula
summaryString

Parámetro Bacula
dateString

Restauración por fecha:

Obligatorio

dd/MM/yyyy HH:mm

Fecha para la restauración. Formato:

dd/MM/yyyy HH:mm

target_clientStringObligatorio
Cliente objetivo
clusterString

Cluster destino
storage_domainString

Dominio de almacenamiento destino
vm_nameString

Nombre de la máquina virtual que tendrá después de la restauración
vm_force_overwriteString
true | falseForzar sobreescritura
vm_swtichonString
true | falseEncendido de la máquina cuando se recupere

9 Versión de WBSAirback

Este documento se actualiza con cada versión o release que se publica de WBSAirback.

Para hacer uso de esta interfaz REST, además del documento, se recomienda siempre consultar las hojas WADL y XSD asociadas, las cuales se generan dinámicamente desde el propio equipo. De esta forma se pueden confirmar todos los parámetros y métodos, en caso de alguna inexactitud con lo aquí reflejado por diferencia de versiones de WBSAirback o cualquier otro motivo.

La versión sobre la que se basa actualmente este documento es v16.


groupJobConfig

  • No labels