Kyoto Tycoon+Keepaliveで冗長化

KyotoTycoonはデュアルマスター構成がとれる
そこでKeepalivedを使ってKyotoTycoonを冗長化する


KyotoTycoonをデュアルマスターで起動

# ktserver \
-port 1978 \
-tout 30 \
-th 8 \
-dmn \
-pid /var/ktserver/ktserver.pid \
-cmd /var/ktserver/bin \
-log /var/ktserver/ktserver.log \
-ls \
-ulog /var/ktserver/ulog \
-ulim 300m \
-sid 100001 \ # サーバ間でユニークな値を指定する
-mhost master1 \ # 相互で参照する
-mport 1978 \
-rts /var/ktserver/ktserver.rts \
/var/ktserver/ktserver.kch#bnum=20000000#msiz=20g#dfunit=8

keepalivedrpm 化してインストールする

# wget http://www.keepalived.org/software/keepalived-1.2.1.tar.gz
# tar xvzf keepalived-1.2.1.tar.gz
# cd keepalived-1.2.1/
# ./configure
# cp ../../archive/keepalived-1.2.1.tar.gz /usr/src/redhat/SOURCES/
# rpmbuild -ba ./keepalived.spec
# cd /usr/src/redhat/RPMS/x86_64
# rpm -ivh keepalived-1.2.1-5.x86_64.rpm


keepalived 冗長化設定
死活監視を行なって、KyotoTycoonが落ちたらfailoverさせる
勝手に切り替わらないように自動failbackはOFFにしておく

# vi /etc/keepalived/keepalived.conf
! Configuration File for keepalived

vrrp_script check{
script "pgrep ktserver"
interval 1
}

vrrp_instance eth1 {
state BACKUP
interface eth1
virtual_router_id 1
priority 100
nopreempt
advert_int 1
authentication {
auth_type PASS
auth_pass hogehoge
}
virtual_ipaddress {
***.***.***.***
}
track_script {
check
}
}


keepalived を起動する

# serivce keepalived start


vipを持って入れば冗長化完了

# ip addr show