Section | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
스카시예약 에이전트에 의해 생성된 리소스는 각 노드 별로 등록 키가 만들어 지고, 이를 속성으로 확인 할 수 있습니다.
온라인 하는 노드는 자신의 등록 키(Registered-keys)를 예약 키(Reserved-Key)로 설정합니다.
설정된 예약 키로 디스크의 접근할 수 있는 노드를 구별하여 디스크의 접근 허용 여부를 결정합니다.
스카시예약 리소스를 공유디스크 리소스와의 의존성을 설정함으로써,
Split-Brain 상황에서도 데이터에 대한 배타적인 접근을 보장하여 시스템간 공유된 데이터를 보다 안전하게 관리할 수 있습니다.
...
스카시예약 리소스를 이용하기 위해서는 스토리지에서 SCSI3-PR을 지원하는지 확인합니다.
LUN(Logical Unit Number) 단위로 스토리지가 구성되어야 합니다. 파티션 단위로 생성한 디스크는 지원하지 않습니다.
PrType 이 3인 옵션을 사용하게 되면, 하나의 LUN에 1GByte 정도의 디스크 크기가 스카시예약 에이전트 전용으로 할당되어 있어야 합니다.
...
MCCS는 공유 스토리지 환경을 구성 하기 위해, 공유디스크 에이전트와 스카시예약 에이전트를 제공합니다.
사용자는 환경에 따라 공유 디스크 에이전트만을 사용하거나, 스카시예약 에이전트와 함께 사용할 수 있습니다.
스카시예약 에이전트를 사용하는 목적은 OS의 Hang과 같은 외부 요소에 의해 발생되는 Split-Brain 상황에 대비하여, 데이타 디스크를 보다 안전하게 관리하기 위함입니다.
...
2. 공유디스크 에이전트는 데이터를 읽고 쓰가가 가능하지만, 스카시예약 에이전트는 옵션에 따라 데이터를 읽고 쓰가가 가능합니다.
그러나 스카시예약 에이전트는 공유스토리지 리소스의 보호가 목적이기 때문에, 단독 사용하여 데이터를 읽고 쓰는 방법을 권장하지 않습니다.
그래서 스카시예약 에이전트는 공유스토리지 에이전트와 함께 사용하거나, 공유 스토리지와 별개의 LUN 을 사용하는 옵션(PrType)을 지원합니다.
Info |
---|
PrType (Persist Type) =1 (Write Exclusive) 은 LUN 에 대한 Write만을 제어 합니다. 이 옵션은 공유스토리지 에이전트에 의해 구성된 LUN과 함께 사용할 수 있습니다. 디스크는 작은 용량(약 1G)으로도 가능하며 내용은 보호하지 않습니다. |
...
스카시예약 에이전트 리소스는 공유디스크 에이전트와 2가지 형태로 구성할 수 있습니다. 스카시예약 에이전트 리소스의 속성값에 따라 구성 방법이 나눠집니다.
첫번째, PrType = 1 일 경우(공유디스크 리소스와 스카시예약 리소스를 동일한 LUN으로 구성되어 있고, 동일한 드라이브 문자에 적용하여 구성)
두번째, PrType = 3 일 경우(공유디스크 리소스와 S스카시예약 리소스를 서로 다른 LUN으로 구성되어 있고, 다른 드라이브 문자에 적용하여 구성)
...
스카시예약 에이전트의 리소스에서 속성이 PrType 이 1 인 옵션을 사용하면, 하나의 LUN을 이용하여 공유디스크 리소스와 스카시예약 리소스를 구성합니다.
노드1, 노드2의 스카시예약 에이전트는 DATA-DISK(공유디스크 에이전트)에서 사용하는 Vollock 드라이버를 이용하여 관리하고,
LOCK-DISK(스카시예약 에이전트) 는 SCSI3-PR 기능을 이용하여 관리 합니다.
스카시예약 리소스와 공유디스크 리소스 간의 의존관계를 설정함으로써, Split-Brain 과 같은 상황에 발생하는 DATA-DISK의 손상을 방지 할 수 있습니다.
...
공유디스크 에이전트는 단일 드라이브 문자 단위로 처리하고, 스카시예약 에이전트는 LOCK-DISK 전용으로 사용하는 독립된 단일 LUN을 이용합니다.
이 구성을 위해서는 최소 공유디스크의 LUN 분할이 2개 이상이어야 합니다.
아래 그림과 같이 공유디스크 에이전트와 1:1로 의존시킬 LOCK-DISK 볼륨을 생성합니다.
공유디스크 에이전트 다수와 스카시예약 에이전트 1개를 이용해, 의존성을 구성해서 사용할 수도 있습니다)
이 디스크는 크기가 작아도 상관 없습니다. 데이터를 읽고 쓰기 위함이 아니고, 스토리지에 접근할 수 있는 노드를 확인 하기 위해 이용하기 때문입니다.
스카시예약 리소스와 공유디스크 리소스 간의 의존관계를 설정함으로써, Split-Brain 과 같은 상황에 발생하는 DATA-DISK의 손상을 방지 할 수 있습니다.
...
리소스를 추가하는 두 가지 방법이 있습니다.
하나는 그룹 이름에서 리소스를 추가하는 것이고, 또 하나는 리소스타입에서 리소스를 추가하는 것입니다
...
스카시예약 리소스 기본 속성 에서 언급된 것 이외에 다음과 같은 상세 속성을 제공합니다.
설정은 리소스 속성 탭의 "리소스 고유속성" 에서 설정합니다.
각 속성값들의 의미는 다음과 같습니다.
속성 명 | 설명 | 타입 | 기본값 | 수정 | 비고 |
DiskDUID | 디스크의 DUID(Device Unique ID, Hex값으로 16바이트 크기)를 식별자로 사용합니다. | STRING | X | ||
DriveLetter | 예약에 사용할 디스크를 드라이브 문자로 지정합니다. | STRING | X | ||
Key | MAC 주소를 예약 키로 사용합니다. 이 키는 에이전트가 자동으로 설정합니다. | STRING | |||
PreemptWaitCount | 노드가 디스크를 예약할 때 상대노드에 예약 요청을 하고 응답을 대기합니다. | INTEGER | 2회 | O | |
PrType | SCSI3-PR 스펙에서 정의하는 Persist Type 으로 예약 디스크의 접근 권한을 어떻게 부여할 것인지 설정하는 속성입니다. 1번(Write Exclusive)는 공유디스크와 동일한 LUN을 사용할 때 이용하고, Disk Letter를 탐색기에서 확인할수 있습니다. 이 경우 스카시예약 에이전트 전용 LUN이 필요합니다. | INTEGER | Prtype=1 | O |
...
Disk 0번(C:)은 PR이 "No" 로 설정되었기 때문에 SCSI3-PR을 지원하는 디스크가 아닌 것을 확인 할 수 있습니다. (보통 드라이브 문자가 "C"로 잡힌 것은 시스템의 Booting 디스크이고, SCSI를 지원하지 않습니다.)
또한 Disk 1번(D:)은 PR이 "No"로 설정되어 있습니다. SCSI3-PR을 지원하는 디스크가 아닌 것을 확인 할 수 있습니다.(Internal Disk는 SCSI3-PR을 지원하지 않습니다.)
Disk 2번(E:)과 Disk 4번(G:)은 SCSI3-PR이 "Yes"로 설정되어 있어 SCSI3- PR을 지원하는 Storage 장치를 이용하고 있으며, Reserved-Key 와 Registered-Keys가 "none"으로 되어 있어 아직 등록되지 않는 상태를 의미 합니다.
Disk 3번(F:)은 Reserved-Key와 Registered-Keys가 소스노드에서는 C29043F13*, C29043F13*로 타겟노드에서는 C29043F13, C29043F13로 등록되어 있고 이것은 스카시예약 에이전트를 이용해 리소스를 생성 한 상태입니다.
두 노드 중 (*)표시가 포함 된 Reserved-Key와 Registered-Keys가 디스크 예약을 하고 있음을 나타냅니다. 또 Reserved-Key에 값을 가지고 있고 (*)표시가 되어있는 (예: C29043F13*) 노드만 디스크 접근을 할 수 있습니다.