cluster 명령은 클러스터링을 설정하고 클러스터화된 리소스를 관리합니다.
|
cluster 명령은 현재 클러스터 구성 상태 및 리소스 등록 정보를 나열합니다.
요청 예:
GET /api/hardware/v2/cluster HTTP/1.1 Authorization: Basic Tm8gcGVla2luZyE= Host: zfs-storage.example.com:215 Accept: application/json
결과 예:
HTTP/1.1 200 OK X-Zfssa-Appliance-Api: 1.0 Content-Type: application/json Content-Length: 529 X-Zfssa-Api: 1.0 { "cluster": { "state": "AKCS_OWNER", "description": "Active (takeover completed)", "peer_asn": "d23331e6-41f4-6a15-ac09-a4353e33b43a", "peer_hostname": "peer-1", "peer_state": "AKCS_STRIPPED", "peer_description": "Ready (waiting for failback)", "resources": [ { "owner": "peer-1", "type": "private", "user_label": "peer-1", "details": [ "ipaddr" ], "href": "/api/hardware/v2/cluster/resources/net/vnic1" }, { "owner": "peer-1", "type": "singleton", "user_label": "", "details": [ "8.03T" ], "href": "/api/hardware/v2/cluster/resources/zfs/cas1" }, { "owner": "peer-2", "type": "singleton", "user_label": "", "details": [ "18.7T" ], "href": "/api/hardware/v2/cluster/resources/zfs/cas2" } ] } }
다음 예에서와 같이 cluster 명령으로 나열되는 리소스 중 하나의 href 등록 정보를 사용하여 특정 클러스터 리소스에 대해서만 등록 정보를 나열할 수 있습니다.
GET /api/hardware/v2/cluster/resources/net/vnic1 HTTP/1.1
cluster 명령으로 나열되는 리소스 중 하나의 href 등록 정보와 함께 PUT 요청을 사용하여 해당 클러스터 리소스에 대한 등록 정보를 설정할 수 있습니다.
cluster/links 명령은 클러스터 카드의 현재 링크 상태를 반환합니다.
초기 클러스터 설정을 수행하기 전에 모든 링크가 AKCIOS_ACTIVE 상태가 되도록 cluster/links를 사용합니다. 연결이 AKCIOS_ACTIVE 상태가 아닐 경우 다른 시스템이 다시 시작/재부트 중이거나 링크가 케이블을 통해 제대로 연결되지 않았거나 클러스터 케이블이 커넥터를 고정시키고 있지 않는 것일 수 있습니다. 클러스터 케이블 연결 지침은 Oracle ZFS Storage Appliance 케이블 연결 설명서의 클러스터 케이블 연결을 참조하십시오.
cluster/links 명령의 출력은 다른 컨트롤러 모델의 출력과 다릅니다. ZS9-2 컨트롤러의 경우 두 클러스터 I/O 링크에 대해 상태가 반환됩니다. 기타 모든 컨트롤러의 경우 세 클러스터 I/O 링크에 대해 상태가 반환됩니다. 클러스터 I/O 링크에 대한 설명은 Cluster Interconnect I/O in Oracle ZFS Storage Appliance Administration Guide, Release OS8.8.x를 참조하십시오.
요청 예:
GET /api/hardware/v2/cluster/links HTTP/1.1 Authorization: Basic Tm8gcGVla2luZyE= Host: zfs-storage.example.com:215 Accept: application/json
Oracle ZFS Storage ZS9-2에 대한 결과 예:
HTTP/1.1 200 OK X-Zfssa-Appliance-Api: 1.0 Content-Type: application/json Content-Length: 84 { "links": { "lio_dev/i40e0 = AKCIOS_ACTIVE\n lio_dev/i40e1 = AKCIOS_ACTIVE" } }
ZS7-2 또는 ZS5-2 컨트롤러에 대한 결과 예:
HTTP/1.1 200 OK X-Zfssa-Appliance-Api: 1.0 Content-Type: application/json Content-Length: 181 { "links": "\n\tclustron_ng3:0/clustron_uart:0 = AKCIOS_ACTIVE \n\tclustron_ng3:0/clustron_uart:1 = AKCIOS_ACTIVE \n\tclustron_ng3:0/dlpi:0 = AKCIOS_ACTIVE\n\n" }
다른 컨트롤러는 유사한 links 출력을 보여줍니다. /clustron 또는 /dlpi 앞에 오는 부분만 다릅니다. 예를 들어, 이전 예의 clustron3_ng3:0은 ZS5-4 컨트롤러의 경우 clustron3:0, ZS4-4 컨트롤러의 경우 clustron2:0, ZS3-2 컨트롤러의 경우 clustron2_embedded:0이 됩니다.
클러스터 관리에는 failback, takeover 및 unconfig가 포함됩니다. 성공 시 두 명령은 HTTP 상태 202(Accepted)를 반환합니다. 클러스터가 명령을 수락하는 올바른 상태가 아닌 경우 HTTP 상태 409(Conflict)가 반환됩니다.
피어 실패가 감지될 때마다 인계가 자동으로 시도됩니다. 관리자도 인계를 수행할 수 있습니다.
페일백은 관리자가 수행해야 합니다. 페일백은 비동기 작업입니다. REST 클라이언트가 failback 명령을 전송하면 요청이 성공적으로 수신된 경우 HTTP 상태 202가 반환됩니다. 페일백 진행 상황을 모니터하려는 클라이언트는 경보를 수신하거나 클러스터 상태를 폴링할 수 있습니다.
인계 및 페일백에 대한 자세한 내용은 Cluster Takeover and Failback in Oracle ZFS Storage Appliance Administration Guide, Release OS8.8.x을 참조하십시오.
요청 예:
PUT /api/hardware/v2/cluster/failback HTTP/1.1
클러스터 노드 구성을 해제하면 독립형 작업에 대한 노드가 구성됩니다. 일반적으로 클러스터 노드 구성 해제는 단독으로 수행하지 마십시오. 클러스터 노드 구성 해제는 소거식입니다. 구성 해제는 unconfig 명령 이상의 작업과 관련이 있습니다. 자세한 내용은 Unconfiguring a Cluster Node in Oracle ZFS Storage Appliance Administration Guide, Release OS8.8.x를 참조하십시오.
설정은 초기 클러스터 구성의 1단계입니다. 자세한 내용은 Upgrading a Standalone Appliance to a Clustered Configuration (BUI) in Oracle ZFS Storage Appliance Administration Guide, Release OS8.8.x를 참조하십시오.
cluster/setup 명령은 시스템에 대한 초기 클러스터 구성을 수행합니다. nodename 및 password 등록 정보에 대한 값을 지정합니다. 설정이 성공하면 HTTP 상태 202 Accepted가 반환됩니다.
다음 조건이 모두 존재하지 않을 경우 cluster/setup 명령이 실패합니다.
모든 클러스터 링크가 AKCIOS_ACTIVE 상태입니다. 클러스터 링크 상태를 참조하십시오.
피어의 전원이 켜져 있지만 피어가 구성되어 있지 않습니다.
요청 예:
PUT /api/hardware/v2/cluster/setup HTTP/1.1 Authorization: Basic Tm8gcGVla2luZyE= Host: zfs-storage.example.com:215 Accept: application/json {"nodename": "zfs-storage-2", "password": "password"}