Go to main content

Oracle® ZFS Storage Appliance RESTful API ガイド、Release OS8.8.x

印刷ビューの終了

更新: 2021 年 8 月
 
 

レプリケーションパッケージ

このセクションでは、レプリケーションパッケージおよびソースのコマンドについて詳しく説明します。

表 65  レプリケーションパッケージのコマンド
リクエスト
パス /api/storage/v{1|2}/replication の後ろに追加
説明
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  レプリケーションソースのコマンド
リクエスト
パス /api/storage/v{1|2}/replication/sources の後ろに追加
説明
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