レプリケーションパッケージ
レプリケーションソースおよびパッケージのコマンド。
表 105 レプリケーションソースおよびパッケージのコマンド
|
|
|
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
|
指定されたパッケージで切断を実行します
|
PUT
|
/replication/sources/<source> /packages/<package>/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>
|
パッケージプロジェクトスナップショットの名前を変更します
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/automatic /<automatic>
|
指定されたパッケージプロジェクトの自動スナップショットプロパティーを取得します
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/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>
|
パッケージファイルシステムスナップショットの名前を変更します
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/automatic /<automatic>
|
指定されたパッケージファイルシステムの自動スナップショットプロパティーを取得します
|
GET
|
/replication/sources/<source> /packages/<package>/projects /<project>/filesystems /<filesystem>/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 スナップショットの名前を変更します
|
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 の自動スナップショットオブジェクトを一覧表示します
|
|
レプリケーションソースの一覧表示
すべての使用可能なレプリケーションソースを一覧表示します。
リクエストの例:
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",
}
]}
パッケージの変更
パッケージプロパティーを変更します。
表 106 パッケージプロパティーの変更
|
|
|
boolean
|
enabled
|
レプリケーション更新の現在の状態
|
|
リクエストの例:
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
リクエストの例:
PUT /api/storage/v1/replication/sources/zfssa-repl/packages/
8373d331-de60-e590-90e8-9ad69fcb4aec/pkgreverse HTTP/1.1
Host: zfs-storage.example.com
Authorization: Basic ab6rt4psMWE=
Content-Type: application/json
{"new_project_name":"restrev", "enable_action_upon_reversal":"true"}
結果例:
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