728x90

이중화 5

[PostgreSQL] repmgr을 이용한 DB 이중화 구성하기_3, VIP

auto failover까지 정상적으로 수행되는 것을 확인하였으니 이번에는 Rocky Linux에 VIP를 할당한 후 auto failover 시 VIP를 가진 서버가 변경되도록 하기로 하였다. 1. VIP 설정하기 우선 auto failover 시에 VIP를 변경하기 위해서는 기본적으로 VIP가 설정되어 있어야 한다. cd /etc/sysconfig/network-scripts/ vi ifcfg-{이더넷 인터페이스명} 테스트 환경인 vm1과 vm2는 자동으로 네트워크에 연결을 사용하였기 때문에 현재 사용 중인 IP와 gateway를 ifconfig 명령어와 ip route를 사용하여 알아두었다. BOOTPROTO=static IPADDR={IP} NETMASK=255.255.255.0 GATEWAY={..

DB 2022.10.03

[PostgreSQL] repmgr을 이용한 DB 이중화 구성하기_2, auto failover

지난 repmgr을 이용한 이중화 구성 포스팅에서 primary에서 테이블을 생성하고 데이터를 기록하면 standby에서도 해당 테이블을 조회할 수 있는 것을 확인하였다. 하지만 이렇게까지만 설정한다면 pglogical과 별반 다를 것이 없다. 이번에는 repmgr이 제공하는 auto failover 기능에 대해 알아보기로 하였다. 1. repmgr.conf 설정하기 auto failover를 사용하기 위해서는 repmgr.conf를 수정한 뒤 repmgrd를 시작하면 된다. vi /etc/repmgr/14/repmgr.conf failover='automatic' promote_command='repmgr standby promote' follow_command='repmgr standby follow..

DB 2022.10.02

[PostgreSQL] repmgr을 이용한 DB 이중화 구성하기_1

지난번 pglogical을 이용한 DB 이중화에 대해 알아보았었는데, pglogical 자체에는 primary-secondary 구조에서 auto failover나 secondary 서버에서 read only로 설정해 주는 기능이 없었다. 그러던 중 PostgreSQL 자체 replication 기능을 이용하면서 auto failover 처리를 해줄 수 있는 repmgr을 알게 되었다. 이번 포스팅은 Rocky Linux 8 환경에 PostgreSQL 14를 repmgr을 이용하여 이중화를 구성하는 방법에 대해 포스팅하려고 한다. 설치에 앞서 primary-secondary를 repmgr에서는 primary-standby로 표현하고 있기 때문에 primary-standby로 표현하기로 한다. 1. rep..

DB 2022.10.01

[PostgreSQL] pglogical을 이용한 DB 이중화 구성하기_2, 양방향 이중화를 구성해 보자

지난 포스팅에서 pglogical을 이용한 DB 이중화 구성을 테스트했을 때, 마지막에 구독을 하고 있는 노드에서 INSERT, UPDATE, DELETE 등의 DML 명령어를 사용했을 때 read-only 모드가 아니기 때문에 값이 DB에 반영되는 것을 확인할 수 있었다. read-only 모드로 사용하는 방법이던지, 뭔가 다른 방법이 있을 것 같지만 이런 것들을 찾아보기 이전에 양방향 이중화. bi-directional replication 글을 읽었기 때문에 이 방법 먼저 알아보기로 하였다. https://aws.amazon.com/ko/blogs/database/postgresql-bi-directional-replication-using-pglogical/ PostgreSQL bi-directi..

DB 2022.09.21

[PostgreSQL] pglogical을 이용한 DB 이중화 구성하기

PostgreSQL의 공식 문서 27번 항목은 Chapter 27. High Availability, Load Balancing, and Replication. 고가용성, 로드 밸런싱, 복제를 설명하고 있다. 이제 막 이중화에 대해 알아가기 시작하는 단계라 자세히는 모르지만 이중화를 구성함으로써 failover를 기대할 수 있고, 부하를 분산시킬 수도 있다고 한다. 이 중 오늘 알아볼 것은 공식 문서 27.1 항목에서 논리적 복제(Logical Replication)를 이용한 모듈인 pglogical에 대해 알아보려고 한다. pgsql에서 논리적 복제는 Write-Ahead 로깅(WAL)에서 논리적 데이터 수정 스트림을 구성하여 테이블 별로 데이터 변경 사항을 복제할 수 있다고 되어있다. pglogica..

DB 2022.09.20
728x90