복제 패키지
복제 소스 및 패키지 명령입니다.
표 98 복제 소스 및 패키지 명령
|
|
|
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",
}
]}
패키지 수정
패키지 등록 정보를 수정합니다.
표 99 패키지 등록 정보 수정
|
|
|
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
패키지 삭제
복제 패키지를 삭제합니다.
요청 예:
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