본문 바로가기
IT/lifekeeper

Lifekeeper 복제볼륨 관리하기 mirror_action

by 방구석꼰머 2022. 10. 8.
반응형

Lifekeeper는 복제볼륨 리소스를 관리하기 위한 “mirror_action” 명령어를 제공합니다. 이번 포스팅에서는 Lifekeeper에서 mirror_action 명령을 통해 복제볼륨 리소스를 컨트롤하는 방법에 대해 알아보도록 하겠습니다.

 

이 포스팅은 아래의 버전에서 테스트한 내용을 기반으로 작성하였습니다
Linux : Red Hat Enterprise Linux release 8.5 
Lifekeeper : LifeKeeper for Linux 9.6.1

개요
1. mirror_action 명령의 사용방법
2. mirror_action 명령으로 복제볼륨 동기화 일시중지 하기
3. mirror_action 명령으로 일시 중지된 복제볼륨 동기화 재개하기
4. mirror_action 명령으로 복제볼륨 재동기화 하기

 

1. mirror_action 명령의 사용방법

mirror_action 명령의 형식은 아래와 같습니다.

Usage: mirror_action <tag> <action> [source] [target(s)]

 

  • <tag> : mirror_action 으로 컨트롤할 복제복륨의 tag입니다.
  • <action> : pause, resume, fullresync, force 총 4개의 action을 수행할 수 있습니다.
  1. pause : 볼륨의 동기화를 일시 중시합니다.
  2. resume : 볼륨의 동기화를 재개합니다.
  3. fullresync : 볼륨을 전체 재동기화를 수행합니다.
  4. force : 강제조치가 필요할 경우 사용합니다.
  • [source] (optional) : source 지정은 옵션이며 지정되지 않으면 명령이 수행된 시스템을 source로 사용합니다.
  • [target] (optional) : target 지정은 옵션이며 대상이 지정되지 않은 경우 적용 가능한 모든 대상을 target으로 사용합니다.

 

반응형

 

2. mirror_action 명령으로 복제볼륨 동기화 일시중지 하기

이중화 리소스와 동기화 상태를 먼저 확인합니다.

# lcdstatus -q
LOCAL    TAG                    ID                                    STATE     PRIO  PRIMARY
server1  pgsql-5432             server1.pgsql-5432                    ISP          1  server1
server1   /data                 /data                                 ISP          1  server1
server1    datarep-data         2606dc24-99cb-4243-824a-7f27dfbdacf0  ISP          1  server1
server1     ip-192.168.240.192  IP-192.168.240.192                    ISP          1  server1

MACHINE  NETWORK ADDRESSES/DEVICE                 STATE     PRIO
server2  TCP     192.168.240.190/192.168.240.191  ALIVE        1
server2  TCP     200.200.200.10/200.200.200.20    ALIVE        2
# mirror_status datarep-data
Mirror Configuration:
[ ]     server1 -> server2 (200.200.200.20)
        Status: Fully Operational
        [===================>] 100%
        Type: Synchronous

Bitmap: 40956 bits (chunks), 0 dirty (0.0%)

/data 가 동기화 볼륨으로 구성되어 있으며, 현재 100% 동기화 상태이고 복제볼륨 리소스 tag는 datarep-data 로 되어 있는 것을 확인할 수 있습니다. 

 

리소스 상태 확인 방법은 아래의 링크에서 확인할 수 있습니다.

2022.09.23 - [IT/lifekeeper] - Lifekeeper 클러스터 상태 확인하기 lcdstatus

 

Lifekeeper 클러스터 상태 확인하기 lcdstatus

이번 포스팅에서는 Lifekeeper 클러스터의 구성정보와 상태를 확인할 수 있는 “lcdstatus” 명령어의 사용 방법에 대해 알아보도록 하겠습니다. 이 포스팅은 아래의 버전에서 테스트한 내용을 기반

justdaily.tistory.com

 

볼륨 동기화 상태확인 방법은 아래의 링크에서 확인할 수 있습니다.

2022.09.25 - [IT/lifekeeper] - Lifekeeper 복제볼륨 동기화 상태 확인하기 mirror_status

 

Lifekeeper 복제볼륨 동기화 상태 확인하기 mirror_status

이번 포스팅에서는 Lifekeeper로 구성된 복제볼륨 리소스의 동기화 상태를 확인할 수 있는 “mirror_status” 명령어의 사용 방법에 대해 알아보도록 하겠습니다. 이 포스팅은 아래의 버전에서 테스트

justdaily.tistory.com

 

 

복제볼륨 리소스 동기화 일시중지

# mirror_action datarep-data pause

# mirror_action datarep-data pause
Pausing mirror datarep-data: server1 -> server2...
The mirror to server2 has been paused
Temporary read/write access for datarep-data set up on the mount point "/data" on server server2. You must access the data from this mount point ONLY! All changes made to the data on server "server2" via the mount point "/data" will be DISCARDED when the mirror is resumed.

볼륨의 동기화를 일시 중지하면 Standby 서버에서 동기화가 중지된 볼륨에 접근이 가능하도록 mount 가 되며 동기화가 재개되면 다시 umount 됩니다.

 

볼륨 동기화 상태 확인

# mirror_status datarep-data

# mirror_status datarep-data
Mirror Configuration:
[-]     server1 -> server2 (200.200.200.20)
        Status: Paused
        Type: Synchronous

Bitmap: 40956 bits (chunks), 5 dirty (0.0%)

동기화가 일시 중지된 것을 확인할 수 있습니다.

 

 

 

3. mirror_action 명령으로 일시 중지된 복제볼륨 동기화 재개하기

# mirror_action datarep-data resume

# mirror_action datarep-data resume
Resuming mirror datarep-data: server1 -> server2...
mdadm: stopped /dev/md0
/dev/md0: merging bitmap from target "server2"
/dev/md0: bitmap merged, resyncing 3.5 MB
Partial resynchronization of component "/dev/nbd1" has begun for mirror "/dev/md0"
The mirror to server2 has been resumed

Standby서버에서 mount 된 볼륨은 다시 umount 되고 동기화가 중단된 동안 변경된 데이터를 bitmap을 통해 확인하여 동기화를 진행합니다.

 

볼륨 동기화 상태 확인

# mirror_status datarep-data

# mirror_status datarep-data
Mirror Configuration:
[ ]     server1 -> server2 (200.200.200.20)
        Status: Fully Operational
        [===================>] 100%
        Type: Synchronous

Bitmap: 40956 bits (chunks), 1 dirty (0.0%)

볼륨 동기화가 다시 진행 것을 확인할 수 있습니다.

 

 

4. mirror_action 명령으로 복제볼륨 재동기화 하기

복제볼륨을 재동기화 하기 위해서는 먼저 볼륨의 동기화를 일시 중지해야 합니다.

 

복제볼륨 리소스 동기화 일시중지

# mirror_action datarep-data pause

 

복제볼륨 재동기화 하기

# mirror_action datarep-data fullresync

# mirror_action datarep-data fullresync
Forcing full resync...
Resuming mirror datarep-data: server1 -> server2...
mdadm: stopped /dev/md0
Set full resync to target server2.
Full resynchronization of component "/dev/nbd1" has begun for mirror "/dev/md0"
The mirror to server2 has been resumed

일시 중지된 볼륨의 동기화를 재개하면서 전체 재동기화를 수행합니다.

 

볼륨 동기화 상태 확인

# mirror_status datarep-data

# mirror_status datarep-data
Mirror Configuration:
[-]     server1 -> server2 (200.200.200.20)
        Status: Resynchronizing
        [===========>       ] 62%
        Resync Speed: 284123K/sec
        Type: Synchronous

Bitmap: 40956 bits (chunks), 30773 dirty (75.1%)

볼륨의 전체 재동기화가 진행되고 있는 것을 확인할 수 있습니다.

 

볼륨 전체 재동기화
볼륨 전체 재동기화 진행

 

지금까지 Lifekeeper의 mirror_action 명령어의 사용방법에 대해 알아봤습니다.

 

감사합니다.

반응형

댓글