2015年9月6日日曜日

NASの自作 Part32

Windows10のインストールに予想以上に苦戦を強いられましたが、とりあえずOMVとWindows10のデュアルブートが実現しました。BIOSで起動OSを切り替えるのでWindows10の高速スタートアップを無効化しています。Windows10からのLVMへのアクセスはまた時間のある時にやりたいと思います。
今日はさらなるパフォーマンスアップのためにSambaの設定をいじってみようと思います。現状の設定とパフォーマンスは以下のようになっています。

max protocol = SMB2
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=87600 SO_RCVBUF=87600

DiskSpeedTestSamba

Mac OS X Mountaion LionからSambaのバージョンが3になったということで、試しにmax protocolをSMB3に設定してみます。

max protocol = SMB3
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=87600 SO_RCVBUF=87600

DiskSpeedTestSMB3

理由は分かりませんが、かなり遅くなってしまいましたorz Sambaのヘルプを見るとmax protocolはサーバーとクライアントが自動的に決めるので設定しないのを推奨しているみたいです。今度はmax protocolを設定しないようにしてみます。

socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=87600 SO_RCVBUF=87600

DiskSpeedTestNoSMB

変わらず遅いです。やはり私の環境ではmax protocolはSMB2にするのがベストなようです。幸い妻もmacを使っているのでクライアントによってパフォーマンスが悪くなったりする心配は無さそうです。次はソケットの設定でバッファサイズを1.5倍に増やしてみます。

max protocol = SMB2
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_SNDBUF=131400 SO_RCVBUF=131400

DiskSpeedTestSO131400

うーん。全く変化がありません。バッファサイズはあまり関係ないようです。他のSambaの設定項目を調べてみましたが、基本的にはデフォルト値が推奨されており、パフォーマンス改善につながりそうなパラメータは見つけられませんでした。
Sambaのチューニングはひとまず諦めて、Link Aggregationという機能を試してみます。これは複数のNICをまとめて1つのNICとして動作させて通信速度や障害耐性を上げる技術のようです。ここに詳しく書いてあります。
まずOVMで設定を行います。[Network]->[Interface]を見ると現在、eth0が使われています。このeth0を削除してから新しくインターフェースを追加します。インターフェースの種類はEthernetではなくBondを選択します。

AccessMenuBarApps

AccessMenuBarApps 2

マザーボードには2つのNICが搭載されているのでeth0とeth1を選択します。今回は速度向上が目的なのでモードはbalance-rrを選択します。


AccessMenuBarApps 4

AccessMenuBarApps 5

どうやら設定できたようです。さっそくパフォーマンスを計測してみます。

DiskSpeedTestLinkAggr

Writeは変わらず、Readは遅くなりました。。。どうやらSambaだとLink Aggregationでパフォーマンスは改善しないようです。iSCSIだとパフォーマンスが改善するみたいな情報もあったので残念です。ちなみに有線ではなく802.11acで測定してみたのですが激遅でした(障害物なし)。802.11acって1.3Gbpsじゃないのか。。。

DiskSpeedTestWifi

0 件のコメント:

コメントを投稿