[Hardware] 自宅にEnterprise向けサーバを置きたい人へ

Enterpriseサーバとは

業務用コンピュータとして売られてるサーバであり、Hewlett-Packard EnterpriseとかではProLiantと言う機種がありますし、LenovoではSystem xと言う機種、DELLだとPowerEdgeがあります。国内ではFujitsu PRIMERGYやHitachi HA8000なんかがあったりします。

パソコンとの違いとしては、故障が発生しても継続運転できる仕組みが搭載されていたりしますし、より多くのバックグラウンドタスクを処理できるよう最適化された仕組みが実装されています。パソコンと比較するとシステムボードもかなり大きく、拡張性が高いのも特徴かなと思います。

保守があってナンボ

こうしたサーバは、原則保守契約を締結することが多いです。そのため、保守契約があることを前提とした構造になっていて、その契約がないとドライバー一つダウンロードするのも難しかったりする製品もあったりします。最近エンタープライズクラスのコンピュータがヤフオク!などで売られていたりするんですが、そうしたものは保守契約が当然締結されているはずがないものばかりなので、パーツ故障が発生した場合とか、新たなファームウェアが必要なときとか、自力探索できるようにしておく必要があります。

自社製品をくっつけることしか想定してない

これも当たり前の話なんですが、ユーザが蓋を開けていじって良いところが大体範囲決めされてます。それ以外の箇所をいじるのはメーカー側のカスタマーエンジニアが触れる領域です。そのため、他社製品をハードウェア的に増設することをほぼ全く考えていません。よって、自作パソコン的な考えでパーツを増設するとうまく動かないことがあったりします。

最近のサーバは賢くなりすぎている

最近のサーバはかなりインテリジェンスかが進んでいて、特にエネルギー効率を重視した仕組みが数多く搭載されています。最近触れるハードの中でそれが顕著なのはHPE製サーバであるProLiantシリーズで、実はコイツかなり細かい制御をやっています。

私が最近まで自宅機器でやらかしていたのが「ファンが回りすぎて辛い」って奴です。
ProLiantはハード監視機構がはじめから取り付けられていて、これをIntegrated Lights-Out(通称iLO)と呼ぶのですが、これが全体の温度状況を把握しながら冷却ファンの回転数を制御しています。

ProLiantは温度情報が拾えないパーツがあるとファンをぶん回す

私が遭遇したのはこのファン制御がうまくいかずに「ファン回転数が通常状態より高くなり、稼働ノイズがデカい」というものです。そもそもこうしたサーバは自宅やオフィスのデスクサイドに設置されることを余り想定していませんで、駆動音がPCに比べると格段にうるさいのが特徴でもあります。特にラックマウントサーバは外気に触れる面積が狭いため、前面から給気し、背面から排気するわけですが、より多くの空気を通すためにファンが高回転しやすいのですよね。

そこで、エネルギー効率を上げるために温度が低いときは回転数を下げ、逆の場合は回転数を上げる訳なんですが、その制御がシビアなんです。
システムボードのエリア、前面側、背面側PCIスロット近辺、そこに接続されているボード、CPU、メモリ、その周辺全部の温度を監視しています。さて、その温度が拾えないパーツが存在した場合どうなるかというと・・・・それでサーバ内の温度が上昇するとトラブルに直結するので、何とか稼働維持させようという方針の下でサーバ回転数をある下限値より高い回転数でファンを回すように動きます。

これのもっと酷いものがHPE BladeSystemという奴で、ブレードシャーシの全体を管理するOnboard Administratorに障害が発生してダウンしようものなら、ブレードサーバの健全性を維持するためにシャーシのファンは全て100%で回転します。なかなかこのノイズが強烈で、多分自宅だと「動かしちゃいけない」レベルの騒音が発生します。

自宅でサーバの探偵稼働をさせるには

以下のような対応が必要になるかなぁと思います。

  • サーバに適合したパーツを取り付けよう
    同一メーカーのパーツを取り付けるのは大前提になりますが、その中でもちゃんと該当機種の構成ガイドに存在するパーツを取り付けることを勧めます。ちょうど本日NC552SFP+という10GbEのNICをDL380e Gen8に取り付けました。実はそれまではNC522SFP+というNICを取り付けていたのですが、どうやらDL380e gen8に適合してるものではなく、その前のGen7あたりで適合するパーツだったようです。
    温度情報が取得できないことから、ファン回転数が本来のアイドル状態より30%増しとなってしまい、稼働継続が困難な状況でした。ちゃんと適合されているパーツを取り付けることで、温度情報が取得できるようになり、結果として今は稼働継続可能な状態に持って行けたんだろうなと思います。
    もちろん、柔軟性の高いハードウェアも存在します。この辺りは経験則が全てになるんだろうなとは思いますが、そのことを踏まえて機種選定をするのも重要なのかなと思っています。正直、ProLiantはGen8あたりから非常に癖のあるハードになったなぁと思っています。でもそれは、あくまでサーバとして、それを運用する正規利用者にスコープを当てた施策になるため、中古品を買う側にはぐうの音も出ないよね・・と言うのが実情かなぁと思います。
  • ファームウェア情報とHCLの情報把握は重要だと思う
    割と、ファームウェアに対する機能バグ発生率はそれなりにあります。そのため、結構バージョン更新は頻繁に行われます。
    サーバには安定動作を図るための機能がいくつか存在しており、その機能がよりによって誤作動するというバグを内包しているケースもあったりします。
    他にも、パーツ故障の事前検知を可能にする仕組みが過剰に反応し、交換したばかりのパーツがすぐFAULTになるケースなんかもあったりします。
    そうした情報が探索できるかどうか、またVMwareなんかを動かしたい場合は、そのドライバが提供されているかどうか、ハードウェア互換性リストの確認は必須と考えた方が良いです。

他にも諸々注意ポイントはあると思うのですが、特に稼働ノイズの問題は下手すると近所迷惑からの人間関係トラブルに発展するケースもありますので、是非是非ご注意いただければと思います。