Packages de réplication
Source de réplication et commandes de package.
Table 98 Source de réplication et commandes de package
|
|
|
GET
|
/replication/sources
|
Enumération des sources de réplication
|
GET
|
/replication/sources/<source>
|
Enumération des détails des sources de réplication
|
GET
|
/replication/sources/<source> /packages/<package>
|
Obtention du package de réplication spécifié
|
PUT
|
/replication/sources/<source> /packages/<package>
|
Modification du package de réplication spécifié
|
DELETE
|
/replication/sources/<source> /packages/<package>
|
Destruction du package de réplication spécifié
|
PUT
|
/replication/sources/<source> /packages/<package> /cancelupdate
|
Exécution de la commande cancelupdate sur le package spécifié
|
PUT
|
/replication/sources/<source> /packages/<package>/sever
|
Exécution de la commande sever sur le package spécifié
|
PUT
|
/replication/sources/<source> /packages/<package>/reverse
|
Exécution de la commande reverse sur le package spécifié
|
PUT
|
/replication/sources/<source> /packages/<package>/clone
|
Clonage du package spécifié
|
GET
|
/replication/sources/<source> /packages/<package>/clone /conflicts
|
Enumération des conflits de propriété de partage
|
GET
|
/replication/sources/<source> /packages/<package>/projects
|
Enumération des projets de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>
|
Obtention du projet de package
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>
|
Modification du projet de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/usage/groups
|
Obtention de l'utilisation du groupe de projets de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/usage/users
|
Obtention de l'utilisation par les utilisateurs du projet de package
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/snapshots
|
Création d'un nouvel instantané
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/snapshots/<snapshot>
|
Obtention des propriétés de l'instantané spécifié
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/snapshots
|
Enumération de tous les objets d'instantané
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/snapshots/<snapshot>
|
Destruction de l'objet de l'instantané spécifié
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/snapshots/<snapshot>
|
Modification du nom de l'instantané de projet de package
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic
|
Création d'un nouvel instantané automatique de projet de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic /<automatic>
|
Obtention des propriétés de l'instantané automatique du projet de package spécifié
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic
|
Enumération de tous les objets d'instantané automatique de projet de package
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic /<automatic>
|
Modification de l'objet de l'instantané automatique du projet de package spécifié
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic /<automatic>
|
Destruction de l'objet automatique spécifié
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems
|
Enumération des systèmes de fichiers de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>
|
Obtention du système de fichiers de package
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>
|
Modification du système de fichiers de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/usage/groups
|
Obtention de l'utilisation de groupe de systèmes de fichiers de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/usage/users
|
Obtention de l'utilisation par les utilisateurs du système de fichiers de package
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/snapshots
|
Création d'un nouvel instantané
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/snapshots /<snapshot>
|
Obtention des propriétés de l'instantané spécifié
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/snapshots
|
Enumération de tous les objets d'instantané
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/snapshots /<snapshot>
|
Destruction de l'objet de l'instantané spécifié
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/snapshots /<snapshot>
|
Modification du nom de l'instantané de système de fichiers de package
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic
|
Création d'un nouvel instantané automatique de système de fichiers de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic /<automatic>
|
Obtention des propriétés de l'instantané automatique du système de fichiers de package spécifié
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic
|
Enumération de tous les objets d'instantané automatique de système de fichiers de package
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic /<automatic>
|
Modification de l'objet de l'instantané automatique du système de fichiers de package spécifié
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic /<automatic>
|
Destruction de l'objet automatique spécifié
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns
|
Enumération des LUN de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>
|
Obtention du LUN de package
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>
|
Modification du LUN de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/usage /groups
|
Obtention de l'utilisation de groupe de LUN de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/usage /users
|
Obtention de l'utilisation par les utilisateurs du LUN de package
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/snapshots
|
Création d'un nouvel instantané
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/snapshots /<snapshot>
|
Obtention des propriétés de l'instantané spécifié
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/snapshots
|
Enumération de tous les objets d'instantané
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/snapshots /<snapshot>
|
Destruction de l'objet de l'instantané spécifié
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/snapshots /<snapshot>
|
Modification du nom de l'instantané de LUN de package
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/automatic
|
Création d'un nouvel instantané automatique de LUN de package
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/automatic /<automatic>
|
Obtention des propriétés de l'instantané automatique du LUN de package spécifié
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/automatic
|
Enumération de tous les objets de l'instantané automatique du LUN de package
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/automatic /<automatic>
|
Modification de l'objet de l'instantané automatique du LUN de package spécifié
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/automatic /<automatic>
|
Destruction de l'objet automatique spécifié
|
|
List Replication Sources
Répertorie toutes les sources de réplication disponibles.
Exemple de demande :
GET /api/storage/v1/replication/sources HTTP/1.1
Host: zfs-storage.example.com
Accept: application/json
Exemple de sortie :
HTTP/1.1 200 OK
X-Zfssa-Replication-Api: 1.0
Content-Type: application/json
Content-Length: 529
{
"sources": [{
"asn": "314d252e-c42b-e844-dab1-a3bca680b563",
"href": "/api/storage/v1/replication/sources/zfssa-repl-host",
"ip_address": "10.80.231.58:216",
"name": "zfssa-repl-host",
"source": "source-000"
}]
}
List Replication Packages
Répertorie tous les packages de réplication à partir de la source de réplication spécifiée.
Exemple de demande :
GET /api/storage/v1/replication/sources/zfssa-repl/packages HTTP/1.1
Host: zfs-storage.example.com
Accept: application/json
Exemple de résultat :
HTTP/1.1 200 OK
X-Zfssa-Replication-Api: 1.0
Content-Type: application/json
Content-Length: 529
{
"packages": [{
"enabled": true,
"href": "/api/v1/storage/replication/sources/zfssa-repl/packages/package-008",
"id": "b2d8b35a-a5a0-6c74-f7e9-b75c357e841f",
"last_result": "unknown",
"last_sync": "unknown",
"last_try": "unknown",
"state": "idle",
"state_description": "Idle (no update in progress)"
}, {
"enabled": true,
"href": "/api/storage/v1/replication/sources/zfssa-repl/packages/package-009",
"id": "2643a0eb-648d-6ad7-d405-b690d06f6cf6",
"last_result": "success",
"last_sync": "Wed Jul 31 2013 21:58:02 GMT+0000 (UTC)",
"last_try": "Wed Jul 31 2013 21:58:02 GMT+0000 (UTC)",
"state": "idle",
"state_description": "Idle (no update in progress)",
"project": "gold/nas-rr-2643a0eb-648d-6ad7-d405-b690d06f6cf6/default",
}
]}
Modify Package
Modifie les propriétés du package.
Table 99 Modification des propriétés du package
|
|
|
boolean
|
enabled
|
Etat actuel des mises à jour de réplication
|
|
Exemple de demande :
PUT /api/storage/v1/replication/sources/zfssa-repl/packages/
8373d331-de60-e590-90e8-9ad69fcb4aec HTTP/1.1
Host: zfs-storage.example.com
Authorization: Basic ab6rt4psMWE=
Content-Type: application/json
{"enabled": false}
Exemple de résultat :
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
Delete Package
Détruit un package de réplication.
Exemple de demande :
DELETE /api/storage/v1/replication/sources/zfssa-repl/packages
/8373d331-de60-e590-90e8-9ad69fcb4aec HTTP/1.1
Host: zfs-storage.example.com
Authorization: Basic ab6rt4psMWE=
Une suppression réussie renvoie le code HTTP 204 (No Content).
Exemple de réponse :
HTTP/1.1 204 No-Content
X-Zfssa-Replication-Api: 1.0
Cancel Update
Annule une mise à jour en cours pour ce package.
Exemple de demande :
PUT /api/storage/v1/replication/sources/zfssa-repl/packages/
8373d331-de60-e590-90e8-9ad69fcb4aec/cancelupdate HTTP/1.1
Host: zfs-storage.example.com
Authorization: Basic ab6rt4psMWE=
Si aucune mise à jour n'est en cours, un statut HTTP 409 (Conflict) est renvoyé.
Exemple de réponse :
HTTP/1.1 409 Conflict
X-Zfssa-Replication-Api: 1.0
Content-Type: application/json
Content-Length: 137
{
"cancelupdate": {
"AKSH_ERROR": "EAK_NAS_REPL_BADSTATE",
"message": "operation illegal for state"
}
}
Exemple de réponse :
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
Clone Package
Clone le projet de package.
Exemple de demande :
PUT /api/v1/storage/replication/sources/zfssa-repl/packages/
8373d331-de60-e590-90e8-9ad69fcb4aec/clone HTTP/1.1
Host: zfs-storage.example.com
Authorization: Basic ab6rt4psMWE=
Exemple de réponse :
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
Un clone obtenu avec succès renvoie le code de statut HTTP 202 (Accepted). Une commande d'aide peut être utilisée pour déterminer la présence de conflits avec l'opération de clonage.
Exemple de demande de conflit de clonage :
GET /api/storage/v1/replication/sources/zfssa-repl/packages/
8373d331-de60-e590-90e8-9ad69fcb4aec/clone/conflicts HTTP/1.1
Host: zfs-storage.example.com
Authorization: Basic ab6rt4psMWE=
Renvois de conflits de clonage :
HTTP/1.1 200 OK
X-Zfssa-Replication-Api: 1.0
Content-Type: application/json
Content-Length: 58
{
"conflicts": "There are no conflicts.\n"
}
Propriétés :
Default settings:
target_project = (unset)
original_mountpoint = /export
override_mountpoint = false
mountpoint =
Sever Package
Dissocie une connexion de réplication et déplace le contenu du package dans un nouveau projet. Cette action dissocie de manière permanente ce package et ses partages répliqués du système source, créant ainsi des projets locaux sur ce système. Les mises à jour de réplication ultérieures nécessitent la définition de nouvelles actions et l'envoi d'une mise à jour complète, quelle que soit la direction de ces mises à jour.
Exemple de demande :
PUT /api/storage/v1/replication/sources/zfssa-repl/packages/
8373d331-de60-e590-90e8-9ad69fcb4aec/sever HTTP/1.1
Host: zfs-storage.example.com
Authorization: Basic ab6rt4psMWE=
{"projname":"restsev"}
Réponse obtenue avec succès :
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
Reverse Package
Inverse le sens de la réplication. Cette action désactive la réplication pour ce package et déplace le contenu de ce package dans un nouveau projet local configuré pour effectuer une réplication vers la source. Toutes les modifications des métadonnées ou des données apportées à la source depuis la dernière mise à jour réussie sont perdues lorsque le nouveau projet est répliqué pour la première fois vers la source.
Exemple de demande :
PUT /api/storage/v1/replication/sources/zfssa-repl/packages/
8373d331-de60-e590-90e8-9ad69fcb4aec/reverse HTTP/1.1
Host: zfs-storage.example.com
Authorization: Basic ab6rt4psMWE=
{"projname":"restrev"}
Réponse obtenue avec succès :
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0