SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

「当たらなければ どうと言うことはない」 先制攻撃7日間 - インフラエンジニアのトラブル防御策

「当たらなければ どうと言うことはない」 先制攻撃7日間 - インフラエンジニアのトラブル防御策(前編)

「機器のランプ」「ディスクのミラーリング」「日々のバックアップ」の確認

着任二日目:ディスクのミラーリング確認

 一日目で、すでに発生しているハードウェア障害、また近々に発生する可能性の高いハードウェア障害の有無について確認することができた。

 二日目は、ランプや目視では分からないディスクの状態について確認する。

 サーバー製品は、通常、ミラーリングやRAID5など、何らかのディスク冗長化がなされた状態で出荷される。しかし、トラブルプロジェクトの場合、諸要因により、ディスク冗長化が実施されていない場合が見受けられる。

ディスク冗長化が実施されていない諸要因
  • 容量逼迫したが、ディスクを追加購入する予算がないため、冗長構成を解除し、RAID0で再構成した
  • ハードウェアの障害監視がなされていないので、ディスクが壊れたことに気がつかなかった
  • ディスクが壊れたことには気がついたが、ディスク交換の際に適切な再構成がなされず、冗長構成を復旧できなかった
  • 容量拡張の際、論理区画のアサインが必要な全てのディスクになされなかった

 これについては、ランプを見ただけでは分からないことが多い。

 Windows系のシステムの場合は、最近はダイナミックディスクでソフトウェアRAIDを構成するよりも、サーバーのRAIDカードや、マザーボードのRAID機能で冗長構成することが一般的であるため、RAIDコンソールで冗長構成の状態を確認すればよい。

 UNIX系のシステムの場合、各論理区画単位でディスクをアサインするため、システムの各区画が適切に冗長構成されているか、また各論理区画の状態が正常であるかを確認する必要がある。

 下記に、具体的な確認方法の例を記載する。

一般的なLinuxの場合(正常例)
$ cat /proc/mdstat 
Personalities : [raid1] 
read_ahead 1024 sectors
md1 : active raid1 hda3[0] hdc3[1]
      522048 blocks [2/2] [UU]
      
md0 : active raid1 hda2[0] hdc2[1]
      4192896 blocks [2/2] [UU]
      
unused devices: <none>
$
一般的なLinuxの場合(異常例/注2
$ cat /proc/mdstat 
Personalities : [raid1] 
read_ahead 1024 sectors
md1 : active raid1 hda3[0]
      522048 blocks [2/1] [U_]
      
md0 : active raid1 hda2[0] hdc2[1]
      4192896 blocks [2/2] [UU]
      
unused devices: <none>
$
AIX(IBMの提供しているUnix)の場合(正常例)
$ lsvg rootvg
VOLUME GROUP:       rootvg                   VG IDENTIFIER:  00c50a5500004c00000001269dc161a4
VG STATE:           active                   PP SIZE:        64 megabyte(s)
VG PERMISSION:      read/write               TOTAL PPs:      1918 (122752 megabytes)
MAX LVs:            256                      FREE PPs:       566 (36224 megabytes)
LVs:                23                       USED PPs:       1352 (86528 megabytes)
OPEN LVs:           22                       QUORUM:         1 (Disabled)
TOTAL PVs:          2                        VG DESCRIPTORS: 3
STALE PVs:          0                        STALE PPs:      0
ACTIVE PVs:         2                        AUTO ON:        yes
MAX PPs per VG:     32512
MAX PPs per PV:     1016                     MAX PVs:        32
LTG size (Dynamic): 256 kilobyte(s)          AUTO SYNC:      no
HOT SPARE:          no                       BB POLICY:      relocatable
AIX(IBMの提供しているUnix)の場合(異常例/注3
$ lsvg rootvg
VOLUME GROUP:       rootvg                   VG IDENTIFIER:  00c50a5500004c00000001269dc161a4
VG STATE:           active                   PP SIZE:        64 megabyte(s)
VG PERMISSION:      read/write               TOTAL PPs:      1918 (122752 megabytes)
MAX LVs:            256                      FREE PPs:       566 (36224 megabytes)
LVs:                23                       USED PPs:       1352 (86528 megabytes)
OPEN LVs:           22                       QUORUM:         1 (Disabled)
TOTAL PVs:          2                        VG DESCRIPTORS: 3
STALE PVs:          1                        STALE PPs:      22
ACTIVE PVs:         2                        AUTO ON:        yes
MAX PPs per VG:     32512
MAX PPs per PV:     1016                     MAX PVs:        32
LTG size (Dynamic): 256 kilobyte(s)          AUTO SYNC:      no
HOT SPARE:          no                       BB POLICY:      relocatable
注2:Linuxの場合の異常箇所

 上記の例では、"active raid1 hda3[0]"の後に出てきていた" hdc3[1]"の文字列がなくなり、かつ "blocks"の後の表示が、[2/1] [U_] となっているのが分かる。すなわち、RAIDを構成しているディスクが1個欠落(この場合はhdc3)していることを表している。

注3:AIXの場合の異常箇所

 上記の例では、STALE PPs: が1以上の数値になっている。これはすなわち、ハードウェア障害により、OSから認識できなくなった論理区画が存在することを示している。

 また、ディスクによっては自動修復機能(BBR)を持っているものがあるが、これがOSの自動修復設定と重複した場合、論理障害を引き起こすことがある。

 最近のディスクでは、BBRとOSの自動修復機能が重複した場合でも、論理障害が発生しないようになっているものも存在するが、ディスクとOSの組み合わせによって最適な設定が変わってくるため、機器のサポート元への確認が必要である。もし、そのシステムでの最適な設定がすでに分かっている場合は、それが実機のすべてのディスクや論理区画において設定されているかを調べるのは、すぐに実施可能な内容であり、かつ有益な作業である。後付けで作成された論理区画のみ設定が漏れている、などということも、しばしば見受けられる設定不備の一つだからである。

次のページ
着任三日目:日々のバックアップの確認

この記事は参考になりましたか?

「当たらなければ どうと言うことはない」 先制攻撃7日間 - インフラエンジニアのトラブル防御策連載記事一覧
この記事の著者

浜口 悟(ハマグチ サトル)

90年代前半のUnixサーバ管理業務を皮切りに、主に金融機関のネットワーク/サーバ構築・CGI/サーブレット開発・インフラ構築を担当。現在は企業のBCP策定支援を行う傍ら、運用ミスや基盤品質低下による障害発生を未然に防止するための草の根活動を行っている。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/6389 2012/03/01 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー