以前、Kyoto Tycoon (memcached plugin)をCentOS 6.2にインストールの記事を紹介しましたが、これを冗長化(レプリケーション)してみました。

内容としましては、下記のように起動スクリプトを修正して再起動を行いました。

▼ha-aの/etc/init.d/ktserver

...
mhost="ha-b"
mport="1978"
rtsfile="$basedir/rts"
...

▼ha-bの/etc/init.d/ktserver

...
mhost="ha-a"
mport="1978"
rtsfile="$basedir/rts"
...

そして、テストは下記のように実施しました。

はじめに、ha-aで書き込みを行い、正しく取得できることを確認します。

# telnet localhost 11211
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
set test1 0 0 7
suzuki1
STORED
get test1
VALUE test1 0 7
suzuki1
END

次に、ha-bでも正しく取得できることを確認し、さらに書き込みを行い、取得できることを確認します。

# telnet localhost 11211
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
get test1
VALUE test1 0 7
suzuki1
END
set test2 0 0 7
suzuki2
STORED
get test2
VALUE test2 0 7
suzuki2
END

最後に、ha-aに戻ってha-bで書き込んだものが正しく取得できることを確認します。

# telnet localhost 11211
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
get test2
VALUE test2 0 7
suzuki2
END

尚、HAProxy(1.4)でMemcachedの負荷分散(障害時の切り離しも)の記事で紹介した
HAProxyとの連携も効果的だと思います。

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら