생계/MySQL2025. 1. 1. 21:08

mysql 은 복제 기능을 이용하여 master-slave 의 아키텍쳐를 많이 사용하는데,

multi master 란 master 가 하나가 아닌 여러개를 두고 서비스를 하는 형태를 말한다. 

 

구성하기

 1. master-master 복제 

 2. 한쪽을 read_only=1 (passive-master)

  * split brain issue

3. event_scheduler 

   on (active) / off (passive)

4. monitor, vip failover

mmm (multi master replication manager )

 

양방향으로 write 가능하지만 데이터 불일치 가능성 때문에 실제로 그렇게 쓰지는 않고 

한쪽에만 write 를 허용하고, 다른쪽에서는 read_only=1 로 설정하여 한곳에서만 dml 이 이루어진다.

이때 write 가 허용된 쪽을 active(혹은 primary)-master 라 부르고, 다른 한쪽을 passive-master 라고 부른다. 

write 가 이루어지는 노드가 down 되면 manager 서버에서 이를 감지하여, 다른 한쪽으로 서비스를 넘기게 된다. 

그래서 이론적으로는 down time 이 수 분 내로 이루어지게 된다. 하지만 manager 서버는 이중화가 되어있지 않으므로 

이것이 down 될 경우는 관리자가 먼저 인지 해야 함

반응형
Posted by 돌고래트레이너