録画とNASを兼ねたサーバを組みました。

以前はもっぱらHyper-VとMinecraftのサーバとして運用していたのですが、利用頻度が少ないのでHDDガン積みして録画鯖とNASとして運用することにしました。

現状のサーバはサイズのSARAⅡというケースを利用しているのですがHDDは1台しか積めない、というかSATAケーブルが電源ユニットと干渉してまともに追加できないという状態です。
流石にこれでデータストレージサーバはしんどいところなのでケースを一新することにしました。

Fractal Design Define R5 Titanium Grey


フォロワーさんがちょうどケースを余らせていた(???)らしくかなり格安で譲っていただきました。
Fractal Designは気になっていたのですが、そもそもPCケース買い換えるってなかなか無くないですか…?


ATXマザーボード、ATX電源はもちろんのこと、SSD専用に2個スロット、そして3.5インチシャドウベイが8個もあります。
ファンも基本140mmがつけられる設計のようで、P183で時代が止まっている自分には衝撃でした。

とりあえずSARAⅡからまるまる移設をして問題なく各機器が動くか検証して増設作業に入ります。

135mmファン搭載電源ユニットに120mmファンをつける


以前の記事で電源ユニットを換装しましたが、結局このとき変えた電源を引っ張り出して来ました。実に8年選手です。
ただファンが劣化しているようで、非常に耳障りなファンノイズが発生したため余っていた120mmファンをタイラップで固定しました。
電源に関しては電源ユニットのメッシュを一部切り取り、そこから3pinを引き出して4pinペラフェラルに接続しています。
あまりいい固定方法ではないと思うのでそのうち新しい電源ユニットを調達する予定です…。
理想としてはメインPCの電源ユニットをSeasonicに変えて、メインPCに使っている銀石電源を鯖へ…ってやりたいですね。

メインPCから6TB*2を、NASから4TB*2を移設


メインPCでは録画用に6TB*2をRAID1で、NASでは4TBをメインにもう4TBをバックアップで運用していました。
今回は6TB*2、4TB*2をそれぞれIRSTでRAID1することにしました。
Z68はSATA2*4とSATA3*2あり、P8Z68-V PROには追加でMarvellチップでSATA3*2が実装されています。
RAID運用が可能なのはZ68から出ているSATAのみでSATA3は2ポートしかありませんがHDD程度ならSATA2で十分な速度が出るので問題なさげです。


ベンチマークも十分な速度が出てるので問題なさげです。

冷却用ファン増設


HDD冷却+吸気用として全面に140mmファンを増設できるので追加しました。
AF120を以前から使っていたのですが、値段の割によかったので140mmモデルも同一製品を買いました。



前面ファンのネジが4本しかなかったので2本どめです。似たネジを探しているんですけどなかなかないんですよね…。

リンクアグリゲーションを構築してみる


ヤフオクで安価で手に入れたIntelの4-portNICを利用しているので、これを機にリンクアグリゲーションを構築してみようと思います。
リンクアグリゲーション(以下LAG)は複数のケーブルを束ねることで速度を引き上げる…という技術なのですが、同一セッションからの速度は上昇しません。
つまりSMB転送や同一IP同士にTCP/UDP通信は速度があがりません。
LAGが効果的に発揮されるのは、同一PCに複数のクライアントからのアクセスがあった場合のみです。
今回はNASと録画鯖を運用させるのでできるだけ分散処理させたほうが良さそうなので導入します。


購入したのはTP-LINKの8ポートイージースマートスイッチ。
3.5kという安さながらVLANやLAGに対応しています。
NETGEARだと16ポート以降でしかLAGに対応していないので妥協しましてこちらにしました。
残念ながら蟹チップが採用されているようです。とはいえ、スループットの低下はそこまで感じなかったので問題ないかと。
LANケーブルも今回ふっといやつを追加でいくつか購入。
接地処理をしていないのでUTP最上位のCat6Aを選択しました。

2マシンからのアクセスで双方向1Gbps超を実現


2つのPCからiperf双方向モードを利用してスループットを測定してみました。
最大値、とまではいきませんが受信が1Gbpsを超えて1.7Gbps出ているものもあるのでまぁ十分かと思います。

SMBマルチチャンネルを利用してみる


LAGではSMBのスループットは上昇しませんが、SMB3.0からそれとは別の方法で容易に1Gbpsをこえる方法が用意されています。
rigaya氏のブログで詳しく解説されているので、説明は省略します。
鯖PCにはポートが余っていましたが、メインPCにはイーサネットポートが余っていなかったのでUSB-NICを利用しました。
CPU使用率が上昇しそうとも思いましたが、特段問題なく実装可能でした。
鯖PCとメインPCの間に直接接続しており、SMBマルチチャンネル時は通常のツリー型イーサネットと直結イーサネットでマルチチャンネル通信が行えます。

チューナー実装


以前の環境そのまんま持ってきて各種ドライバダウンロードしてくるだけなのでそこまで難易度は高くないです。
アンテナレベルも当初はDropが発生していましたが、B-CASカードを接続しての本格運用に入るとそれもなくなったので問題なさそうです。

さらなる冗長化


余っていた120GBのSSD、2つを利用してRAID1構成にしました。
当初は256GBのSSDでの運用だったので、いろいろと容量削減を行いました。Windows10になって必要容量が増えていると思いましたがまだ120GBでも十分実用可能でした。
RAIDにはすでに利用しているIRSTを使用。SSDなので貴重なSATA3ポートを利用しました。
IRSTのRAID1は読み込みが早くなるという特徴があるため単純な性能も向上しました。
もっとも、古いSSD(Crucial M4とIntel 530)なので書き込み速度が遅いことや、そもそも寿命がそう遠くないという問題点があり予算に余裕ができ次第変更ですね。

更に追加として4TBのHDDを追加しました。


ちょうど安くなっていた点と、後継機がSMRのようでウワキツとなり確保の意味も兼ねての購入です。
RAIDグループにするわけではなく、定期的にバックアップが行われるドライブとして運用します。
これにより、論理障害からデータを守ることができます…が、現状ミラーリングソフトが見つからずFastCopyをだましだまし使っている状態です。
いろいろソフトを選んだのですがどれもしっくりこず。

とりあえず構築完了。でも進化途中


とりあえず予定にあった内容はすべてできたかなという感じです。
NAS用だった4TBは4TB*2(RAID1)+バックアップという冗長性を確保。論理障害やヒューマンエラーにも対応。
ts用の6TB*2はRAID1で運用。システム用CドライブはRAID1。
イーサネットは3LAG。SMBマルチチャンネルは2Gbpsに対応。
残り目指すなら、電源をもっといいものにしたりWQHD出力ができないのでグラフィックボードを実装したり、10GbpsNICを搭載したりと野望はいくらでもありますが流石に予算的な問題で実現が難しそうです。
サーバの一番は「安定して運用できること」今回、このような構成にしましたが、これが問題なく常に利用できなければならない。
それを目指していろいろと試行錯誤を進めていこうと思います。