清水理史の「イニシャルB」
3.5インチベイ×5搭載のPCケース「JONSBO N1」と「TrueNAS SCALE」を使ってNASを自作する
2023年2月20日 06:00
中国発のPCアクセサリーブランド「JONSBO」が販売している、3.5インチベイを5つ搭載したコンパクトなMini-ITXケース「N1」を利用して、NASを自作してみた。OSはどれにするか迷ったが、Linuxベースの「TrueNAS SCALE」を利用してみることにした。
今回は、パーツの選定からTrueNAS SCALEの設定まで、JONSBO N1を使ったNAS作成の過程を紹介していく。
余ったパーツで出費を抑えてNASを自作
かつては自宅用ファイルサーバーと言えば、自作PCにWindows Home ServerやLinuxをインストールして自分で設定していたものだが、SynologyやQNAPなどの登場で、すっかり自作することがなくなってしまった。
そこで今回は、初心を思い出すべく、NASを自作してみることにした。
とはいえ、マザーボードやCPU、メモリ、ストレージ、電源などを一からそろえるとなると、16~17万円ほどかかるので、市販のNASを買った方が効率的という話になってしまう。
パーツ | メーカーおよび製品名 | 価格 |
マザーボード | ASUS PRIME H610I-PLUS | 1万8162円 |
CPU | Intel Core i3-12100 | 2万2290円 |
メモリ | Team DDR4 3200 8GB×2 | 6410円 |
電源 | Corsair RM650x | 1万2735円 |
ケース | JONSBO N1 | 2万2000円 |
2.5 SSD | SUNEAST 256GB | 2780円 |
その他 | M.2 SATA変換ボード | 3976円 |
小計 | - | 8万8353円 |
HDD | WD Red 4TB×5 | 7万1690円 |
合計 | - | 16万43円 |
このため、今回は自宅に余っていたパーツを流用することにした。CPUやマザーボードは2年ほど前の第10世代の製品、HDDもNASに使用していた古いWD RedやWD Blackなどの混在構成にしている。
NASは、さほど処理能力が必要な機器ではないので(詳しくは後述するがメモリはソコソコ必要)、基本的に余っているパーツ、もしくは中古パーツを入手して組み上げても実用的と言える。
ただし、ケースと後述する変換アダプターだけは新調した。まず、ケースだが、NAS用ということで、AliExpressから164.75ドル(日本円で約2万2000円)でJONSBO N1を購入した。
JONSBO N1は、コンパクトなMini-ITX用のキューブタイプのケースだが、内部に3.5インチベイ×5を搭載しているのが特徴だ。ビデオカードはロープロファイルでかつ長さも185mmまでしか搭載できないが、今回はNAS用なのでビデオカードは装着しない。代わりにPCI Expressには、10GbpsのNICを搭載しようと考えている。
続いて、変換アダプターだ。前述したようにJONSBO N1は3.5インチベイが5つあるが、一般的なMini-ITXのマザーボードは4つしかSATAポートが搭載されていない(ゲーミングだと2ポート)。
5ポート以上となるとサーバー向けや組み込み用など特殊なマザーボードが必要となってしまう。このため、5ベイ全てを埋めたい場合、M.2をSATAポートに変換するボードが必要になる。
そこで、今回は、Amazon.co.jpで購入したボードを利用した。注意点として、ボードのSATAポートに接続したストレージがマザーボードのUEFIから認識されなかったため、ブート用のSSDはマザーボード本体のSATAポートに接続する必要がある。
M.2 SATA変換ボードに装着したHDDに関しては、TrueNASが起動してしまえば問題なく認識されるので、今回は2本のHDDをM.2 SATA変換ボードに接続しておいた。
ケーブルの取り回しに意外な苦戦
パーツ類の組み込みは、思ったより苦労した。
コンパクトなケースとはいえ、底面のネジを外してカバーを外すと、フレームだけになるのでマザーボードや電源などは組み込みやすい。
しかし、ケーブルの取り回しが非常にやりづらい。電源関連のケーブル、HDDスロット用の複数本のSATAケーブルなどを狭い隙間を縫うようにして配線しなければならない。ケーブルの余った部分を収めておくスペースもほぼないため、エアフローをあきらめマザーボードの上に無理やり収めたり、風の通り道をふさぐようなかたちで詰め込んだりしなければならなかった。
なお、HDD用ベイのSATA基盤は、マザーボードからSATAケーブルで配線するようになっているのだが、通常のSATAケーブルだとフレームからはみ出してカバーと干渉してしまうため、ケース付属のL字型のケーブルを利用する必要がある。
HDD本体は、付属のゴム製マウンタと取り外し用持ち手を側面にねじ止めしてから、ケースに滑り込ませるように差し込むかたちとなる。一応、マウンタが振動を吸収するような構造になっており、筆者の環境では実稼働させていても振動や共振は気にならなかった。
最終的に組みあがったものが以下の写真だ。縦置きにしてみたが、サイズは思ったより大きい。また、HDDを5台搭載すると、本体は想像以上に重くなる。こうなると、市販のNASのコンパクトさが秀逸に感じられる。
TrueNASをインストールする
組み上げたら、TrueNAS SCALEをインストールする。
TrueNASは、ixSystemsが開発しているNAS用のOSだ。以前は「FreeNAS」として知られていたバージョンも存在したが、これは現在「TrueNAS CORE」という名前で提供されている。
TrueNAS COREがFreeBSDベースのバージョンであるのに対して、今回利用するTrueNAS SCALEは、Linuxベースのバージョンだ。従来のTrueNASのGUIや機能を引き継ぎつつ、LinuxベースのDockerによるコンテナ(管理はKubernetesとhelm)、KVMによる仮想マシンの機能を利用できる。単純なNASというよりは、汎用的なサーバーに近い製品と言えるだろう。
インストールは、同社のサイトからイメージをダウンロードし、USBメモリなどに書き込んで、ターゲットマシンでブートすればいい。
必要システムは、デュアルコア64bit CPU、8GBメモリ(16GB推奨)、ブート用16GB SSD、2台以上のHDD、ネットワークとなっている。コンテナやVMを使うとなると、メモリはなるべく多く搭載しておく方がいいだろう。
インストールが完了すると、ネットワーク経由で管理画面にアクセスできるので、ウェブブラウザーを利用してアクセスし、NASとしての設定をする。市販のNASではストレージ構成などをある程度自動的に行なってくれるが、TrueNAS SCALEの場合、手動での構成が必要になる。
全て説明すると長くなるので、以下で流れを大まかに紹介しておく。
1.プールを作成
TrueNAS SCALEではZFSを利用してストレージを管理する。そこで、まずは装着したHDDをプールに追加する。今回はダブルパリティーの「Raid-z2」で構成。HDDが2台故障しても対応できる。
2.データセット作成
データの保存先として使うデータセットを作成する。プールの中に、「share」や「public」など共有用のデータセットを追加。Windowsから利用する場合は「Share Type」で「SMB」を選択し、大文字小文字の区別なく使えるようにするなどの設定を適用しておく。
3.グループとユーザーを登録
標準のグループを使って管理してもいいが、今回は「family」グループとそこに所属するユーザー(shimiz)を作成して管理する。ユーザーは「Samba Authentication」をオンにし、「Create New Primary Group」をオフ、Primary Groupに作成した「family」グループを設定して作成しておく。
かなり多機能かつ高速なNASが完成!
気になるパフォーマンスだが、なかなか優秀だ。
今回は、PCI Expressに10Gbpsのネットワークアダプター「Intel X540-T2」を装着し、10GbpsでPCと通信可能にしたため、シーケンシャルでリード、ライトともに1100MB/sオーバーとなった。約9Gbpsと、10Gbpsネットワークの実力を発揮できている。自作のNASとしては十分な性能だ。
FreeNAS SCALEならではの機能も便利だ。興味深い機能なので、詳細はあらためてレビューしたいと思うが、「Apps」からコンテナアプリを選んで手軽に稼働させることができる上、「Virtualization」から仮想マシンも簡単に構築できる。
市販のNASでも、同様にコンテナや仮想マシンを利用できるが、個人向けの低価格なモデルではサポートされていなかったり、搭載できるメモリ容量に限界があったりするため、あまり多くのサービスを稼働させたりすることができない。
これに対して、自作の場合、メモリは32GBくらいまでは無理なく増設できる上、場合によってはCPUさえ交換できる。自作NASの自由度の高さと、TrueNAS SCALEの柔軟さが非常にマッチしているイメージだ。
今回は、とりあえずNASとして稼働させることが目的なので、また改めて検証したいと思うが、非公式のカタログを追加すると膨大なアプリが利用可能になる。内部的にKubernetesで動作し、デプロイ管理がHelmとなっているため、一般的なDockerの知識だけでは細かな設定が難しいが、かなり面白い製品と言えそうだ。
趣味として楽しむ自作NAS
以上、JONSBO N1ケースとTrueNAS SCALEでNASを自作してみたが、かなり本格的な自宅用NASを作れることがわかった。
ただし、PCを活用した自作NASは、高性能であるものの、費用的に高くなりがちだ。このため、余っているパーツをうまく活用したり、中古の掘り出し物パーツを入手したりするなどして、なるべく費用を抑える工夫が必要となる。
最後に、今回使用したパーツをまとめておく。前述の通り、ケースとM.2 SATA変換ボード以外は自宅に余っていたパーツの流用だ。1台分のパーツさえそろっていれば、TrueNAS SCALEによって、かなり高度な機能を使えるNASが手に入る。実用性はさておき、自宅サーバーとして、かなり遊べる構成と言えそうだ。
パーツ | メーカーおよび製品名 |
マザーボード | MSI H510I PRO |
CPU | Intel Core i3-10100 |
メモリ | DDR4-2666 16GB×2 |
電源 | SilverStone SST-SX500-LG |
ケース | JONSBO N1 |
2.5 SSD | ADATA 256GB |
その他 | M.2 SATA変換ボード |
HDD | WD Red 4TB×3、WD Black 4TB×2 |
NIC | Intel X540-T2 |