EC2上でのMySQL Multi-masterフェイルオーバー、DynamicDNS(BIND)に対応させた
d:id:stanaka:20100223 EC2上でMySQL Multi-masterフェイルオーバー - 田中慎司のログ をみて、EC2上でMulti-masterのフェイルオーバーが可能なことを知りましたが、
EC2インスタンスを管理するDNSがDynamicDNSな環境なため、修正しないと使えないなと思ってns_agentを拡張して使えるようにしてみました。
事前準備
基本的な設定は参照元のブログと同じなのでそっちにあわせます。
オリジナルのns_agentはphpで動作するのですが、今回作成したものもphpで動作します。
1. pearをインストールして、Net_DNS2をインストールします。
$ pear list-upgrades $ sudo pear install Net_DNS2
2. mmm_ddns_agentをチェックアウトして、設定ファイルを作成します。
$ cd ~/utils $ git clone git://github.com/roothybrid7/mmm_ddns_agent.git
DNSサーバの設定とレコードの設定を行います。
$ cd mmm_ddns_agent $ cp mmm_ddns_agent.conf.sample mmm_ddns_agent.conf $ vim mmm_ddns_agent.conf
確認
参照元のブログと同様に各デーモンプロセスを起動します。
mmm_ddns_agentの起動は、下記の通りです。
$ php ddns_agent.php
本番運用の際は、DaemonToolsやinit.dスクリプトを使用した方がいいでしょう。
実際にMySQL multi-masterを使った確認は別の人がやったのですが、とりあえず問題なく動いたようです。