現在うちで稼働中のTruenasはHP製のMicroServer Gen10
なのですがメモリ、CPUのグレードが上がれば速度の向上に
繋がるかなーという感じのテスト等を行ってみます。
テスト機は前にメモリが64GBまで載る事が判明したA320M-K。
テスト機スペック
CPU:Ryzen5 3500
マザーボード:ASUS A320M-K
メモリ:DDR4-3600 64GB
ストレージ:SX8200Pro 1TB
NIC:QXG-5G1T-111C
NIC:RTL8125
OS:Truenas Core 13.0-U5.3
○メモリとCPU
現状のMicroserverよりもスペックを上げてのテストです。
NAS用としてRyzen5 3500は100人程度のアクセスでも問題無いはず。
うーん、殆ど速度の向上にはつながらないですね。
CPUは大分遊び気味で上がっても45℃前後。
メモリは32GBだとキャッシュでカツカツなのですが64GBだと
25GBほど余るほど。流石に一つ100GBクラスのファイルをコピー
すると枯渇しますけどね。
余裕があって熱くならないのは良いです。
○ストレージの速度
上記のスペックアップで狙っていたのがWriteの速度向上なのですが
書き込みの方は大して上がらないもよう。
2.5G、5G共にNVMeからNVMeでも130~140MB/s程度しか出ません。
非同期にしているのですが一旦バッファしてからストレージに書き込む
ようになってるんですかね。
ちなみにReadの方は良い感じで2.5Gなら280MB/s前後、5Gなら380MB/s
程度の速度がMTUを弄らなくても出ます。
この辺はメモリ、CPUの増強分が効いているのかも。
○Aquantia製NIC
比較的安価且つ入手性の良い10GNICとしてAquantia製
チップの製品がありますがTruenasで動かすには結構
面倒だったりしました。その時の記事
ですが13.0-U5.3では素の状態で認識しました。
ちなみに今回試したのはAQC111Cの5G NICですがこちらも
すんなり認識、稼働。
○Realtek製2.5GNIC
こちらも上記の記事で書いたもの。
流石にこちらは素では認識しません。
ただし最新版のTruenas自体はドライバを持っているという
話を見つけました。
では試してみます。
左ペインからシステム→調整と辿り右上のADDから以下の
2つの項目を追加します。
Variable : if_re_load
Value : YES
Type : loader
Enabled : チェック
Variable : if_re_name
Value : /boot/modules/if_re.ko
Type : loader
Enabled : チェック
これで認識します。
動作はデフォルトの状態だと安定しているっぽいです。
MTUを9000に上げると微妙に不安定に。
そもそも9000をサポートしていないとか?
要検証です。
そんな訳で定期的に弄りたくなるTruenasの話でした。
思ったよりもパフォーマンスが出ないのは仕様なのか設定の詰めが
甘いのか分からないのが難ですね。
海外を調べてみても凄い性能を出してるNASはXEONにメモリ1TBとか
出てきて何だそれはと。個人用では無いですねぇ。
(ちなみにちょっとググったら500万くらいのが出てきました)
NICに関しては対応の幅が広がってきているのは良いですね。
ただなんだかんだで枯れているIntel製のNICが一番安定して使いやすい
感じもありますが。
蛇足
○その1
PCってGPU無しでも普通に動くんですね。
というかサーバなんかでは当たり前か。
普通のマザーボードでも特に問題無く動く事を知ってびっくり。
もちろんOSに依存するのでしょうし、ネットワーク上の別PCから
チェック、監視出来る物で無いと動作の確認は出来ないですけどね。
Truenasの場合NICのドライバを持っていて正しく動き、DHCPでIPを
振ってもらえればIPアドレス指定で設定出来ます。
ただし上に書いたRealtek製の2.5GNIC等のように個別に設定が必要だったり、
そもそもTruenasがドライバを持っていないNICだとGPUは必要になりますね。
ああ、初回起動時はDHCPが有効になっていなかったかも?
○その2
Truenasで2つ以上のNICカードがあると両方動かせます。
ただし同一セグメントには設定出来ませんので別に割り振ります。
一つ目:192.168.0.xxx
二つ目:192.168.1.xxx
という感じに
で、まぁ普通は躓かないと思うのですがTruenasのサービス内にある
SMB設定で追加パラメータに
interfaces = "192.168.0.xxx"
という感じで現NASのIPの一つを指定してあると別NICを追加した
際にもIPを指定しないと繋がりません。
interfaces = "192.168.0.xxx", "192.168.1.xxx"
こんな感じに二つ目のNICのIPも追加してあげましょう。
PINGは通るのにIP直打ちでNASが見えずなぜだろう?と暫く苦労しました。