お客様からサーバ構成について相談をいただきましたので当ブログにて一部回答したいと思います。
筆者の大手IT企業でのシステム構築経験をベースに、コスト・要員とも潤沢に割り当てられない中小企業様向けに費用とツボを押さえた社内システムのサーバ構成を考えてみました。
〇RAID構成内のHDDが壊れたら何はともあれバックアップ
昔(私が仕事を始めた20ウン年前)は
・速度と容量的にRAID0(ストライピング)せざるを得ない
・RAID0だとHDDが増えるほど故障が怖いのでRAID1でフォロー
・お金がなければRAID5
…と選択せざるを得ませんでした。
リビルド中に壊れたことも何度かあります。
こうなると別のバックアップテープ等から戻すほかありません。
経験上、RAID構成ディスクが1本壊れたときは、もし別媒体にバックアップを持ってなければ、即バックアップを別媒体に取って停止させるのが良いと思います。
リビルドのチャレンジはその後で。
メーカ保守サポートに連絡するとエンジニアが来るか交換用HDDを送ってきて壊れたHDDを新しいHDDに入れ替えRAIDを再構築することになります。
因みにどこの会社でも(多分)データ消失は保証してくれません。
基本的に同じ環境、同じ運転時間になるRAID構成HDDは同じようなタイミングで壊れ始めることがあります。
“業務影響を考えるとシステムを止められない!”なんて言う方もいらっしゃるかもしれませんが、本来そんなに重要なシステムならば予備機があるはずなので(もしくは本番機複数台構成のはずなので)予備機に切り替えればよいのです。
認識していないかもしれませんが予備機を用意していない時点で相当時間のシステム停止リスクを受容しているのと同じことなのです。
もしお付き合いしているIT業者様が予備機の重要性やシステム停止のリスクを説明せず「RAIDなので大丈夫ですっ!キリッ」なんてセリフ言ってましたらご相談ください。
〇システムの耐用年数と冗長化の考え方
大企業でしっかりメンテナンスされているシステムはメーカの保守サポート期限(実質、買ってから5年くらいと思ってください)が到達する前に次のシステムに乗り換えます。
ざっくり「5年で入れ替える」と考えて予算を組み、バックアップをしっかりとっていれば甚大な業務影響は回避できる可能性が高いと思います。
RAIDはシステム稼働継続のためのHDD冗長化技術の一つであってバックアップとは違います。
回転体があるHDDは壊れやすい機器の一つであり、またシステム稼働継続に必要な機器なので壊れて即システム停止にならないよう冗長化しよう、という技術です。
あくまで私の経験ですがSIerで基盤構築を担当していた時代の最後5年くらいで新規導入したシステム(総HDD数はシステムによって違いますが30本/システムくらいが多かった。)において、初期不良を除くと導入後5年間でHDDが壊れるのは1システムあたり1回か2回くらいだったと記憶しています。
(サービス提供に必要な領域はRAIDを組んでいたのでHDD単体故障ならシステム稼働は継続できます。)
オンラインゲームシステムのような1日中高負荷フル稼働とは違いますが基本的に24時間サービス提供しっぱなし(厳密にいうと1日あたり数分間はサービス停止していました。)のシステムばかりでした。
5年で入れ替える、サーバ用途の機器を選定している、という条件ではありますが、システム全体で考えるとHDDの本数は多いので確かに故障は多いのですが1本あたりで考えると飛びぬけて多いわけでもない、というのが最近の感触です。
メモリ、ネットワークカード(オンボードだとマザーボードを交換)、電源ボックスなど、まあそれなりに壊れます。
HDDだけケアしても足りないですね。
違う見方をすると”1日くらい止まっても構わない”というシステムの場合、構成をそれなりに考えて日々のバックアップをきちんと取っていればRAIDの必要度は下がります。
もちろんHDDが故障した際は”RAID組んでて助かった~”となるのですが実際のビジネス環境とコストを考えたときにホントのホントにRAIDが必要なシステムなのか、適切なRAIDが選択されているのかってあまり考えられていないと思います。
もう一つ、RAID(だけでなく冗長化)の良くない点はちゃんと定期的に点検していないと一部壊れていることに気づかず、正常(まだ冗長性がある)と思い込んで使い続けてしまい、ユーザ目線でサービス停止した時は2重障害状態でどうにもならない、という事態を引き起こしやすい、というところです。
〇さて、じゃあどうすればいいのか。
企業の規模や体力によっては手厚い人員や費用を当てることができず、システムは動く限りそのまま使われてしまうこともあると思います。
資金・体力的に制限がある中小企業ではどの手がベターか考えてみました。
適正コストで、故障に気づき、リカバリーも容易と考えると現時点では業務に合うクラウドサービスがあればそれを利用することを検討すべきでしょう。
ユーザ企業のシステム担当者様は運用や保守に手を煩わされることはなくメンテナンスは専門のクラウドサービス事業者がやってくれます。
クラウドサービスに接続する経路のケアだけしておけばOK
具体的にはノートPCを複数台もち、インターネットに接続できる固定回線とモバイル回線があればクラウドサービスの計画停止でもない限り、半日以上全く使えないないってことはそうそうないと思います。
残念ながら丁度よいクラウドサービスがない場合、もしくは自社ルール等、致し方ない事情で自社内でシステムを持たざるを得ない場合のサーバ構成を考えてみました。
なお”10分でも止まると深刻に困る”というシステムならSIerに相談したほうが得策です。
構築できたとしても高いレベルで運用を続けるのが厳しいです。
障害発生時には1営業日程度の停止とデータの戻りを許容した場合のサーバ構成の例です。(実質、中小企業の多くの社内システムは当てはまると思います。)
・本番機と予備機を用意する。
・本番機/予備機の内蔵HDD構成
HDD1:OSや業務ソフトを格納する
HDD2:業務データを格納する
HDD3:バックアップ(第1)を格納する・本番機に外付HDDを接続しバックアップ(第2)を格納する
外観監視、ログ監視などを定期的に行う前提でHDD1,HDD2をRAID1にすると更に良いと思います。HDD3も余裕があれば。
今は大容量HDDが廉価で手に入りますのでRAID0,10,RAID5,6等を選択する必要性があるシーンはあまり思いつきませんでした。
エントリーレベルのサーバ機で十分組める構成です。
費用もべらぼうにはならないでしょう。スペックを抑えればハードウエアだけなら恐らく数十万円~/台かと。
さて、この特に珍しくない構成ですが運用をしっかり行うことでなかなかの高可用性システムになります。
残念ながら運用まで考えた提案をしてくれるIT業者様は極めて少ないのが現状です。
メーカの売り文句だけを覚えハードウエアと出来合いのプロダクトを売ることが目的になっているIT業者様が蔓延しています。
ご紹介した構成での運用設計例を知りたい方はご連絡ください。