7.13 미러디스크 DR 리소스

서비스에 필요한 데이터가 클러스터에 정의된 노드들 간에 공유될 수 없는 경우는 7.6 미러 디스크 리소스 참조
미러 디스크 DR 은 1:2로 복제 소프트웨어 미러 볼륨에 대한 에이전트입니다.
미러 디스크 DR 에이전트는 미러 볼륨의 상태와 역할에 따라 동작이 결정됩니다.
미러 디스크 DR 리소스는 상태, 역할과 같은 동적인 정보는 모두 시스템 이벤트 로그에 기록되며, MCCS의 이벤트 로그 모니터 모듈에 의해 MCCS로 전달됩니다.
MCCS 이벤트 모듈은 MCCS 서비스가 시작될 때에 기동됩니다.
복제 소프트웨어는 다른 두 서버간의 볼륨에 대해서 미러를 생성함으로써 동작을 하게 됩니다.
소스 볼륨(Source Volume)은 주 서버(Primary)에 위치하고, 타깃 볼륨(Target Volume)은 보조 서버(Secondary)와 DR 서버에 위치합니다.
클라이언트는 소스 볼륨에서만 읽기/쓰기가 가능하고, 쓰여진 데이터들은 네트워크를 통해서 타깃 볼륨에 복제됩니다.
이 때, 타깃 볼륨은 읽기/쓰기가 모두 허용되지 않는 잠금 상태입니다. 이는 데이터 무결성을 보장하기 위해 타깃 볼륨을 사용하지 못하도록 하기 위함입니다.
다음 그림은 세 대의 서버에 Mirroring이 설정된 것을 나타냅니다.


이 페이지의 주요 내용

[그림] 미러링 구성도



데이터 동기화

미러링 방식은 동기 모드와 비동기 모드로 나뉘어지며, 이는 저장 요청에 대한 응답이 언제 발생하는지에 따라 결정됩니다.

비동기(Async) 모드

미러 볼륨에 대한 쓰기 요청 응답은 소스 볼륨에 대한 저장이 완료되는 즉시 이루어집니다.
타깃 볼륨으로 데이터가 전송되고 저장되기를 기다리지 않기 때문에 응답이 빠른 반면에 장애가 발생할 경우에는 그 시점에 전송되지 못한 데이터만큼의 데이터 불일치가 발생할 수도 있습니다.

동기(Sync) 모드

디스크에 대해 쓰기 요청이 발생하면 데이터는 소스 볼륨에 쓰여지는 동시에 타깃 볼륨에도 쓰여집니다.
쓰기 요청에 대한 최종적인 성공 응답은 소스와 타깃에 대한 쓰기가 모두 성공한 후에 이루어집니다. 응답속도는 느리지만 소스와 타깃 간의 데이터는 언제나 동일합니다.



 

추가

 

미러 디스크 DR 리소스를 그룹에 추가합니다.

 


 

  1. 그룹 선택 -> 마우스 우 클릭 -> 리소스 추가를 선택합니다.
     
  2. 리소스 위자드에서 미러 디스크DR을 선택하고 Next 버튼을 클릭합니다. 

  3. 미러 디스크 DR 리소스로 사용 할 드라이브 문자를 선택하고, 소스 서버로 선택 합니다.

    미러 디스크 DR로 사용될 드라이브 문자 는 양쪽 서버와 DR서버는 같은 드라이브 문자로 되어있어야 합니다.
    [SAN 환경의 드라이브 문자(공유디스크)도 목록에 보여지므로 정확한 드라이브 문자를 선택하시기 바랍니다.]
    데이터는 소스로 지정  노드에서 타겟으로 지정된 노드와 DR 서버로 복제됩니다.
    데이터가 존재하는 드라이브 문자를 선택하실 때 주의하시기 바랍니다.
    이미 만들어진 미러 볼륨을 추가 할 경우 볼륨레터 옆에 (mirrored)가 붙습니다.

        


    [그림] 미러디스크 DR 리소스 추가 화면

       

  4. 미러주소와 DR 미러 주소를 선택합니다. 


  5. <동기화 모드> 선택합니다.

    동기화 모드는 한 번 선택하면 변경할 수 없으므로 주의해서 선택해야 합니다.
    왼쪽 콤보 박스는 Cluster내에 미러 라인에 대한 동기화 모드이고, 오른쪽 콤보 박스는 DR 미러 라인에 대한 동기화 모드 입니다.

    동기모드 : 응답속도는 느리지만 데이터 손실이 없습니다.
    비동기모드 : 동기모드보다 응답속도는 상대적으로 빠르지만 데이터 손실이 발생할 수 있습니다.


  6. 추가 설정을 클릭하여 디스크 검사 옵션을 정의 합니다.

    <디스크 검사 옵션>

    디스크 검사 명령 실행 옵션을 지정합니다. 자세한 기능은 MSDN을 참고하십시오.


    [그림] 미러디스크 DR 추가설정 화면

     

  7. 미러디스크 DR 리소스 추가 완료 버튼을 누르면 아래와 같은 경고창이 출력됩니다. 
    선택한 서버가 소스서버가 맞는지 다시 한번 확인합니다.  
    잘못 설정했다면 '취소' 버튼을 누르고 다시 설정합니다. 
     
    [그림] 미러디스크 DR 리소스 추가 완료 버튼을 클릭 했을 때 출력되는 경고창    

  8. 완료 버튼을 클릭하면 미러 디스크 DR 리소스가 추가 되며, 
     관리 웹 콘솔 상에서 바로 확인이 가능합니다.

 

삭제

 

해당 리소스 선택  -> 마우스 우 클릭 -> 리소스 삭제를 선택합니다.


  1. 리소스 삭제를 클릭하면 MCCS 에 구성된 미러디스크 DR 리소스를 삭제할지 물어봅니다.

    [그림] 리소스 확인 화면    

  2. 확인을 클릭하면 MCCS 에 구성된 미러디스크 DR 리소스 뿐만 아니라 복제 프로그램에 구성된 미러도 삭제할지 다시 한번 확인합니다.

    [그림] 물리적 미러 디스크 삭제 화면    

  3. 확인을 클릭하면 모두 삭제, 취소를 클릭하면 MCCS 에 구성된 미러디스크 DR 리소스만 삭제하게 됩니다.
    삭제된 리소스는  관리 웹콘솔 상에서 바로 사라집니다.  



 


 

상태

 

다음 테이블은 DR 쪽 상태와는 상관없이 클러스터내의 미러 상태와 사용자 명령에 의해 발생되는 MCCS 리소스의 상태 변화에 대한 설명입니다.
명령은 사용자에 의해 발생되는 것을 전제로 합니다.


미러 디스크 DR 에이전트: 미러 디스크를 관리하며, 복제 프로그램이 설치되어 있어야 합니다. 

상태Agent 가능 명령설명비고

온라인

소스 볼륨이 접근 가능하고 쓰기 테스트가 정상적으로 이루어지는 상태입니다.

오프라인

미러 역할에 관계없이 LOCKVOLUME 명령으로 볼륨을 잠급니다.
미러 볼륨이 정의되지 않은 경우, LOCKVOLUME 명령은 무시되어 실패한 것으로 처리됩니다.


모니터링

모니터 과정 또한 미러 볼륨의 상태와 역할에 따라 결정됩니다.
복제 프로그램 커널 드라이버는 미러 볼륨의 상태가 변경될 경우에 시스템 이벤트 로그에 이벤트를 기록합니다.
MCCS 이벤트 모니터는 MCCS 서비스를 시작할 때에 이벤트 수신자로 등록하고 시스템 이벤트가 발생하면 자동으로
통보받아 미러 볼륨의 상태와 역할 변경 여부를 감지합니다.
상태와 역할이 결정된 상태에서 디스크 쓰기 테스트를 통해 최종적인 리소스 상태를 결정합니다.

<소스 볼륨>
쓰기 테스트가 성공하면 온라인 상태로 판단합니다.

<타깃 볼륨>
1. 디스크에 대한 쓰기 테스트를 하여 실패 시 오프라인 상태로 판단합니다.
2. 사용자가 미러 디스크가 온라인 중에 타깃 볼륨의 잠금 상태를 해제하면 에이전트가 타깃 볼륨을 자동으로 다시 잠급니다. 
따라서 미러 디스크가 온라인되어 있는 노드의 타깃 볼륨에 대한 잠금 해제를 허용하지 않습니다.
3.미러 볼륨이 정의되지 않은 경우 오프라인 상태로 판단합니다.


오프라인

온라인, 장애 상황을 제외한 상황은 모두 오프라인 상태입니다.

온라인

시작되는 노드 상에서의 미러 볼륨 역할에 따라 동작이 결정됩니다.

<소스볼륨>
1.볼륨에 대한 잠금 상태 해제 및 쓰기를 가능하게 합니다.
2.잠금 해제는 복제 프로그램의 'UNLOCKVOLUME'으로 이루어지며  쓰기 기능은 복제 프로그램의 레지스트리의 값 중 MountReadOnly 값을 0으로 변경하여 쓰기를 가능하게 한 후 1로 바꿔 놓습니다.

<타깃볼륨>
1.미러 역할이 타깃인 노드에서 온라인 하려면 미러 상태가 Mirroring이 아닌 경우는 실패로 판단합니다.
2.미러 볼륨이 완전히 동기화된 상태라면 미러 역할을 바꿀 수 있으며 그 과정은 소스 노드(A) 상태에 따라 결정됩니다.
3.노드 A의 미러 드라이버에 연결이 되는 경우는 DELETEMIRROR 명령에 의해 기존 미러 볼륨 구성을 삭제한 후에  타깃을 소스로 소스를 타깃으로 변경해서 CREATEMIRROR 명령으로 역방향 미러 볼륨을 만듭니다.
미러를 생성할 때, 옵션은 0x1을 지정하여 전체 동기화를 하지 않습니다.
4.만일 노드 A의 미러 드라이버에 연결할 수 없는 경우는 DELETELOCALMIRRORONLY 명령으로 노드 B의 미러 구성만 삭제한 후, CREATEMIRROR 명령으로 역방향 미러 볼륨을 구성합니다.
이 때는 노드 A가 응답하지 않기 때문에 타깃 미러 볼륨이 만들어지기를 기다리지 않도록 0x2 옵션이 추가됩니다.
최종적으로 볼륨이 잠금 상태일 경우는 잠금을 해제를 하고, 쓰기 가능하게 MountReadOnly 값을 0으로 변경한 후에 1로 바꿔 놓습니다.
미러볼륨이 정의되지 않은 경우 아무런 동작 없이 실패로 처리됩니다.


모니터링

위에 모니터링 명령 설명 참조


장애

온라인 상태에서 쓰기 테스트가 실패하거나 온라인 시도가 실패하면 장애 상태로 표시됩니다.

*페일오버 비활성상태
미러 네트워크 통신 장애, 타깃 노드 또는 타깃 디스크 이상 등의 장애가 발생하면
미러 상태는 MIRRORING이 아닌 다른 상태, 즉 MIRROR_PAUSED와 같은 상태가 됩니다.

미러 상태가 MIRRORING이 아닌 경우 페일오버가 발생하게 되고
데이터 소실 또는 데이터 손상을 야기할 수 있습니다.
이를 방지하기 위해 에이전트는 미러 상태가 MIRRORING이 아닌 상태로 변경되면
페일오버 모드를 비활성화합니다.
페일오버 모드가 비활성화되면 수동 페일오버나 장애가 발생해도 페일오버를 실행하지 않습니다.
미러 네트워크 통신 장애인 경우에 통신이 재개되면 자동으로 RESYNC를 수행하며
미러 상태가 MIRRORING으로 변경되면 페일오버 모드 또한 자동으로 활성화됩니다.

온라인

위에 온라인 명령 설명 참조


오프라인

미러 역할에 관계없이 LOCKVOLUME 명령으로 볼륨을 잠급니다.
미러 볼륨이 정의되지 않은 경우, LOCKVOLUME 명령은 무시되어 실패한 것으로 처리됩니다.


 


 


 

속성

 

리소스의 고유 속성을 표시 합니다.

 

ArgList 인수

설명

타입기본값수정비고
AutoResolveSplitBrain

'true'로 설정할 경우 자동으로 클러스터 노드간 스플릿브레인을 해결합니다.

BOOLEANtrueO
ChkDsk

볼륨 마운트 시 '디스크 검사 옵션'에 따라 디스크를 검사하여 오류를 수정합니다.
True로 설정될 경우에 온라인 시에 볼륨에 더티 비트가 설정되어 있으면 ChkdskArg 옵션으로 체크디스크를 실행합니다.
체크디스크 실행 전에는 미러의 복제상태가 자동으로 중지가 되고, 완료 후에 자동으로 재동기화됩니다.

BOOLEANfalseO
ChkdskArg

체크디스크(Chkdsk)가 true일 때 체크디스크 명령 옵션을 지정합니다.

STRING/FO
DirtyBit

대상 미러 볼륨에 더티 비트가 설정되어 있음을 의미합니다.
일반적으로 대상 볼륨에 무결성 검사가 필요할 경우 시스템에 의해 설정됩니다.

BOOLEANfalseX
DomainMemberServer

미러 리소스를 구성할 노드가 윈도우 도메인 환경의 멤버서버일 경우 "true"로 선택하셔야 합니다.
이 때 DK 서비스를 시작할 윈도우 서비스 계정은 로컬 노드의 Administrator로 지정해야 합니다.

BOOLEANfalseO

DriveLetter

미러 볼륨이 할당된 드라이버 문자입니다.
소스, 타깃 시스템에서 동일한 값을 갖도록 구성해야 합니다.

STRING
X
MirrorDRIPDR 서버로 볼륨을 복제하기 위해 사용하는 IP 입니다.STRING
X
MirrorIP

볼륨을 복제하기 위해 사용하는 IP 입니다.

STRING
X
MirrorRole미러 볼륨의 미러 역할입니다.
이벤트 로그로부터 갱신됩니다.
STRING
X
MirrorState

미러 볼륨의 미러 상태입니다.
이벤트 로그로부터 갱신됩니다.

STRING
X
MirrorTimeout

볼륨 페일오버, 스위치 등의 과정에서 미러 롤(Role) 또는 상태 업데이트에 대한 시간 제한 값입니다.
이 시간 내에 상태 또는 롤에 대한 갱신이 없을 경우는 타임아웃 에러가 발생합니다.

INTEGER120초O
MirrorType미러 동기화 모드를 결정합니다. A 또는 S로 설정합니다.( A - 비동기모드, S - 동기모드)
* 비동기모드로 설정할 경우 데이터 손실이 발생할 수 있습니다.
STRINGAX
Password

지정된 사용자 계정에 대한 비밀번호입니다.
특별히 변경하지 않은 경우에는 'administrator' 계정에 대한 비밀번호를 입력합니다.

PASSWORD
O
ResyncNeed재동기화가 필요한 블럭들의 총합을 나타냅니다.INTEGER0X
ResyncTotal재동기화 블럭들의 총합을 나타냅니다.INTEGER0X
RetryGetServiceInfo온라인시 DK 연결상태를 확인하는 횟수를 나타냅니다.INTEGER1O
SourcePriorityLevel각 노드의 SourceRole Level을 나타냅니다. 값이 높은 노드가 최종적으로 Source Role을 가집니다.STRING
X
TargetDRIP재해 복구용 노드의 IP 주소입니다.STRING
X
TargetDRLetterDR 타겟 볼륨의 드라이브 문자입니다.STRING0X
TargetDRResyncNeedDR 미러의 재동기가 필요한 블럭들의 총 합을 나타냅니다.INTEGER0X
TargetDRResyncTotalDR 미러의 재동기 블럭들의 총 합을 나타냅니다.INTEGER
X
TargetDRRoleDR 미러 볼륨의 미러 역할입니다.STRING
X
TargetDRState현재 원본 볼륨에서 DR 대상 볼륨으로의 데이터 전송 상태를 나타냅니다.STRING
X
TargetDRTypeDR 타겟으로의 데이터 전송 형태를 나타냅니다.STRING
X
User

미러 관련 명령을 실행할 사용자 계정입니다.
특별히 설정하지 않은 경우에는 'Administrator' 계정으로 사용합니다.

STRINGAdministratorO
forceUmountTrue로 설정 할 경우 오프라인 시 장치가 사용 중이더라도 강제로 언마운트 합니다.BOOLEANfalseO

 


 

속성 값은 해당 리소스를 등록할 때에 입력된 값이며, '리소스 고유 속성'에서 값을 변경하거나 확인할 수 있습니다.