メールは、消えてしまうと結構痛い!!せっかくACT/SBYクラスタサーバとかあるわけですし、cyrus-imapdには、レプリケーションって機能があります。ですので、ぜひとも実行してみようと。いうことです。
package.useを開いて、以下を追加します。
net-mail/cyrus-imapd replication
んで、
# emerge --newuse vuD world
でまずはインストール完了。
/usr/share/doc/cyrus-imapd-X.X.XX/html/配下に、install-replication.html[6] てのがあります。こちらをご参照してね。これに従ってやっていくのですが、以下のように。
/etc/cyrus.confの、SERVICESセクション({}に囲まれているところ)に以下の行を追加するですよ。
SERVICES { #その他、pop3/imap/pop3s/imapsの設定やらやら。 syncserver cmd="/usr/lib64/cyrus/sync_server" listen="csync" #他にも設定やらやら }
また、saslpasswd2で、cyrus管理者のパスワード(cyrusのデフォルトだと、cyrusさんかな)を設定しておいてやります。ここ[10]参照ね。
/etc/imapd.confに、以下を追加してやります。
sync_host: <レプリカサーバホスト名> sync_authname: <レプリカサーバcyrus-imapd管理者名(ふつうはcyrus)> sync_realm: <imapユーザ名の@以下(特に指定なければ、レプリカサーバホスト名)> sync_password: <レプリカサーバで設定したcyrus-imapd管理者パスワード> sync_log: yes
でおしまい。
このままだと、マスタサーバ側で、sync-clientコマンドを実行しないといけません。このため、随時バックアップがうまくいくように、マスタサーバ側の/etc/cyrus.confのSTARTセクションに以下の設定を追加
START { # 他の設定やら… syncclient cmd="/usr/lib64/cyrus/sync_client -r" # 他の設定やら… }
以上です。
マスタサーバ/レプリカサーバ双方で再起動してやります。するってーと…うまく動いていれば、レプリカサーバ側の/var/spool/imapを見ていると、続々とコピーされていく様がわかります。んで、ローリングバックアップを設定しているので、リアルタイムに変更が反映されるって寸法。これで、マスタサーバがこけた際でも、バックアップを参照すればいいし、いざマスタのメールが消えた場合でも、レプリカサーバをマスタサーバに変更して、コピーを持ってくればいいって寸法。やったね♪
(This host) = https://femt.ddo.jp