다 정리하고보니 CF 배포는 각 component 들의 기능이나 정의, component 사이의 관계와 manifest의 설정내용을 세세하게 알아야만 하는 것이 아닌가라는 생각이 든다. Cloud foundry (CF)를 배포해보면서 오픈소스는 무료가 아니라는 것을 다시 느낀다. 배포 과정도 쉽지 않은데 운영시 발생할 문제들까지 고려하면 오랫동안 공을 들여야만 할 것 같다. 오픈소스 cf를 배포하면서 여러번의 삽질을 하게 된 이유가 무엇일까를 생각해보니… Read more »
MySQL replication을 해보자 – LB 이중화
LB 이중화에 대해서 정리하는 것을 미루고 있다가 아예 이중화 구축을 자동화하는 것까지 해보기로 했다. 지난번에는 HAProxy를 하나만 두었었는데 다른 VM (192.168.100.54)에 동일한 설정으로 HAProxy를 올리고 VRRP를 위해 keepalived를 사용했고 keepalived 설치에 대해서는 ‘믿고 보는’ Digital Ocean의 문서를 참조했음. 아래의 그림처럼 만들어봤다. (두 개의 VM에 공통으로 설정할 내용이 있고 각각 다르게 해야 하는 부분이 있어서 아래 소제목에… Read more »
MySQL replication을 해보자 – 로드밸런싱
지난번에 이어서 구축한 MySQL slave 2개를 로드밸런싱 해보기로 했다. 로드밸런서로 가용한게 몇가지 있지만 그 중 HAProxy를 이용해서 아래 그림과 같은 모양으로 만들 생각이다. LB의 IP는 192.168.100.53 이고 로드밸런싱 대상은 각각 192.168.100.51, 192.168.100.50 1. Status check를 위한 user 추가 HAProxy가 mysql 상태 확인을 위해 접근하는 사용자 계정이 추가되어야 한다. 다른 방식으로 status check 하는게 가능하다면… Read more »
MySQL replication을 해보자 – 두번째
지난 글에 이어서 이번엔 약간 다른 내용을 정리. 1. Slave 추가 이전 그림을 다시 꺼내보면 slave는 2개인데 지난번에는 slave를 하나만 만들어두고 replication 하도록 해두었었다. Slave를 추가하려면 어떻게 해야할까? 처음 slave#1을 구성할 때에는 snapshot 적용을 위해서 master를 일시적으로 중단하거나 lock을 걸고 dump를 떠야했는데 이미 존재하는 slave가 있으니 master는 건드릴 필요는 없다. 아래의 순서대로 진행. (1)… Read more »
MySQL replication을 해보자
DBA는 아니지만 나중에 필요할 것 같기도 하고 실무 관점에서 직접 구성해보는게 좋을 것 같다는 생각에 DB 이중화를 해보기로 했다. 연습용 DB를 대상으로 하다보니 이중화 구성이 생각보다 간단했고 실제 운영을 하면서 마주칠 수 있는 복잡한 사례와 트러블슈팅을 통해 얻을 수 있는 노하우가 중요할 것 같다. 구성하고자 하는 최종 형태는 아래 그림과 같은 모습인데 우선 DB만… Read more »