orangeitems’s diary

クラウドで働くインフラエンジニアの日々の感想です(ほぼ毎日更新)。

時限爆弾系障害起因の危ういお話

f:id:orangeitems:20191204125210j:plain

 

32768時間後に爆発する時限装置

一読して戦慄した記事。

 

pc.watch.impress.co.jp

Hewlett Packard Enterprise(HPE)が11月29日に公開したサポート文書によれば、同社のサーバーやストレージ製品に使われている特定のSAS SSDにおいて、稼働時間が32,768時間を超えると、復旧が不可になる深刻な不具合が発生するとした。

 

運用エンジニアの頭を悩ますのは、こういう時限爆弾型の障害起因なのでまとめておきます。

 

考察

ストレージって、RAID構成だから仮に破損しても大丈夫だと思っていますよね、普通の感覚ならば。

ところがこのケース。新しくサーバーを購入し複数のSSDでRAIDが構成されているとします。新しく買った機械が届きました。電源を投入します。そうすると全部のディスクが稼働時間が等しくなってしまうのです。

5本構成だとすると5本とも0時間から始まって・・32,768時間。この時間は年数に換算すると、3.74年に相当します。来年1月から構築しはじめたとすると8月半ばぐらい。ちょうどお盆の時期です。ドカンと破裂します。

で、RAID組んでるよねと。いやRAID組んでるんですが全部のディスクが復旧できない。それではRAIDでも救えないです。結局のところストレージ領域ごと全損となります。

今日、このニュースを聴いて百発百中でこのディスクを使っている運用エンジニアが気づいて対応してくれることを祈ります。そうしないと、大事故が起こります。

もっと厳しいことを言いますと、正構成のストレージがあるとして、副構成にバックアップ領域となるストレージを構築したとします。正副両方ともキッティングし電源を同時に起動したとすると、バックアップ領域もほぼ同時に全損することとなります。ストレージをわざわざ別ベンダーから購入するシステム構築はほとんどないので、食らうときにいっぺんに食らってしまうのです。

そうすると、仮に正領域が壊れた。じゃあバックアップがあるよね。しかし、バックアップも同じ事象が発生。全部ダメ・・。これが最悪のパターンではないかと考えます。

 

こういった時限爆弾的な障害で、最も記憶に残っているのは497日問題です。

 

blogs.technet.microsoft.com

今回はシステムの連続稼動日数が 497 日を超えた場合に生じる問題 (サポート技術情報 2553549) について取り上げます。
この問題は、閉じた環境などで、システムの定期的な再起動を実施していない環境で条件 (497 日連続稼働) を満たした場合に TCP/IP ネットワーク通信ができなくなってしまう問題です。

 

対象がWindowsだったので記憶にある方も多いかもしれませんね。497日なんて、だいたいはサービスインしてしばらく経ち、安定運用した矢先だと思います。

ある日急にWindowsが通信できなくなり右往左往。このころに比べると今のWindows Serverはすこぶる安定したなという印象です。こんな品質では今のAzureのポジションも無かったかな、と。昔は定期的な再起動は必須だったのですが今は連続運用に耐えられるようになりました。

ちなみに497日問題といえば、Fortigateという通信機器のメーカーで、冗長構成に問題があって497日経つと正副が切り替わってしまうなんてこともありました。

 

あとは、248日問題なんて言うのもあった。

 

www.huffingtonpost.jp

米国の連邦航空局がボーイングに対して、旅客機 Boeing 787 " Dreamliner " の電源系を少なくとも248日ごとに再起動することを求める耐空性改善指令を出しました。
理由はボーイング787の電源系を制御するソフトウェアに不具合があり、248日を超えて稼働し続けると動作を停止してしまい、機体の制御が不可能になる危険性があることから。

 

この時限爆弾系の話と言うのは、運用エンジニアにとって悪夢のような話です。リリース時のテストでは正常なのです。しかしある日急に訪れる悲劇。ですから、運用保守を行う上でベンダーから出るレターというのは命綱のようなものだということを理解する必要があります。

 

対処策はあるか

対処策はあるかと問われると「ない」としか言えないのですが、工夫をすることはできます。正と副がある場合は、起動のタイミングをできるだけずらすことです。

正構成のシステムを今月起動した場合、副構成は来月電源を入れること。

リリース時には正構成の機器は再起動する。副構成は一か月など時間をおいて再起動する。

なにしろ正と副で、状態を変えることで、同時障害を免れることがあります。

まぁでも、効果があるかというと運しだいというところもあります。今回のHPEのSSDだと同時に使いだしますし、RAIDを組むと基本は破損しない限りディスクの抜き差しはしませんから、避けようがないですね。

やはり、保守情報をしっかり見逃さないようにするしかありません。

一方、保守情報がきちんとベンダーが流さず、現象が発生するまで誰も気づけないなんて悲劇も起こりえます。

ですから、誠実なベンダーとちゃんと付き合えるかは、営業提案の段階で考える必要があります。安さや宣伝文句だけではなく、保守品質が大変重要です。

そんなことを思った今回のニュースでした。