harumaki.net

インフラ屋の覚書や、ラーメン食べある記とか。

GNU/Linux infra network メモ

rsyncの帯域制限オプション(bwlimit)を試す

投稿日:2010年11月4日

Last Updated on 2016年6月24日 by かんりにん

出向先のLAN環境にて、でかいバックアップファイルをrsyncで別ホストに転送しようとしたら、イントラ用Webサービスのレスポンスが全体的に低下してしまった~。
中断して調べたところ、100base-T環境で常時7~80Mbps程度使われていた様子(休日だったので社内には誰もおらず、業務影響は無し。ふぅ~)。

とはいえ自分がメンテ作業でイントラサービスを使うので、そちらになるべく影響を与えないよう、rsyncのbwlimitオプションを使い、帯域を制限してひっそりと転送作業を実施。
サーバー環境はCentOS5です。

▼参考サイト:お世話になっております!

rsyncのbwlimitオプション
http://matsu.teraren.com/blog/2010/10/28/rsync-bwlimit/
バイト変換
http://byte.yonelabo.com/
 

▼ポイント

bwlimitオプションで指定する単位はKBPS(キロバイト)なので、注意。
bpsに直すときはビットなので8倍にすること。

 --bwlimit=KBPS

 

▼実際に試してみた

以下、SERVER01の/home/user/以下にあるTESTFILE.txt(サイズは約2.5MB)を
SERVER02の/home/user/へ転送する際に帯域制限の有無をつけて比較。
転送速度が変わるので実行時間も比較するため”time”コマンドで計測。tcshなので少々表示が異なります。
 

1)bwlimitオプションなし(通常動作)

SERVER01@~/src : time rsync -avz -e ssh TESTFILE.txt user@SERVER02:/home/user/
user@SERVER02's password:
building file list ... done
TESTFILE.txt

sent 2484156 bytes  received 42 bytes  261494.53 bytes/sec
total size is 2483180  speedup is 1.00
0.126u 0.014s 0:08.84 1.4%      0+0k 0+0io 1pf+0w

 
こちらは普通に速度が出ている。あくまで比較用として。

2)bwlimitオプションあり(帯域制限あり)

以下の例では、125KBps(ビット換算だと1Mbps)で転送を実施。

SERVER01@~/src : time rsync --bwlimit=125 -avz -e ssh TESTFILE.txt user@SERVER02:/home/user/
user@SERVER02's password:
building file list ... done
TESTFILE.txt

sent 2484156 bytes  received 42 bytes  97419.53 bytes/sec
total size is 2483180  speedup is 1.00
0.019u 0.006s 0:39.44 0.0%      0+0k 0+0io 0pf+0w

 
こちらはbwlimitで指定した通りの転送速度で完了。
帯域に制限がある場合や、フロントエンドのトラフィックに影響が出ないよう配慮するときはこのオプションを活用すると、迷惑がかけずに安心かも。

-GNU/Linux, infra, network, メモ

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

no image

script​/標準入力の判定(case文)

[pukiwiki] ホスト名を標準入力にて引数として追加し、ホストグループを判定する勉強用スクリプト。 ホスト名の先頭にweb、db、app、mailがあった場合はホストグループとサーバールートを出 …

no image

インフラ運用の心得:最低限やっておくこと

[pukiwiki] #contents *インフラ運用に最低限やっておくこと [#m5d8ab99] 以下の整備については、”呼吸するのと同じくらい当たり前のこと”としてやっ …

no image

OpenSSHのMatchディレクティブを利用したアクセスコントロール

OpenSSH4.4以上で利用できるようになったMatch(条件分岐)ディレクティブを使った、アクセスコントロールを検証。 参考:お世話になっております! OpenSSH-5.9p1 日本語マニュアル …

no image

[メモ]CMakeインストール

[pukiwiki] MySQL-5.5.9をインストールしようとしたら、configureが見当たらず CMakeに変更されていたので、ひとまずMySQL用にインストール。 -CMakeの公式サイト …

no image

postfix設定変更(inet_protocols)

参考:お世話になっております。 Postfix IPv6サポート http://www.postfix-jp.info/trans-2.2/jhtml/IPV6_README.html EC2のCen …