Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
20
Help us understand the problem. What is going on with this article?
@katsukii

rsyncとlsyncdでEC2サーバーを同期する

More than 5 years have passed since last update.

ELBでEC2の冗長構成をとるときに、サーバー1→サーバー2に変更が自動反映されるようになります。

実行ユーザー作成

同期先サーバー

rsyncを実行するためのユーザーを作成して、書き込みを許可するためにwwwグループに追加する

# useradd rsync
# usermod -G www rsync 

sudo ができるように/etc/sudoersファイルを変更

# sudo visudo

↓これをrootの同じ設定の下に追加

rsync   ALL=(ALL)   ALL

SSHの設定

同期元サーバ

鍵の作成

ルートで

# ssh-keygen -t rsa

公開鍵の取得(あとで同期先に登録するのでコピっておく)

# cat .ssh/id_rsa.pub

同期先サーバ

さきほど取得した鍵をauthorized_keysに登録(末尾に改行して貼り付け)

# cd /home/rsync
# mkdir .ssh
# cd .ssh
# touch authorized_keys
# vi authorized_keys ←ここで貼り付け 

権限の変更

# chmod 600 authorized_keys
# cd ../
# chmod 700 .ssh

SSHの設定変更。

PubkeyAuthentication yes

SSHの再起動

# /etc/rc.d/init.d/sshd restart

同期元サーバー

接続できるか確認する

# ssh rsync@xxx.xxx.xxx.xxx 

lsyncdの設定

同期元サーバー

lsyncdのインストール

$ sudo yum install --enablerepo=epel lsyncd

lsyncdの設定ファイル

target のとこは同期先のサーバーとディレクトリ

/etc/lsyncd.conf
settings{
        insist = true,
        statusFile = "/tmp/lsyncd.stat",
        logfile = "/var/log/lsyncd/lsyncd.log",
        statusInterval = 1,
}

sync {
   default.rsync,
   source = "/var/www/",
   target = "rsync@xxx.xxx.xxx.xxx:/var/www/",
   rsync = {
      archive = true
   }
}

lsyncdを再起動

# /etc/rc.d/init.d/lsyncd restart

確認

同期元サーバー

$ tail /var/log/lsyncd/lsyncd.log

これで同期元の/var/www以下に変更が生じたら、自動的に同期先に反映されるはず。

20
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
20
Help us understand the problem. What is going on with this article?