ご無沙汰しております。工藤です。
しさしぶりなのでライトな内容にしようと思います。
インフラエンジニアではお馴染みのリアルタイム同期ツール「lsyncd」の使い方について。
lsyncd自体についての説明は割愛します。
相変わらずのCentOSでのやり方。
yumります。
# yum install lsyncd
レポジトリは任せます。(epelとかだと2.1.4とかなんで便利です)
sshで同期を実施するため、同期元→同期先といった感じでpushによる同期となります。sshの鍵を作成します。
(同期元)
# ssh-keygen -t rsa
出来上がったファイルを同期先のauthorized_keysにコピーします。
(同期元)
#scp .ssh/id_rsa.pub (同期先アドレス):/root/.ssh/authorized_keys
sshでログインしてみましょう
(同期元)
# ssh root@(同期先)
ログインできたらOKです。これでNGなら何かがおかしいので、/ssh/sshd_configなどをよく見ましょう。
lsyncdを設定します。yumると/etcにlsyncd.confが作成されています。
簡単に動かすだけならこんな感じです。
例:同期したい元ディレクトリ /home
同期したい先ディレクトリ /home
同期したいくないディレクトリ /home/exclude
settings{ logfile = "/var/log/lsyncd/lsyncd.log", statusFile = "/var/log/lsyncd/lsyncd.status", nodaemon = false, } sync{ default.rsync, source = "/home/", target = "root@(同期先):/home/", rsync = { _extra = { "-av" }, }, exclude = "/home/exclude", }
こんな感じです。
で、lsyncdを起動します。
# /etc/init.d/lsyncd start
自動起動に登録します。
# chkconfig lsyncd --on
後はちゃんと同期されているか確認してみましょう。