実戦sersyncファイル同期構成
sersyncは主にサーバ同期,webミラーなどの機能に用いられる.sersyncはc++を使用して記述され、rsync同期を組み合わせると、実行時間とネットワークリソースを節約します.そのため、より速くなります.sersyncは構成が簡単です.また、本プロジェクトは他のスクリプトオープンソースプロジェクトと比較して、マルチスレッドを使用して同期を行い、特に大きなファイルを同期する際に、複数のサーバがリアルタイムで同期状態を維持し、同期がタイムリーで迅速であることを保証することができる.
インストール環境
sersyncサービス側
112.124.12.234
クライアント
112.124.1.2
42.120.1.2
42.120.1.3
OS centos 6.3 64ビット
1.サービス側の設置
yum -y install rsync
vim/etc/rsyncd.confはネット上でrsync.confと言ってもいいかもしれませんが、こちらはだめです.
uid=root gid=root max connections=3600 use chroot=no log file=/var/log/rsyncd.log pid file=/var/run/rsyncd.pid lock file=/var/run/rsyncd.lock
rsync --daemon
echo "/usr/bin/rsyc --daemo">/etc/rc.local
ダウンロードアドレスhttp://code.google.com/p/sersync/downloads/list
tar zxvf sersync2.5.4_64bit_binary_stable_final.tar.gz -C /usr/local
cd /usr/local/GNU-Linux-x86/
vim confxml.xml
ほとんどのアプリケーションでは、createFile(ファイルイベントのモニタリングオプション)をfalseに設定してパフォーマンスを向上させ、rsync通信を削減しようとします.監視ディレクトリにファイルをコピーするとcreateイベントとclose_が発生するためwriteイベントなのでcreateイベントをオフにすると、ファイルコピー終了時のイベントcloseのみがモニタされます.writeは、同様にファイルの完全な同期を実現することができます.注意:createFolderをtrueに維持し、createFolderをfalseに設定すると、生成されたディレクトリは監視されず、そのディレクトリの下のサブファイルとサブディレクトリも監視されません.特別な必要がない限り、オンにしてください.デフォルトでは、ファイル(ディレクトリ)の作成イベントとファイル(ディレクトリ)の削除イベントを監視します.プロジェクトでリモートターゲットサーバのファイル(ディレクトリ)を削除する必要がない場合は、deleteパラメータをfalseに設定できます.削除イベントは監視されません.
2.クライアント構成
そのうちの1台を例にとると(後ろの数台は同じです)
yum -y install rsync
vim/etc/rsyncd.conf
uid=root gid=root max connections=3600 use chroot=no log file=/var/log/rsyncd.log pid file=/var/run/rsyncd.pid lock file=/var/run/rsyncd.lock [v.languang.com] path=/data/web/movie comment = www web files ignore errors = yes read only = no hosts allow = 112.124.12.234 hosts deny = * #list=false #uid=root #gid=root #auth users=backup #secrets file=/etc/server.pass
rsync --daemon
echo "/usr/bin/rsyc --daemo">/etc/rc.local
3.sersyncのいくつかの操作
1.リアルタイムモニタリングを開始する前に、プライマリ・サーバ・ディレクトリとリモート・ターゲット・ディレクトリの全体的な同期を行う
sersyncを実行する前に、既存のすべてのファイルまたはディレクトリをリモートに同期する必要がある場合は、-rパラメータでsersyncを実行し、ローカルとリモート全体を同期します.フィルタが設定されている場合、xmlファイルでfilterがtrueの場合、-rパラメータを使用して全体的な同期は一時的にできません.-rパラメータは無効になります.
2.起動パラメータヘルプの表示
3.プロファイルの指定
sersyncで実行可能ファイルディレクトリのデフォルトプロファイルconfxml.xmlを使用する場合は、-oパラメータを使用して他のプロファイルを指定します.
4.デフォルトのスレッドプールの合計スレッド数を指定
たとえば、./sersync-n 5では、スレッドの合計数を5に指定します.指定しない場合、デフォルトの起動スレッドプール数は10です.cpuが高すぎる場合は、このパラメータで低く設定できます.マシン構成が高い場合は、-nでスレッドの合計数を高くジャンプできます.
5.同期せずにプラグインのみを実行
たとえば./sersync-m commandでは、ファイルイベントを監視した後、リモート・ターゲット・サーバを同期せずにcommandプラグインを直接実行します.
6.複数のパラメータを組み合わせて使用可能
スレッドプールの作業スレッドを8個に設定し、abc.xmlをプロファイルとして指定し、リアルタイムモニタリング前に全体同期を行い、プロセスを保護するようにバックグラウンドで実行する.
7.通常、ローカルからリモート全体を同期した後、バックグラウンドでリアルタイム同期を実行します.
インストール環境
sersyncサービス側
112.124.12.234
クライアント
112.124.1.2
42.120.1.2
42.120.1.3
OS centos 6.3 64ビット
1.サービス側の設置
yum -y install rsync
vim/etc/rsyncd.confはネット上でrsync.confと言ってもいいかもしれませんが、こちらはだめです.
uid=root gid=root max connections=3600 use chroot=no log file=/var/log/rsyncd.log pid file=/var/run/rsyncd.pid lock file=/var/run/rsyncd.lock
rsync --daemon
echo "/usr/bin/rsyc --daemo">/etc/rc.local
ダウンロードアドレスhttp://code.google.com/p/sersync/downloads/list
tar zxvf sersync2.5.4_64bit_binary_stable_final.tar.gz -C /usr/local
cd /usr/local/GNU-Linux-x86/
vim confxml.xml
ほとんどのアプリケーションでは、createFile(ファイルイベントのモニタリングオプション)をfalseに設定してパフォーマンスを向上させ、rsync通信を削減しようとします.監視ディレクトリにファイルをコピーするとcreateイベントとclose_が発生するためwriteイベントなのでcreateイベントをオフにすると、ファイルコピー終了時のイベントcloseのみがモニタされます.writeは、同様にファイルの完全な同期を実現することができます.注意:createFolderをtrueに維持し、createFolderをfalseに設定すると、生成されたディレクトリは監視されず、そのディレクトリの下のサブファイルとサブディレクトリも監視されません.特別な必要がない限り、オンにしてください.デフォルトでは、ファイル(ディレクトリ)の作成イベントとファイル(ディレクトリ)の削除イベントを監視します.プロジェクトでリモートターゲットサーバのファイル(ディレクトリ)を削除する必要がない場合は、deleteパラメータをfalseに設定できます.削除イベントは監視されません.
2.クライアント構成
そのうちの1台を例にとると(後ろの数台は同じです)
yum -y install rsync
vim/etc/rsyncd.conf
uid=root gid=root max connections=3600 use chroot=no log file=/var/log/rsyncd.log pid file=/var/run/rsyncd.pid lock file=/var/run/rsyncd.lock [v.languang.com] path=/data/web/movie comment = www web files ignore errors = yes read only = no hosts allow = 112.124.12.234 hosts deny = * #list=false #uid=root #gid=root #auth users=backup #secrets file=/etc/server.pass
rsync --daemon
echo "/usr/bin/rsyc --daemo">/etc/rc.local
3.sersyncのいくつかの操作
1.リアルタイムモニタリングを開始する前に、プライマリ・サーバ・ディレクトリとリモート・ターゲット・ディレクトリの全体的な同期を行う
./sersync -r
sersyncを実行する前に、既存のすべてのファイルまたはディレクトリをリモートに同期する必要がある場合は、-rパラメータでsersyncを実行し、ローカルとリモート全体を同期します.フィルタが設定されている場合、xmlファイルでfilterがtrueの場合、-rパラメータを使用して全体的な同期は一時的にできません.-rパラメータは無効になります.
2.起動パラメータヘルプの表示
./sersync --help
3.プロファイルの指定
./sersync -o XXXX.xml
sersyncで実行可能ファイルディレクトリのデフォルトプロファイルconfxml.xmlを使用する場合は、-oパラメータを使用して他のプロファイルを指定します.
4.デフォルトのスレッドプールの合計スレッド数を指定
./sersync -n num
たとえば、./sersync-n 5では、スレッドの合計数を5に指定します.指定しない場合、デフォルトの起動スレッドプール数は10です.cpuが高すぎる場合は、このパラメータで低く設定できます.マシン構成が高い場合は、-nでスレッドの合計数を高くジャンプできます.
5.同期せずにプラグインのみを実行
./sersync -m pluginName
たとえば./sersync-m commandでは、ファイルイベントを監視した後、リモート・ターゲット・サーバを同期せずにcommandプラグインを直接実行します.
6.複数のパラメータを組み合わせて使用可能
./sersync -n 8 -o abc.xml -r -d
スレッドプールの作業スレッドを8個に設定し、abc.xmlをプロファイルとして指定し、リアルタイムモニタリング前に全体同期を行い、プロセスを保護するようにバックグラウンドで実行する.
7.通常、ローカルからリモート全体を同期した後、バックグラウンドでリアルタイム同期を実行します.
./sersync -d