むろっちのStacking

日々の中で学んだIT知識をメモして置く場所

自宅サーバーを自作するときに検討すべき要件

はじめに

最近はAWSとかGCPとかクラウドが流行っているのでわざわざ自宅にサーバーを持つ人は減っていると思う。
だが元々PC自作が趣味だったので自然な流れでに自宅サーバーを構築しようと考えていた

自宅サーバーを構築すると自分の懐から出ていくので費用と性能、信頼性の肌感覚が身につく。 また物理レイヤーから自由にできる環境はOSなどの学習に最適だ。
いっとき構築するだけでなく、運用することで見えてくる課題があり、そこが学びにつながる

自宅のサーバー群


今は物理サーバー4台で稼働中。仮想化により省エネ&台数削減できた

録画サーバー
WindowsServer+PT3で構築。リモート予約機能を搭載。構成を変えつつ約5年運用
構成

  • CPU Celeron
  • MEM:32GB
  • HDD:4TB2+6TB2

仮想基盤サーバー1号機
ESXiで構築後述の2号機と合わせて約10台のVMが稼働中。我が家ではルーターVMとして動作するため要のサーバー。約1年可動中
構成

  • CPU:Xeon 2620v3
  • MEM:32GB ECC
  • HDD:SSD1TB*2

仮想基盤サーバー2号機
ESXi1号機のバックアップ用途

構成

  • CPU :Xeon E3 1240v6
  • MEM:ECC 32GB
  • HDD:SSD1TB*2

バックアップサーバー
Windows+余ったHDDで週一Wake on Lan起動。バックアップ取得後はシャットダウン

構成

構成は余り物 * CPU:Core i5 3570T * MEM:16GB * HDD:3TB*6

 

自宅サーバーの作り方2通り

既成品を買ってくる

NEC,HP、富士通あたりからPC紛いのエントリーサーバーを購入する

メリット
* 市販PCと比べてもかなり格安で購入できる。CeleronPentiumクラスなら10万以下も多く、Xeon E3シリーズでも10万円台で購入できるものが多数あるNTT-X Store * マネジメントポートによるOSレス監視機能が標準で搭載しているため、OSハング時のリモート操作が可能。ただしUIからの操作は別途ライセンスが必要なケースが多い

デメリット
* 専用M/B等構成が特殊なため、市販拡張ボードを購入し、挿すことは未サポート * OSやHWファームのアップデートがサポート契約を結ばないとダウンロードできないケースがある * ラック型の場合、動作音はかなりうるさい * ケースは変えられない

パーツを購入して自分で組み立てる

サーバー用途で利用できるパーツを自分で調べて購入する。

メリット
* 自分の好きなケースや構成で組める。

デメリット
* サーバー構築に必要とする機能を満たすか、またサーバー用途OSが検討している構成で動くかは動作未サポートがほとんど。慣れていないと入れたいOSがインストールできない構成で組んでしまうこともある * 実は対して安くない * パーツの購入が難しい。M/BはAsrockRackやSupermicroに良さそうなものがあるが、実購入できる場所が少ない

自作PCとサーバーの違い


ITパスポートに出てきそうなレベルの内容だがサーバーと自作PCの違いは

  • 性能
  • 信頼性

をどうするかに尽きる

性能

CPU:現行のPCのスペック自体非常に高く、CPUがネックになるケースは少ない
MEM:個人で立てる用途であれば仮想基盤用途を除きメモリは8GBもあれば十分

信頼性

サーバーにする上で信頼性の担保が最も難しい

CPU

Xeon上位モデルにはRAS(Intel Run Sure Technology)を搭載しているが機能としてメモリアドレスのミラーリング等有効な状況が限られる。Xeon E5から機能自体はつくが個人用途で導入するメリットは低い。気にすべきはCPUがECCに対応するか否か

参考:https://japan.zdnet.com/article/35103104/2/

MEM
ECCメモリにするか否かECCの場合、nonECCと比べて最低でも1.5-2倍程度の価格になる ECCの効果はなかなか実感しにくいが、Googleによる調べでは以下のようにメモリ訂正の頻度は予想よりも遥かに多い。また経年劣化が10-18ヶ月で発生し始めるとの記載もある。 https://japan.cnet.com/article/20401367/

ストレージ
HDD&ストレージ:気休めではあるがHDDのMTBF平均故障間隔)値を参考にするのが王道 有名どころのWesternDigitalのHDDラインナップでは WD Green:30万時間 WD Red(市販NAS向け):60万時間 SSDの一例 Intel SSD 540s(コンシューマ向け)160万時間 容量気にしなければSSDのほうが信頼性が高い

RAID:3通りの考え方がある

拡張ボード追加によるハードウェアRAID

  • 信頼性が高い
  • 値段が高い。RAID5相当を組めるモデルはその他パーツより高くなる
  • 参考:Amazon

オンボードチップによるソフトウェアRAID

  • OSが動作しない状況でも使える
  • M/Bが故障した場合に別M/Bに載せ替えてデータが確認できるか不安

OSによるデータ冗長化

  • Windowsだと記憶域プール
  • LinuxだとLVM機能
  • ただで利用できるがOS故障時のアクセスがしにくい

NIC:チーミング等を想定してIntelBroadcomなど信頼性の高いものが良い。NIC自体が故障するよりもケーブルの抜き差しでダウンするケースが多い

信頼性に対する持論


単機能サーバー(ここではファイルサーバーを想定)

  • 停止しても影響ないのでHDDのみOSによるRAID構成。

仮想基盤サーバー

  • 停止すると上位のゲストOSが軒並み停止するため、単機能サーバーより信頼性を高めた構成とする
  • メモリはECC構成。NICIntelチップを利用したデバイスを複数ポート用意。HDDはSSDをHWRAIDによるRAID1構成
  • 停止して困る仮想サーバーは乗せる物理サーバーを分けた上でアプリケーションレベルでの冗長化が望ましい

結局のところ、個人用途のサーバーなので如何に故障しないかを突き詰めるよりはある程度信頼性が低いのは認識した上で、きちんとバックアップを自動取得させることが費用対効果を考えると重要だと思っている。