공개하기부끄러운블로그 2021. 3. 29. 10:51
반응형
##방화벽 모두 해제 후 진행##
OS : CentOS7
DRBD : 8.4

 

# 시간동기화 및 DRBD 설치 (node01, node02)
yum -y install rdate 
rdate -s time.bora.net

 
# hostname 설정 (node01, node02)
hostnamectl set-hostname node01
hostnamectl set-hostname node02


#LVM 파티션 생성 (node01, node02)
fdisk /dev/sdb 
fdisk /dev/sdc 
fdisk /dev/sdd 


#pv, vg, lv 생성 (node01, node02)
pvcreate /dev/sdb1 /dev/sdc1
vgcreate VoL01 /dev/sdb1
vgcreate VoL02 /dev/sdc1
lvcreate -l 100%FREE VoL01 -n was
lvcreate -l 100%FREE VoL02 -n data
✔ Metadata 생성전 DRBD 볼륨으로 사용할 공간은 파일시스템이 생성되어 있지 않아야한다.
미리 파일시스템이 생성된 상태라면 아래와 같은 에러가 발생할 경우
Command 'drbdmeta 1 v08 /dev/xxx internalcreate-md' terminated with exit code 40
---> dd를 이용하여 MBR 영역을 없애주어야함 dd if=/dev/zero of=/dev/sdb bs=1M count=128


#패키지 Install (node01, node02)
yum -y install elrepo-*      
yum -y install kmod-drbd84 drbd84-utils


#drbd 설정 (node01, node02)
----------------------------------------------------------
vi /etc/drbd.d/r1.res
resource r1{
    on node01 {
    device /dev/drbd0;
    disk /dev/mapper/VoL01-was;
    meta-disk internal;
    address 192.168.0.80:7788;
    }
    on node02 {
    device /dev/drbd0;
    disk /dev/mapper/VoL01-was;
    meta-disk internal;
    address 192.168.0.81:7788;
    }
}
----------------------------------------------------------

----------------------------------------------------------
vi /etc/drbd.d/r2.res
resource r2{
    on node01 {
    device /dev/drbd1;
    disk /dev/mapper/VoL02-data;
    meta-disk internal;
    address 192.168.0.80:7789;
    }
    on node02 {
    device /dev/drbd1;
    disk /dev/mapper/VoL02-data;
    meta-disk internal;
    address 192.168.0.81:7789;
    }
}
----------------------------------------------------------


#r1, r2 메타데이터 블록 생성 (node01, node02)
drbdadm create-md r1
drbdadm create-md r2


#drbd 데몬 구동 (node01, node02)
systemctl start drbd; systemctl enable drbd


#drbd primary 설정 (node01)
drbdadm -- --overwrite-data-of-peer primary r1
drbdadm -- --overwrite-data-of-peer primary r2


#동기화 확인 (node01, node02)
cat /proc/drbd


# 디렉토리 추가 (node01, node02)
mkdir /was
mkdir /data


# 파일시스템 포맷 (포맷은 node01 에서만 진행)
mkfs.ext4 /dev/drbd0
mkfs.ext4 /dev/drbd1


# mount
mount /dev/drbd0 /was
mount /dev/drbd1 /data


#장애 테스트
#node01
cd /was
touch {1..3}
cd /data
touch {1..3}
shutdown -h 0

#node02
drbdadm primary r1
drbdadm primary r2
mount /dev/drbd0 /was
mount /dev/drbd1 /data
ll /was && ll /data


#상태확인
drbdadmin status

 

반응형