仮想マシンストレージ用の新しいバックアップサーバーとして使用されるUbuntuサーバーを新しくインストールしました。サーバーには4つのネットワークカードがあり、そのうちの2つはSAN接続用の10Gbit(実際に最新のドライバを搭載したIntel x540-T2)です。 nfs-shareをローカルにインストールし、30個程度のファイルと15個程度の仮想マシンイメージ、そのログファイルが入っているディレクトリをコピーする時の速度差を比較してみました。画像サイズは8GBから600GBまでです。
使用:
cp -rf /mnt/nfs-share /backup-storage/
bmonは約600MiB / sを示しています。
使用
rsync -av /mnt/nfs-share /backup-storage/
bmonは最初の数秒間いくつかのパケットを表示し、約30秒間一時停止してから約60-75MiB / sに増加します。 CPU使用量は約60%程度になります。
rsync
同じパフォーマンスを使用するには、何を変更する必要があり、変更できますかcp
?
ベストアンサー1
cp
私の考えでは、との違いがかなり明確だと思いますrsync
。参考までに、次の記事を参照してください。rsync パフォーマンスの概要。
The four commands tested were:
rsync $SRC $DEST
echo $SRC | cpio -p $DEST
cp $SRC $DEST
cat $SRC > $DEST/$SRC
The results for rsync, cpio, cp, and cat were:
user sys elapsed hog MiB/s test
5.24 77.92 101.86 81% 100.53 cpio
0.85 53.77 101.12 54% 101.27 cp
1.73 59.47 100.84 60% 101.55 cat
139.69 93.50 280.40 83% 36.52 rsync
私はrsync
毎日それを使用しています。この状況を改善するためにできることはいくつかあります。
たとえば、次のようにスイッチを試すことができます-W
。
-W, --whole-file copy files whole (w/o delta-xfer algorithm)
また、バージョン3.xを使用していることを確認することをお勧めしますrsync
。新しいバージョンにアップグレードすると確かに改善されます。