lsyncdとrsyncを使用したサーバ間ファイル同期
はじめに
lsyncdとrsyncを用いてAWS上に構築したサーバ2台でファイル同期をします。
今回は片方のサーバのみにlsyncdインストール等を実施し、2台目は何もインストールしません。
よって、片方向のファイル同期となります。
構成
前提条件
同期元サーバから同期先サーバに対して、SSH接続が可能であること
- 同期先サーバに設定しているセキュリティグループでインバウンドの22/tcpが許可されている
- SSH公開鍵認証が設定済み
事前準備 (test2で実施)
同期先サーバにディレクトリを作成します。これが同期先ディレクトリにあたります。
$ sudo mkdir /home/ec2-user/test2
$ sudo chown ec2-user:ec2-user /home/ec2-user/test2
設定手順 (test1で実施)
1. 同期元ディレクトリの作成
$ sudo mkdir /home/ec2-user/test1
2. lsyncdのインストール
$ sudo yum install -y lsyncd
3. lsyncd.confの作成
lsyncd.confファイルを編集していきます。
settingsやrsyncのパラメータは任意で設定してください。
$ sudo vim /etc/lsyncd.conf
lsyncd.conf
settings {
logfile = "/var/log/lsyncd/lsyncd.log",
statusFile = "/var/log/lsyncd/lsyncd.status",
insist = 1
}
sync{
default.rsync,
source = "/home/ec2-user/test1/",
target = "ec2-user@同期先サーバのIPアドレス:/home/ec2-user/test2/",
rsync = {
archive = true,
update = true,
rsh = "/usr/bin/ssh -i /home/ec2-user/.ssh/秘密鍵ファイル -o StrictHostKeyChecking=no"
}
}
4. lsyncdの再起動
サービス再起動後のステータスチェックでエラーが出ていないことを確認します。
$ sudo systemctl restart lsyncd
$ sudo systemctl status lsyncd
5. サービス自動起動の有効化
サーバ起動時にlsyncdが自動的に起動されるように設定します。
$ sudo systemctl enable lsyncd
6. 同期テスト用ファイル作成
同期元ディレクトリにテスト用のファイルを作成します。
$ sudo touch /home/ec2-user/test1/test1.txt
動作確認 (test2で実施)
test2にログインし、同期先ディレクトリを確認します。
test1.txtが存在し、同期されていることが確認できました。
$ ls /home/ec2-user/test2
test1.txt
Author And Source
この問題について(lsyncdとrsyncを使用したサーバ間ファイル同期), 我々は、より多くの情報をここで見つけました https://qiita.com/latin1/items/842074412c9b4c9c5279著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .