レプリケーションパッケージ
このセクションでは、レプリケーションパッケージおよびソースのコマンドについて詳しく説明します。
表 65 レプリケーションパッケージのコマンド
|
|
|
GET
|
/packages
|
すべてのレプリケーションパッケージを一覧表示します
|
GET
|
/packages/package
|
指定されたレプリケーションパッケージを取得します
|
PUT
|
/packages/package
|
指定されたレプリケーションパッケージを変更します
|
DELETE
|
/packages/package
|
指定されたレプリケーションパッケージを破棄します
|
PUT
|
/packages/package/cancelupdate
|
指定されたパッケージで cancelupdate を実行します
|
PUT
|
/packages/package/sever
|
指定されたパッケージで切断を実行します
|
PUT
|
/packages/package/pkgreverse
|
指定されたパッケージでの逆方向化を実行します
|
PUT
|
/packages/package/clone
|
指定されたパッケージのクローンを作成します
|
GET
|
/packages/package/clone/conflicts
|
シェアプロパティーの競合を一覧表示します
|
GET
|
/packages/package/projects
|
パッケージプロジェクトを一覧表示します
|
GET
|
/packages/package/projects/project
|
パッケージプロジェクトを取得します
|
PUT
|
/packages/package/projects/project
|
パッケージプロジェクトを変更します
|
GET
|
/packages/package/projects/project/usage/groups
|
パッケージプロジェクトグループの使用状況を取得します
|
GET
|
/packages/package/projects/project/usage/users
|
パッケージプロジェクトユーザーの使用状況を取得します
|
GET
|
/packages/package/projects/project/snapshots
|
すべてのスナップショットオブジェクトを一覧表示します
|
GET
|
/packages/package/projects/project/snapshots/snapshot
|
指定されたスナップショットプロパティーを取得します
|
DELETE
|
/packages/package/projects/project/snapshots/snapshot
|
指定されたスナップショットオブジェクトを破棄します
|
PUT
|
/packages/package/projects/project/snapshots/snapshot
|
パッケージプロジェクトスナップショットの名前を変更します
|
GET
|
/packages/package/projects/project/automatic
|
すべてのパッケージプロジェクト自動スナップショットオブジェクトを一覧表示します
|
GET
|
/packages/package/projects/project/automatic/automatic
|
指定されたパッケージプロジェクトの自動スナップショットプロパティーを取得します
|
GET
|
/packages/package/projects/project/filesystems
|
パッケージファイルシステムを一覧表示します
|
GET
|
/packages/package/projects/project/filesystems/filesystem
|
パッケージファイルシステムを取得します
|
PUT
|
/packages/package/projects/project/filesystems/filesystem
|
パッケージファイルシステムを変更します
|
GET
|
/packages/package/projects/project/filesystems/filesystem/usage/groups
|
パッケージファイルシステムグループの使用状況を取得します
|
GET
|
/packages/package/projects/project/filesystems/filesystem/usage/users
|
パッケージファイルシステムユーザーの使用状況を取得します
|
GET
|
/packages/package/projects/project/filesystems/filesystem/snapshots/snapshot
|
指定されたスナップショットプロパティーを取得します
|
GET
|
/packages/package/projects/project/filesystems/filesystem/snapshots
|
すべてのスナップショットオブジェクトを一覧表示します
|
DELETE
|
/packages/package/projects/project/filesystems/filesystem/snapshots/snapshot
|
指定されたスナップショットオブジェクトを破棄します
|
PUT
|
/packages/package/projects/project/filesystems/filesystem/snapshots/snapshot
|
パッケージファイルシステムスナップショットの名前を変更します
|
GET
|
/packages/package/projects/project/filesystems/filesystem/automatic
|
すべてのパッケージファイルシステムの自動スナップショットオブジェクトを一覧表示します
|
GET
|
/packages/package/projects/project/filesystems/filesystem/automatic/automatic
|
指定されたパッケージファイルシステムの自動スナップショットプロパティーを取得します
|
GET
|
/packages/package/projects/project/luns
|
パッケージ LUN を一覧表示します
|
GET
|
/packages/package/projects/project/luns/lun
|
パッケージ LUN を取得します
|
PUT
|
/packages/package/projects/project/luns/lun
|
パッケージ LUN を変更します
|
GET
|
/packages/package/projects/project/luns/lun/usage/groups
|
パッケージ LUN グループの使用状況を取得します
|
GET
|
/packages/package/projects/project/luns/lun/usage/users
|
パッケージ LUN ユーザーの使用状況を取得します
|
GET
|
/packages/package/projects/project/luns/lun/snapshots/snapshot
|
指定されたスナップショットプロパティーを取得します
|
GET
|
/packages/package/projects/project/luns/lun/snapshots
|
すべてのスナップショットオブジェクトを一覧表示します
|
DELETE
|
/packages/package/projects/project/luns/lun/snapshots/snapshot
|
指定されたスナップショットオブジェクトを破棄します
|
PUT
|
/packages/package/projects/project/luns/lun/snapshots/snapshot
|
パッケージ LUN スナップショットの名前を変更します
|
GET
|
/packages/package/projects/project/luns/lun/automatic
|
すべてのパッケージ LUN の自動スナップショットオブジェクトを一覧表示します
|
GET
|
/packages/package/projects/project/luns/lun/automatic/automatic
|
指定されたパッケージ LUN の自動スナップショットプロパティーを取得します
|
|
次のコマンドを使用して、レプリケーションソースおよびそれに対応するパッケージにアクセスすることもできます。
表 66 レプリケーションソースのコマンド
|
|
|
GET
|
/api/storage/v{1|2}/replication/sources のみを使用
|
レプリケーションソースを一覧表示します
|
GET
|
/source
|
レプリケーションソースの詳細を一覧表示します
|
GET
|
/source/packages/package
|
指定されたレプリケーションパッケージを取得します
|
PUT
|
/source/packages/package
|
指定されたレプリケーションパッケージを変更します
|
DELETE
|
/source/packages/package
|
指定されたレプリケーションパッケージを破棄します
|
PUT
|
/source/packages/package/cancelupdate
|
指定されたパッケージで cancelupdate を実行します
|
PUT
|
/source/packages/package/sever
|
指定されたパッケージで切断を実行します
|
PUT
|
/source/packages/package/pkgreverse
|
指定されたパッケージでの逆方向化を実行します
|
PUT
|
/source/packages/package/clone
|
指定されたパッケージのクローンを作成します
|
GET
|
/source/packages/package/clone/conflicts
|
シェアプロパティーの競合を一覧表示します
|
GET
|
/source/packages/package/projects
|
パッケージプロジェクトを一覧表示します
|
GET
|
/source/packages/package/projects/project
|
パッケージプロジェクトを取得します
|
PUT
|
/source/packages/package/projects/project
|
パッケージプロジェクトを変更します
|
GET
|
/source/packages/package/projects/project/usage/groups
|
パッケージプロジェクトグループの使用状況を取得します
|
GET
|
/source/packages/package/projects/project/usage/users
|
パッケージプロジェクトユーザーの使用状況を取得します
|
GET
|
/source/packages/package/projects/project/snapshots/snapshot
|
指定されたスナップショットプロパティーを取得します
|
GET
|
/source/packages/package/projects/project/snapshots
|
すべてのスナップショットオブジェクトを一覧表示します
|
DELETE
|
/source/packages/package/projects/project/snapshots/snapshot
|
指定されたスナップショットオブジェクトを破棄します
|
PUT
|
/source/packages/package/projects/project/snapshots/snapshot
|
パッケージプロジェクトスナップショットの名前を変更します
|
GET
|
/source/packages/package/projects/project/automatic
|
すべてのパッケージプロジェクト自動スナップショットオブジェクトを一覧表示します
|
GET
|
/source/packages/package/projects/project/automatic/automatic
|
指定されたパッケージプロジェクトの自動スナップショットプロパティーを取得します
|
GET
|
/source/packages/package/projects/project/filesystems
|
パッケージファイルシステムを一覧表示します
|
GET
|
/source/packages/package/projects/project/filesystems/filesystem
|
パッケージファイルシステムを取得します
|
PUT
|
/source/packages/package/projects/project/filesystems/filesystem
|
パッケージファイルシステムを変更します
|
GET
|
/source/packages/package/projects/project/filesystems/filesystem/usage/groups
|
パッケージファイルシステムグループの使用状況を取得します
|
GET
|
/source/packages/package/projects/project/filesystems/filesystem/usage/users
|
パッケージファイルシステムユーザーの使用状況を取得します
|
GET
|
/source/packages/package/projects/project/filesystems/filesystem/snapshots/snapshot
|
指定されたスナップショットプロパティーを取得します
|
GET
|
/source/packages/package/projects/project/filesystems/filesystem/snapshots
|
すべてのスナップショットオブジェクトを一覧表示します
|
DELETE
|
/source/packages/package/projects/project/filesystems/filesystem/snapshots/snapshot
|
指定されたスナップショットオブジェクトを破棄します
|
PUT
|
/source/packages/package/projects/project/filesystems/filesystem/snapshots/snapshot
|
パッケージファイルシステムスナップショットの名前を変更します
|
GET
|
/source/packages/package/projects/project/filesystems/filesystem/automatic
|
すべてのパッケージファイルシステムの自動スナップショットオブジェクトを一覧表示します
|
GET
|
/source/packages/package/projects/project/filesystems/filesystem/automatic/automatic
|
指定されたパッケージファイルシステムの自動スナップショットプロパティーを取得します
|
GET
|
/source/packages/package/projects/project/luns
|
パッケージ LUN を一覧表示します
|
GET
|
/source/packages/package/projects/project/luns/lun
|
パッケージ LUN を取得します
|
PUT
|
/source/packages/package/projects/project/luns/lun
|
パッケージ LUN を変更します
|
GET
|
/source/packages/package/projects/project/luns/lun/usage/groups
|
パッケージ LUN グループの使用状況を取得します
|
GET
|
/source/packages/package/projects/project/luns/lun/usage/users
|
パッケージ LUN ユーザーの使用状況を取得します
|
GET
|
/source/packages/package/projects/project/luns/lun/snapshots/snapshot
|
指定されたスナップショットプロパティーを取得します
|
GET
|
/source/packages/package/projects/project/luns/lun/snapshots
|
すべてのスナップショットオブジェクトを一覧表示します
|
DELETE
|
/source/packages/package/projects/project/luns/lun/snapshots/snapshot
|
指定されたスナップショットオブジェクトを破棄します
|
PUT
|
/source/packages/package/projects/project/luns/lun/snapshots/snapshot
|
パッケージ LUN スナップショットの名前を変更します
|
GET
|
/source/packages/package/projects/project/luns/lun/automatic
|
すべてのパッケージ LUN の自動スナップショットオブジェクトを一覧表示します
|
GET
|
/source/packages/package/projects/project/luns/lun/automatic/automatic
|
指定されたパッケージ LUN の自動スナップショットプロパティーを取得します
|
|
レプリケーションソースの一覧表示
すべての使用可能なレプリケーションソースを一覧表示します。
リクエストの例:
GET /api/storage/v2/replication/sources HTTP/1.1
Host: zfs-storage.example.com:215
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/v2/replication/sources/zfs-repl-host",
"ip_address": "ipaddr-1",
"name": "zfs-repl-host",
"source": "source-000"
}]
}
レプリケーションパッケージの一覧表示
すべてのレプリケーションパッケージを一覧表示します。
リクエストの例:
GET /api/storage/v2/replication/packages HTTP/1.1
Host: zfs-storage.example.com:215
Accept: application/json
結果例:
HTTP/1.1 200 OK
X-Zfssa-Replication-Api: 1.0
Content-Type: application/json
Content-Length: 529
{
"packages": [
{
"href": "/api/storage/v2/replication/packages/0efaab49-7b22-4d4a-def8-813c27780894",
"id": "0efaab49-7b22-4d4a-def8-813c27780894",
"source_name": "sourceA",
"source_asn": "8a22f6e0-4ee4-4b85-f141-e152f5fac961",
"source_ip": "ipaddr-1",
"source_pool": "poolA",
"target_pool": "poolA",
"replica_of": "projTest",
"enabled": true,
"state": "idle",
"state_description": "Idle (no update in progress)",
"offline": false,
"import_path": "",
"data_timestamp": "2017-03-09T22:36:12Z",
"last_sync": "2017-03-09T22:36:22Z",
"last_try": "2017-03-09T22:36:22Z",
"last_result": "success"
}
]
}
パッケージの変更
パッケージプロパティーを変更します。
|
|
|
enabled
|
boolean
|
レプリケーション更新の現在の状態
|
|
リクエストの例:
PUT /api/storage/v2/replication/packages/8373d331-de60-e590-90e8-9ad69fcb4aec HTTP/1.1
Host: zfs-storage.example.com:215
Authorization: Basic Tm8gcGVla2luZyE=
Content-Type: application/json
{"enabled": false}
結果例:
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
リクエストの例:
PUT /api/storage/v2/replication/packages/8373d331-de60-e590-90e8-9ad69fcb4aec/pkgreverse HTTP/1.1
Host: zfs-storage.example.com:215
Authorization: Basic Tm8gcGVla2luZyE=
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/v2/replication/packages/8373d331-de60-e590-90e8-9ad69fcb4aec HTTP/1.1
Host: zfs-storage.example.com:215
Authorization: Basic Tm8gcGVla2luZyE=
削除に成功すると、HTTP ステータス 204 (No Content) が返されます。
結果例:
HTTP/1.1 204 No-Content
X-Zfssa-Replication-Api: 1.0
更新の取り消し
このパッケージに対する進行中の更新を取り消します。
リクエストの例:
PUT /api/storage/v2/replication/packages/8373d331-de60-e590-90e8-9ad69fcb4aec/cancelupdate HTTP/1.1
Host: zfs-storage.example.com:215
Authorization: Basic Tm8gcGVla2luZyE=
進行中の更新がない場合、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/v2/storage/replication/packages/8373d331-de60-e590-90e8-9ad69fcb4aec/clone HTTP/1.1
Host: zfs-storage.example.com:215
Authorization: Basic Tm8gcGVla2luZyE=
結果例:
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
クローン作成に成功すると、HTTP ステータス 202 (Accepted) が返されます。ヘルパーコマンドを使用すると、クローン操作との競合が発生しているかどうかを確認できます。
クローンの競合リクエストの例:
GET /api/storage/v2/replication/packages/8373d331-de60-e590-90e8-9ad69fcb4aec/clone/conflicts HTTP/1.1
Host: zfs-storage.example.com:215
Authorization: Basic Tm8gcGVla2luZyE=
クローンまたは競合が競合を返します。
HTTP/1.1 200 OK
X-Zfssa-Replication-Api: 1.0
Content-Type: application/json
Content-Length: 58
{
"conflicts": "There are no conflicts."
}
プロパティー:
Default settings:
target_project = (unset)
original_mountpoint = /export
override_mountpoint = false
mountpoint =
パッケージの切断
レプリケーション接続を切断し、パッケージの内容を新しいプロジェクトに移動します。このアクションは、このパッケージとそのレプリケートされたシェアをソースシステムから完全に切断し、このシステム上のローカルプロジェクトとします。その後のどちらの方向のレプリケーション更新でも、新しいアクションを定義し、完全な更新を送信することが必要になります。
リクエストの例:
PUT /api/storage/v2/replication/packages/8373d331-de60-e590-90e8-9ad69fcb4aec/sever HTTP/1.1
Host: zfs-storage.example.com:215
Authorization: Basic Tm8gcGVla2luZyE=
{"projname":"restsev"}
成功のレスポンス:
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0
パッケージの逆方向化
レプリケーションの方向を逆にします。このアクションはこのパッケージのレプリケーションを無効にし、このパッケージの内容を、ソースにレプリケートして戻すように構成された新しいローカルプロジェクトに移動します。最後の成功した更新以降にソースに対して行われたメタデータまたはデータの変更は、新しいプロジェクトが最初にソースにレプリケートされて戻されたときに失われます。
リクエストの例:
PUT /api/storage/v2/replication/packages/8373d331-de60-e590-90e8-9ad69fcb4aec/reverse HTTP/1.1
Host: zfs-storage.example.com:215
Authorization: Basic Tm8gcGVla2luZyE=
{"projname":"restrev"}
成功のレスポンス:
HTTP/1.1 202 Accepted
X-Zfssa-Replication-Api: 1.0