复制数据包
复制源和数据包命令。
表 95 复制源和数据包命令
|
|
|
GET
|
/replication/sources
|
列出复制源
|
GET
|
/replication/sources/<source>
|
列出复制源详细信息
|
GET
|
/replication/sources/<source> /packages/<package>
|
获取指定的复制数据包
|
PUT
|
/replication/sources/<source> /packages/<package>
|
修改指定的复制数据包
|
DELETE
|
/replication/sources/<source> /packages/<package>
|
销毁指定的复制数据包
|
PUT
|
/replication/sources/<source> /packages/<package> /cancelupdate
|
对指定的数据包运行 cancelupdate
|
PUT
|
/replication/sources/<source> /packages/<package>/sever
|
对指定的数据包运行 sever
|
PUT
|
/replication/sources/<source> /packages/<package>/reverse
|
对指定的数据包运行 reverse
|
PUT
|
/replication/sources/<source> /packages/<package>/clone
|
克隆指定的数据包
|
GET
|
/replication/sources/<source> /packages/<package>/clone /conflicts
|
列出共享资源属性冲突
|
GET
|
/replication/sources/<source> /packages/<package>/projects
|
列出数据包项目
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>
|
获取数据包项目
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>
|
修改数据包项目
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/usage/groups
|
获取数据包项目组的使用情况
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/usage/users
|
获取数据包项目用户的使用情况
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/snapshots
|
创建新快照
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/snapshots/<snapshot>
|
获取指定的快照属性
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/snapshots
|
列出所有快照对象
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/snapshots/<snapshot>
|
销毁指定的快照对象
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/snapshots/<snapshot>
|
重命名数据包项目快照
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic
|
创建新的数据包项目自动快照
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic /<automatic>
|
获取指定的数据包项目自动快照属性
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic
|
列出所有数据包项目自动快照对象
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic /<automatic>
|
修改指定的数据包项目自动快照对象
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic /<automatic>
|
销毁指定的自动对象
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems
|
列出数据包文件系统
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>
|
获取数据包文件系统
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>
|
修改数据包文件系统
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/usage/groups
|
获取数据包文件系统组的使用情况
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/usage/users
|
获取数据包文件系统用户的使用情况
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/snapshots
|
创建新快照
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/snapshots /<snapshot>
|
获取指定的快照属性
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/snapshots
|
列出所有快照对象
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/snapshots /<snapshot>
|
销毁指定的快照对象
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/snapshots /<snapshot>
|
重命名数据包文件系统快照
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic
|
创建新的数据包文件系统自动快照
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic /<automatic>
|
获取指定的数据包文件系统自动快照属性
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic
|
列出所有数据包文件系统自动快照对象
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic /<automatic>
|
修改指定的数据包文件系统自动快照对象
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic /<automatic>
|
销毁指定的自动对象
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns
|
列出数据包 LUN
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>
|
获取数据包 LUN
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>
|
修改数据包 LUN
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/usage /groups
|
获取数据包 LUN 组的使用情况
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/usage /users
|
获取数据包 LUN 用户的使用情况
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/snapshots
|
创建新快照
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/snapshots /<snapshot>
|
获取指定的快照属性
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/snapshots
|
列出所有快照对象
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/snapshots /<snapshot>
|
销毁指定的快照对象
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/snapshots /<snapshot>
|
重命名数据包 LUN 快照
|
POST
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/automatic
|
创建新的数据包 LUN 自动快照
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/automatic /<automatic>
|
获取指定的数据包 LUN 自动快照属性
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/automatic
|
列出所有数据包 LUN 自动快照对象
|
PUT
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/automatic /<automatic>
|
修改指定的数据包 LUN 自动快照对象
|
DELETE
|
/replication/sources/<source> /packages/<package>/projects /<project>/luns/<lun>/automatic /<automatic>
|
销毁指定的自动对象
|
|
列出复制源
列出所有可用的复制源。
请求示例:
GET /api/storage/v1/replication/sources HTTP/1.1
Host: zfs-storage.example.com
Accept: application/json
输出示例:
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"
}]
}
列出复制数据包
列出指定的复制源中的所有复制数据包。
请求示例:
GET /api/storage/v1/replication/sources/zfssa-repl/packages HTTP/1.1
Host: zfs-storage.example.com
Accept: application/json
结果示例:
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",
}
]}
修改数据包
修改数据包属性。
请求示例:
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}
结果示例:
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
删除数据包
销毁复制数据包。
请求示例:
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=
成功删除后将返回 HTTP 状态 204 (No Content)。
响应示例:
HTTP/1.1 204 No-Content
X-Zfssa-Replication-Api: 1.0
取消更新
取消此数据包正在进行的更新。
请求示例:
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=
如果未进行更新,将返回 HTTP 状态 409 (Conflict)。
响应示例:
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"
}
}
响应示例:
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
克隆数据包
克隆数据包项目。
请求示例:
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=
响应示例:
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
克隆成功返回 HTTP 状态 202 (Accepted)。帮助命令可用于确定克隆操作是否出现冲突。
克隆冲突请求示例:
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=
克隆/冲突返回冲突:
HTTP/1.1 200 OK
X-Zfssa-Replication-Api: 1.0
Content-Type: application/json
Content-Length: 58
{
"conflicts": "There are no conflicts.\n"
}
属性:
Default settings:
target_project = (unset)
original_mountpoint = /export
override_mountpoint = false
mountpoint =
提供数据包
提供复制连接并将数据包内容移到新项目中。此操作永久性提供此数据包以及其在源系统中的复制的共享资源,使它们成为此系统上的本地项目。任何方向的后续复制更新都需要定义新操作和发送完整更新。
请求示例:
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"}
成功响应:
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
反转数据包
反转复制方向。此操作禁用此数据包的复制,并将此数据包内容移到配置用于复制回源的新本地项目。当新项目首次复制回源后,自上次成功更新后对源所做的所有元数据或数据更改都将丢失。
请求示例:
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"}
成功响应:
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0