DRBD 상태점검

미러디스크
            : 미러링 모듈을 이용해 양 서버 간의 로컬 디스크를 실시간 복제하고 감시하기 위해 사용되는 리소스


■ Affected version : MCCS All version

■ 복제 모듈 : Linux DRBD 모듈의 KB임

■ Linux Server Platform

Step-by-step guide

미러디스크 모듈(DRBD)에 대해 상태점검을 실시한다.

  1. 미러디스크 리소스 추가되어 있는 상태를 확인합니다.

    Mount Point가 /data1, /data2 인 볼륨이 미러디스크 리소스로 설정되어 있습니다.

  2. CLI 명령어로 상태 체크가 가능합니다.
    #cat /proc/drbd


    예시인 2개의 볼륨 r0, r1이 복제구성 되어 있음을 확인할 수 있습니다.

  3. MCCS 콘솔의 "Resource Attributes" 탭에서 속성값 확인이 가능합니다.

    ■ ConnectState : 미러 볼륨의 노드 간 접속 상태를 표시합니다.
    ■ DiskState : 미러 볼륨이 관리하는 디스크의 상태를 표시합니다.
      → UpToDate : 데이터가 일치하는 상태입니다.
      → Outdated : 데이터가 일치하지만, 오래된 상태입니다.
      → Inconsistent : 데이터가 불일치한 상태입니다. 새로운 리소스를 구성했을 경우 양 노드의 디스크는 이 상태가 됩니다. 또는 초기 full-sync 진행중인 Secondary 노드의 디스크 상태입니다.
      → Diskless : 로컬 블록 디바이스가 DRBD 드라이버에 할당되어 있지 않은 상태입니다. 리소스가 백업 디바이스에 부착된 적이 없거나, drbdadm detach <resource> 명령으로 수동 분리되었거나, lower-level I/O 오류 후에 자동으로 분리된 경우 이 상태가 됩니다.
      → DUnknown : 네트워크 연결을 사용할 수 없는 경우, 원격 디스크의 상태를 표시하기 위해 사용됩니다.
      → Consistent : 노드가 연결되지 않았지만, 데이터는 일치한 상태입니다. 연결이 완료되면, UpToDate인지 Outdated 인지 결정합니다.
      → Attaching : 메타 데이터를 읽는 동안의 일시적인 상태입니다.
      → Failed : 로컬 블록 디바이스의 I/O 실패 보고에 따른 일시적인 상태입니다. 다음 상태 : Diskless
      → Negotiating : 이미 연결된 WDRBD 디바이스에서 Attach가 실행되었을 때, 디스크는 일시적으로 이 상태가 됩니다.
    ■ OutOfSync : 동기화가 필요한 Out Of Sync 값의 유무를 나타냅니다. Out Of Sync값이 있는 경우에는 true이며, 노드 간에 아직 복제 혹은 동기화 완료되지 않은 데이터가 존재하고 있음을 의미합니다.
    ■ Port : DRBD가 미러 볼륨 복제 시 사용하는 통신 포트 번호입니다.
    ■ Role : DRBD 볼륨의 역할 상태를 표시합니다.
      → 운영서버 : Primary
      → 대기서버 : Secondary
  4. MCCS 콘솔의 "Mirror Management" 탭에서 현재 상태에 대해 GUI로 확인이 가능합니다.


  5. CLI를 통하여 네트워크 연결 상태를 확인할 수 있습니다.

    #drbdadm cstate <resource> 명령어로 조회가 가능하며 다음과 같은 결과값이 출력됩니다.
    ■ StandAlone. 리소스가 아직 연결되지 않았거나, 사용자가 drbdadm disconnect를 사용하여 연결을 끊었거나, 인증 실패 또는 스플릿 브레인과 같은 이유로 연결이 끊어져 네트워크 구성이 가능하지 않은 상태입니다.
    ■ Disconnecting. 연결이 끊어지는 동안의 일시적인 상태입니다. 다음 상태: StandAlone
    ■ Unconnected. 연결을 시도하기 전의 일시적인 상태입니다. 다음 상태: Connecting 또는 Connected.
    ■ Timeout. 상대 노드와의 통신 시간 초과에 따른 일시적인 상태입니다. 다음 상태: Unconnected
    ■ BrokenPipe. 상대 노드와의 연결이 끊어진 후 일시적으로 표시되는 상태입니다. 다음 상태: Unconnected
    ■ NetworkFailure. 상대 노드와의 연결이 끊어진 후 일시적으로 표시되는 상태입니다. 다음 상태: Unconnected
    ■ ProtocolError. 상대 노드와의 연결이 끊어진 후 일시적으로 표시되는 상태입니다. 다음 상태: Unconnected
    ■ TearDown. 상대 노드가 연결 종료 중임을 나타내는 일시적인 상태입니다. 다음 상태: Unconnected
    ■ Connecting. 상대 노드가 네트워크에서 확인 되기를 기다리고 있는 상태입니다.
    ■ Connected. TCP 연결이 설정되었으며, 상대 노드로부터 첫 번째 네트워크 패킷을 기다립니다.