DB 서버 핫 사이트 구성해보기
마스터 (Active) 설정 - (10.10.10.124)
1) keepalived 설치
apt install -y keepalived
2) keepalived 설정 파일 생성
vi /etc/keepalived/keepalived.conf
안에 내용 작성
interval 5 , fall 4, rise 2
=> 5초에 한 번 확인하는데, 4번 실패하면 중단되게 하라
global_defs {
router_id node01
enable_script_security
script_user root
}
vrrp_script track_mariadb {
script "systemctl is-active mariadb"
interval 5
fall 4
rise 2
}
vrrp_instance VRRP1 {
state MASTER
interface ens33
virtual_router_id 101
priority 200
advert_int 1
virtual_ipaddress {
10.10.10.200/24
}
track_script {
track_haproxy
}
}
슬레이브 (Standby) 설정 - (10.10.10.30)
1) keepalived 설치
apt install -y keepalived
2) keepalived 설정파일 생성
vi /etc/keepalived/keepalived.conf
안에 내용 작성
priority = 우선 순위
=> Stanby 보다 Acitve 가 더 커야 한다.
global_defs {
router_id node02
enable_script_security
script_user root
}
vrrp_script track_mariadb {
script "systemctl is-active mariadb"
interval 5
fall 4
rise 2
}
vrrp_instance VRRP1 {
state BACKUP
interface ens33
virtual_router_id 101
priority 100
advert_int 1
virtual_ipaddress {
10.10.10.200/24
}
track_script {
track_mariadb
}
}
실행
systemctl restart keepalived
systemctl restart mariadb
ip 확인해보면 IP 주소가 하나 더 생긴 걸 확인할 수 있다.
이때, 마스터(Active) 서버의 mariadb 를 중단시키면 슬레이브(Standby) 서버로 가상 IP 주소가 넘어오게 된다.
가상 IP 주소로 커넥션 생성
=> 설정 파일에 적어놓은 가상 IP 주소를 입력해야 한다.
중단시키기 전 server_id = 1
mariadb 서버 중단
systemctl stop mariadb
설정에서 5초에 한 번씩 4번 실패가 뜨면 중단된다고 설정해놔서
20초 정도 기다려야 바뀐다.
IP 주소가 넘어온 것을 확인할 수 있음
워크벤치에서도 sever_id = 2로 잘 뜬다.
'CS > DB' 카테고리의 다른 글
[DB] 3계층 아키텍처 - 다중화 실습 (2) (0) | 2024.12.04 |
---|---|
[DB] 3계층 아키텍처 - 다중화 실습 (1) (0) | 2024.12.03 |
[DB] DB 서버 부하 분산 (HAProxy) (0) | 2024.12.03 |
[DB] 재해 복구(DR) / DB 서버 Replication 설정 / 미러 사이트 구성 실습 (0) | 2024.12.03 |
[DB] JMeter 부하 테스트 (1) | 2024.12.02 |