Contenu connexe
Similaire à Solaris ディープダイブセミナー #4: A-3 障害管理アーキテクチャー Solaris Fault Manager
Similaire à Solaris ディープダイブセミナー #4: A-3 障害管理アーキテクチャー Solaris Fault Manager (19)
Solaris ディープダイブセミナー #4: A-3 障害管理アーキテクチャー Solaris Fault Manager
- 3. 以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。
また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことは
できません。以下の事項は、マテリアルやコード、機能を提供することをコミットメン
ト(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さ
い。オラクル製品に関して記載されている機能の開発、リリースおよび時期につい
ては、弊社の裁量により決定されます。
OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。
文中の社名、商品名等は各社の商標または登録商標である場合があります。
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
3
- 4. Program Agenda
Predictive Self-Healing
Solaris Fault Manager
Solaris 11 における Fault Management 新機能
参考情報
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
4
- 5. Predictive Self-Healing
Predictive Self-Healing - 予測的セルフヒーリング機能
ハードウェアやソフトウェア障害に対する可用性を大幅に向上させる
シンプルかつ効果的なインターフェースでシステム管理者の負担を軽減
自動的に障害や欠陥を診断するソフトウェアコンポーネントの提供
– 従来のエラーメッセージだけでは判別が困難であった
– 自動診断の結果により、セルフヒーリングを発動
管理者などへの通知
障害のあるコンポーネントの分離または非アクティブ化
ガイド付きの修復
Solaris 10 から提供される機能
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
5
- 7. Fault Management Architecture
Solaris 9 までの障害イベント処理
エラーが発生すると、それぞれのコンポーネントで・・・ Applications
– 個々にデータを集め… (専門知識が必要)
– 個々にエラーへの対処を実施し…(メッセージの未統一)
ufs
– 個々の syslog メッセージを確認…(メッセージからの推測)
人類に与えられた解読という使命・・・・ md
WARNING:/io-unit@fe0200000/sbi@0,0/dma@0,81000/esp@0,8000000
(esp0):Connected ....
sd
NOTICE:correctable error detected by pci0 (upa mid 1f) during DVMA pci
readtransaction....
[AFT0]:errID 0x0000004d.23105c04 ECC Data Bit 14 was in error and corrected
CPU
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
7
- 8. Welcome to FMA!
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
8
- 9. Fault Management Architecture
FMA の開発について: Mike Shapiro
1999
社運をも左右しかねない大問題発生!
August 10, 2001:
障害管理の新しいアプローチを探る
ディスカッションをSun 社内にて開始
January 15, 2002:
Solaris 障害管理アーキテクチャに
関する最初の社内資料を作成
March 18, 2004:
Solaris 10 Build 56 に FMA を実装。
March 7, 2005:
FMA を搭載した初めての OS となる、Solaris 10 をリリース
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
9
- 10. Fault Management Architecture
Solaris 10 以降の障害イベント処理
agent 管理者
自動診断エンジンによる障害の報告
fault manager
– “エラーを生成”することが問題を抱えていた
– エラーではなくイベントを生成
smf
– イベントの解析は、Fault Manager に
委ねられる
Event “X”
zfs
– 自動で対処可能なものは自動化する
sd error
– 全てのイベントは統一された管理インター
フェースにて通知される pci error
Event “Y”
– 影響範囲、対処方法などのナレッジも
提供 CPU error Event “Z”
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
10
- 11. Fault Management Architecture
FMA における障害管理制御フロー
Error Error Fault Repair and
Detection Handling Handling Restoration
コンポーネントの
エラー検出 診断エンジン
分離
ログ出力,
データ収集 イベントの記録
通知動作
修復コマンド
エラー対処
の実行
エラーイベントの発 ereport イベント生 障害イベントの生
アクションの実行
生 成 成
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
11
- 12. Fault Management Architecture
Solaris Fault Manager
エラー検出機構(Error Detector)
– エラー遠隔測定法に沿ってエラーを検出する機構
デバイスドライバなどに実装される
診断エンジン(Diagnosis Engines)
– 診断を生成または障害を予測
応答エージェント(Response Agents)
– 診断または修復に応答してアクションを実行するソフトウェアコンポーネント
Fault Manager (fmd daemon または fmd)
– エラー検出機構, 診断エンジン、エージェントが接続するFMD(fault manager
daemon)であり、測定イベントを適切な診断エンジンにディスパッチする
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
12
- 13. Fault Management Architecture
Solaris FMA 動作の流れ
エラーハンドラーから生成された情報が診断エンジンへ送られる
容疑者リストを作成し、アクションを起こすよう agent へ通知
同様にイベントとしてエラーや障害リポートをシステムに通知
– このロジックは、Eversholt fault tree (EFT) をベースにしている
EFT は、Eversholt と呼ばれる言語にて診断ルールが記述された
ソースファイル(.esc)を、Eversholt コンパイラを通すことで生成される
バイナリファイル。診断エンジンは EFT として提供される
診断結果をもとに、FRU (Filed Replacement Unit), ASRU (Automated
System Reconfiguration Unit)などに対応するアクションを実施
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
13
- 14. Fault Management Architecture
FMA Event Naming Schemes
FMRI (Fault Management Resource Identifier)
– URL に似た表記で各コンポーネントを現す
– fmri-scheme://[authority]/path
fmri-scheme
hc://:product-id=ORCL,SPARC-T4-4:server-id=ssc0104-app1/chassis=0
– リソースリポジトリ hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-
id=ssc0104-app1:chassis-id=1145BDYC2C/chassis=0/motherboard=0
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-
authority id=ssc0104-app1:chassis-id=1145BDYC2C/chassis=0/sp=0
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-
id=ssc0104-app1:chassis-id=1145BDYC2C/chassis=0/cpuboard=0
– リソースの識別子
path
– リソースの実態へのパス
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
14
- 15. Fault Management Architecture
/usr/lib/fm/fmd/fmtopo
ソフトウェアまたはハードウェアシステムを表現したトポロジ(topology
snapshot)を用意する必要がある
– Fault Manager にて障害が発生した可能性のある箇所を識別するため
トポロジは、自動生成される
– # /usr/lib/fm/fmd/fmtopo (default: ハードウェアコンポーネントを表示)
– # /usr/lib/fm/fmd/fmtopo –s svc –P all (SMF サービスを表示)
トポロジの情報を診断エンジンに提供し、障害イベント発生箇所を出力
FRU, ASRU コンポーネントかも確認可能
– ASRU (Automated System Reconfiguration Unit) は、障害発生時にソフト
ウェアまたはハードウェアから無効にできるコンポーネント
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
15
- 16. Fault Management Architecture
/usr/lib/fm/fmd/fmtopo
# /usr/lib/fm/fmd/fmtopo -s hc -b
TIME UUID
Aug 20 08:34:33 142c540c-f46b-4437-a029-9ff8488ac333
hc://:product-id=ORCL,SPARC-T4-4:server-id=ssc0104-app1/chassis=0
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-id=1145BDYC2C/chassis=0/motherboard=0
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-id=1145BDYC2C/chassis=0/sp=0
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-id=1145BDYC2C/chassis=0/cpuboard=0
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-id=1145BDYC2C/chassis=0/cpuboard=1
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-id=1145BDYC2C/chassis=0/ioboard=0
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-
id=1145BDYC2C/chassis=0/ioboard=0/ioboard=0
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-
id=1145BDYC2C:serial=00AD01115039C7C323/chassis=0/cpuboard=1/dimm=32
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-
id=1145BDYC2C:serial=00AD0111503947C315/chassis=0/cpuboard=1/dimm=33
:
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-
id=1145BDYC2C/chassis=0/cpuboard=0/chip=0/core=4/strand=39
:
:
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-
id=1145BDYC2C/chassis=0/motherboard=0/hostbridge=0/pciexrc=0/pciexbus=1/pciexdev=0/pciexfn=0/pciexbus=2/pciexdev=0/pciexf
n=0/pciexbus=3/pciexdev=0/pciexfn=0/iport=0/scsi-device=0
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
16
- 17. Fault Management Architecture
/usr/lib/fm/fmd/fmtopo
ASRU の確認(Automated System Reconfiguration Unit)
# /usr/lib/fm/fmd/fmtopo –p
TIME UUID
Aug 21 11:35:10 e10ccacb-861f-c55c-faac-d528f8cd3098
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-id=1145BDYC2C/chassis=0/motherboard=0
ASRU: -
FRU: hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-
id=1145BDYC2C:serial=465769T+1144H700KV:part=7013691:revision=03/chassis=0/motherboard=0
Label: /SYS/MB
:
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:ch
assis-id=1145BDYC2C/chassis=0/cpuboard=0/chip=0/core=0/strand=0
ASRU: cpu:///cpuid=0/serial=2a015ad4c0282935a4
FRU: hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-
id=1145BDYC2C:serial=465769T+1149L90139:part=7019789:revision=05/chassis=0/cpuboard=0
Label: /SYS/PM0
:
hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-id=1145BDYC2C:serial=001204PGMSAB-----
---PVGGMSAB:devid=id1,sd@n5000cca0251a9d60:part=HITACHI-
H106060SDSUN600G:revision=A2B0/chassis=0/motherboard=0/hba=0/bay=0/disk=0
ASRU: dev:///:devid=id1,sd@n5000cca0251a9d60//scsi_vhci/disk@g5000cca0251a9d60
FRU: hc://:product-id=ORCL,SPARC-T4-4:product-sn=1145BDYC2C:server-id=ssc0104-app1:chassis-
id=1145BDYC2C:serial=001204PGMSAB--------PVGGMSAB:devid=id1,sd@n5000cca0251a9d60:part=HITACHI-
H106060SDSUN600G:revision=A2B0/chassis=0/motherboard=0/hba=0/bay=0/disk=0
Label: /SYS/MB/HDD0
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
17
- 18. Fault Management Architecture
/usr/lib/fm/fmd/fmtopo
fmtopo で参照可能なトポロジ
– 現在は、赤字のみ
/usr/include/sys/protocol.h
--
188 /* scheme name values */
189 #define FM_FMRI_SCHEME_FMD "fmd"
190 #define FM_FMRI_SCHEME_DEV "dev"
191 #define FM_FMRI_SCHEME_HC "hc"
192 #define FM_FMRI_SCHEME_SVC "svc"
193 #define FM_FMRI_SCHEME_CPU "cpu"
194 #define FM_FMRI_SCHEME_MEM "mem"
195 #define FM_FMRI_SCHEME_MOD "mod"
196 #define FM_FMRI_SCHEME_PKG "pkg"
197 #define FM_FMRI_SCHEME_LEGACY "legacy-hc"
198 #define FM_FMRI_SCHEME_ZFS "zfs"
199 #define FM_FMRI_SCHEME_SW "sw"
--
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
18
- 19. Fault Management Architecture
/usr/lib/fm/fmd/fmd
Solaris Fault Manager のサービスを提供するデーモン
– svc:/system/fmd:default
バックグラウンドで動作
– システムソフトウェアが検出した問題に関する遠隔測定情報の受け取り
– 診断エンジン、エージェントへとの情報交換
問題を診断
障害のあるコンポーネ ン トの無効化
予測的自己修復操作を担う重要なサービス
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
19
- 20. Fault Management Architecture
fmadm ユーティリティ
Fault Manager の情報を管理するためのユーティリティ
– 診断エンジン、エージェントの表示 (# fmadm config)
– 障害の概要を出力 (# fmadm faulty)
– 蓄積された障害を管理 (修復手順として指示された場合いにのみ使用)
障害報告解除の通知 (# fmadm acquit)
修復手順実行の通知 (# fmadm repaired)
FRU などの交換通知 (# fmadm replaced)
通常の運用においては、障害を確認するための faulty サブコマンドを利用
– Fault Manager が多くの操作にたいし自動化を試みている
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
20
- 21. Fault Management Architecture
# fmadm faulty 実行例
# fmadm faulty
--------------- ------------------------------------ -------------- ---------
TIME EVENT-ID MSG-ID SEVERITY
--------------- ------------------------------------ -------------- ---------
Aug 13 11:48:33 21a8b59e-89ff-692a-c4bc-f4c5cccca8c8 SUN4V-8002-6E Major
Host : s4v-t5140a-bur02
Platform : sun4v
Chassis_id : BDL1024FDA
Product_sn : BDL1024FDA
Fault class : fault.cpu.generic-sparc.strand
Affects : cpu:///cpuid=21/serial=000000000000000000000
faulted and taken out of service
FRU : "/SYS/MB" (hc://:product-id=sun4v:product-sn=BDL1024FDA:server id=s4v-t5160a-bur02:chassis-
id=BDL1024FDA:serial=1005LCB-1019B100A2:part=511127809:revision=05/chassis=0/motherboard=0)
faulty
Description : The number of correctable errors associated with this strand has
exceeded acceptable levels.
Refer to http://sun.com/msg/SUN4V-8002-6E for more information.
Response : The fault manager will attempt to remove the affected strand
from service.
Impact : System performance may be affected.
Action : Schedule a repair procedure to replace the affected resource,
the identity of which can be determined using fmdadm faulty.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
21
- 22. Fault Management Architecture
# fmadm faulty 実行例 (続き)
cpuid=21 (strand) は、ASRU となるため障害発生箇所を無効とすることで
継続動作
– インパクトは、パフォーマンス影響のみ
管理者へ提示されるアクションは、障害を持つコンポーネントのリプレースを
スケジュールするのみ (FRU コンポーネントの交換)
# fmadm faulty
:
Description : The number of correctable errors associated with this strand has
exceeded acceptable levels.
Refer to http://sun.com/msg/SUN4V-8002-6E for more information.
Response : The fault manager will attempt to remove the affected strand
from service.
Impact : System performance may be affected.
Action : Schedule a repair procedure to replace the affected resource,
the identity of which can be determined using fmdadm faulty.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
22
- 23. Fault Management Architecture
fmadm
FMA を構成するモジュール一覧の表示
– これらのモジュールが、自動診断、自己修復、メッセージの配信などを提供
# fmadm config
MODULE VERSION STATUS DESCRIPTION
cpumem-retire 1.1 active CPU/Memory Retire Agent
disk-transport 2.0 active Disk Transport Agent
eft 1.16 active eft diagnosis engine
etm 1.2 active FMA Event Transport Module
ext-event-transport 0.2 active External FM event transport
fabric-xlate 1.0 active Fabric Ereport Translater
fmd-self-diagnosis 1.0 active Fault Manager Self-Diagnosis
fru-monitor 1.0 active FRU Monitor
generic-mem 1.0 active SPARC-Generic-Memory Diagnosis
io-retire 2.0 active I/O Retire Agent
ses-log-transport 1.0 active SES Log Transport Agent
software-diagnosis 0.1 active Software Diagnosis engine
software-response 0.1 active Software Response Agent
sp-monitor 1.0 active Service Processor Monitor
sysevent-transport 1.0 active SysEvent Transport Agent
syslog-msgs 1.1 active Syslog Messaging Agent
zfs-diagnosis 1.0 active ZFS Diagnosis Engine
zfs-retire 1.0 active ZFS Retire Agent
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
23
- 24. fmdump
fmdump
– fmd が生成するログ情報の詳細を出力
error log file
fault log file
resource cache log file
– 各種ログファイルは、/var/fm/fmd に格納
ログファイルを直接参照することも可能
– 他システムのログを参照するなどの用途にも利用可能
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
24
- 25. fmdump
エラーログを出力
# fmdump
– # fmdump TIME UUID SUNW-MSG-ID EVENT
8月 19 17:44:56.8725 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 SMF-8000-YX Diagnosed
8月 19 17:46:23.2414 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 FMD-8000-4M Repaired
– # fmdump -e 8月 19 17:46:23.2439 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 FMD-8000-6U Resolved
障害ログを出力
– # fmfump (-v または、-V で詳細表示)
– # fmdump -v -u UUID
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
25
- 26. Fault Management Architecture
# fmdump 実行例
# fmdump -v -u ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7
TIME UUID SUNW-MSG-ID EVENT
8月 19 17:44:56.8725 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 SMF-8000-YX Diagnosed
100% defect.sunos.smf.svc.maintenance
Problem in: svc:///system/ocm:default
Affects: svc:///system/ocm:default
FRU: -
Location: -
8月 19 17:46:23.2414 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 FMD-8000-4M Repaired
100% defect.sunos.smf.svc.maintenance Repair Attempted
Problem in: svc:///system/ocm:default
Affects: svc:///system/ocm:default
FRU: -
Location: -
8月 19 17:46:23.2439 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 FMD-8000-6U Resolved
100% defect.sunos.smf.svc.maintenance Repair Attempted
Problem in: svc:///system/ocm:default
Affects: svc:///system/ocm:default
FRU: - # fmdump
Location: - TIME UUID SUNW-MSG-ID EVENT
8月 19 17:44:56.8725 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 SMF-8000-YX Diagnosed
8月 19 17:46:23.2414 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 FMD-8000-4M Repaired
8月 19 17:46:23.2439 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 FMD-8000-6U Resolved
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
26
- 27. Fault Management Architecture
fmstat
障害管理に現在関与しているモジュールの統計情報を表示
– 診断エンジン
– エージェント
– 対象モジュールは、# fmadm config で出力されるリストで active になっている
もの
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
27
- 28. Fault Management Architecture
fmstat
# fmstat
module ev_recv ev_acpt wait svc_t %w %b open solve memsz bufsz
cpumem-retire 0 0 0.0 190.9 0 0 0 0 12b 0
disk-transport 0 0 0.5 3349486.4 49 0 0 0 40b 0
eft 37 47 0.0 218.6 0 0 1 1 1.4M 807b
etm 1 0 0.0 0.1 0 0 0 0 8.6K 144b
ext-event-transport 4 0 0.0 11.5 0 0 0 0 2.1K 2.0K
fabric-xlate 0 0 0.0 0.1 0 0 0 0 0 0
fmd-self-diagnosis 308 0 0.0 34.3 0 0 0 0 0 0
fru-monitor 2 0 0.0 0.8 0 0 0 0 20K 0 ev_recv: 受け取ったイベント数
generic-mem 0 0 0.0 190.9 0 0 0 0 0 0 ev_acpt: 扱うと判断したイベント数
io-retire 1 0 0.0 189.7 0 0 0 0 0 0 wait: 確認待ちイベント数
ses-log-transport 0 0 0.0 1.1 0 0 0 0 48b 0 svc_t: 平均イベント処理時間(ms)
software-diagnosis 1 1 0.0 373.3 0 0 0 0 320b 0
software-response 2 0 0.0 380.3 0 0 0 0 2.3K 2.0K %w: 待ち時間の割合
sp-monitor 0 0 0.0 78.2 0 0 0 0 24b 0 %b: 処理時間の割合
sysevent-transport 0 0 0.0 36.7 0 0 0 0 0 0 open: 処理完了していないイベント数
syslog-msgs 1 0 0.0 189.7 0 0 0 0 0 0 solve: 処理完了させたイベント数
zfs-diagnosis 4 0 0.0 187.0 0 0 0 0 0 0
zfs-retire 4 0 0.0 556.2 0 0 0 0 4b 0 memsz: 使用中の動的メモリサイズ
bufsz: 使用中の固定バッファサイズ
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
28
- 29. Fault Management Architecture
ユーザ側における管理アクションの決定手順
管理アクションを決定するための情報は、fmadm faulty の情報を優先
– fmdump の出力は、障害以外の情報も含まれるため
ナレッジ(MOS)を検索し、診断内容の確認を推奨
– イベント重要度、障害情報の詳細を確認
– 推奨アクションの確認
ソフトウェアで対処可能か?
FRU 交換か?
無害なイベントか?
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
29
- 30. Fault Management Architecture
MSG-ID (ナレッジの確認)
概要に含まれる URI へアクセス
(例: sun.com/msg/SUN4V-8002-6E)
– My Oracle Support へのリダイレクト
または、MOS(My Oracle Support)
にて MSG-ID を key に検索
管理者への推奨アクションを提示
– SUN4V-8002-6E は、CPU 障害の為
FRU 交換を推奨アクションとして提示
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
30
- 31. Fault Management Architecture
自己修復管理モデルの概要
fmd は、遠隔測定法に基づいて適切な診断エンジンにイベントをディスパッ
チする
イベントは、UUID にて識別され蓄積される
障害解決の準備が整うと、list.suspectイベントが応答エージェントに渡され
アクションが実行される
– 障害は、1つ以上の疑わしい障害イベントと関連付けられる
– アクションで解決される場合は、Repaired に移行
– その障害が取り払われることを認識し、Resolved に移行(障害の解決)
または、 MSG-ID 従った推奨アクションの実行
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
31
- 32. ILOM FMA Software Stack
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
32
- 33. Fault Management Architecture
ILOM FMA Software Stack
Oracle Hardware 搭載の ILOM (Service Processor)
– FMA Software Stack を実装
– XSCF (SPARC Enterprise M シリーズ) にも実装
Solaris FMA と ILOM FMA の連携
– 両者の FMD が連携し、障害を検知/報告
SPARC サーバでは、hypervisor にも実装 (SPARC T シリーズのみ)
– Oracle VM for SPARC 稼働環境においても FMA との連携は継続
– OBP (Hostconfig/POST) , Hypervisor は ereports 機能を実装
– ILOM, Solaris の FMD がカバー
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
33
- 34. Fault Management Architecture
ILOM FMA Software Stack
FRUID/LED
Control Solaris Fault
Fault
Manager
Service Processor Manager
Chassis HW monitoring
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
34
- 35. Fault Management Architecture
ILOM FMA Software Stack
Oracle(R) Integrated Lights Out Manager
Version 3.0.16.5.a r69665
Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
-> start /SP/faultmgmt/shell
Are you sure you want to start /SP/faultmgmt/shell (y/n)? y
faultmgmtsp> fmdump
TIMESTAMP UUID MSGID
2012-05-21/05:07:13 2801505f-9a62-c132-a758-b42f6b37abee FMD-8000-6U Resolved
2012-07-07/09:25:49 9005418b-18ff-4528-e45b-f1568f4bc011 FMD-8000-4M Repaired
2012-07-07/10:36:56 abd3a201-570b-e63c-be29-f568c2e0da43 FMD-8000-4M Repaired
faultmgmtsp> fmstat
fdd statistics 2012-08-19/13:21:23
engine status evts_in evts_out errors
platform empty 0 0 0
repair empty 1 0 0
hysteresis empty 0 0 0
simple empty 0 0 0
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
35
- 36. Solaris 11 における
Fault Management 新機能
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
36
- 37. Solaris 11: New Fault Management Features
Oracle Auto Service Request (ASR) との連携
ハードウェア障害からの復旧を迅速に
障害検知からサービス・リクエスト (SR) 登録までを自動化
Solaris 11 では ASR client (asr-notify) を提供
パーツ手配
お客様
(エンジニア手配)
ドラフト SR
パートナー様
SR
故障パーツを自動選出
SR 作成 解析 オンサイト
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
37
- 38. Automatic Service Request (ASR)
Oracle Auto Service Request (ASR) との連携
通知対象コンポーネント
CPU, メモリ, ディスク, チップセット
ファン, 電源
ASR Fault Coverage 一覧
http://www.oracle.com/technetwork/server-storage/asr/documentation/
– ILOM FMA
http://www.oracle.com/technetwork/systems/asr/documentation/fault-coverage-ilom-337688.pdf
– Solaris FMA
http://www.oracle.com/technetwork/systems/asr/documentation/fault-coverage-fma-337686.pdf
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
38
- 39. Solaris 11: New Fault Management Features
HW障害の自動SR登録の仕組み
Oracle Premier Support 契約でご利用可能です。
Oracle Database のアラート等、SW のエラーは SR 登録されません。
Database Appliance の場合、本体にASR Manager機能が組み込まれています。
ASR とは別のシステム監視ソリューションを主とし、それら監視ソリューションに加えて補助的にご使
用されることを推奨します。
SR 登録後のサービスレベルは、通常のOracle Premier Support において提供されるサービスレベ
ルと同等です。 お客様の監視ツールへ お客様へメール通知
通知
HW障害検知 SR 登録
https
Oracle Systems (ASR Manager ) My Oracle Support
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
39
- 40. Solaris 11: New Fault Management Features
診断内容やアップデートの通知をサポート
SMTP, SNMP, Syslog での通知をサポート
– pkg://solaris/system/fault-management/snmp-notify (IPS)
– svc:/system/fm/snmp-notify:default (smf)
svccfg (SMF) の setnotify にて設定
– /usr/lib/fm/notify/smtp-notify (sendmail を利用)
– /usr/lib/fm/notify/snmp-notify (net-snmp を利用)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
40
- 41. Email Notification
診断内容やアップデートの通知をサポート
# svcs -n
Notification parameters for FMA Events
Event: problem-diagnosed
Notification Type: smtp
Active: true
reply-to: root@localhost
to: root@localhost
Notification Type: snmp
Active: true
Notification Type: syslog
Active: true
Event: problem-repaired
Notification Type: snmp
Active: true
Event: problem-resolved
Notification Type: snmp
Active: true
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
41
- 42. Email Notification
診断内容やアップデートの通知をサポート
通知可能な内容
– problem-diagnosed
新しい問題が FMA により診断された
– problem-updated
既存の診断が更新された(障害コンポーネントの修復や再度障害が発生など)
– problem-repaired
既存の診断に含まれていた障害原因が修復された
– problem-resolved
既存の診断に含まれていた障害箇所が全て解決された
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
42
- 43. Email Notification
診断内容やアップデートの通知をサポート
例) problem-resolve の報告先として syslog と smtp を追加
– smtp のあて先は、root@localhost を指定
# svccfg setnotify problem-resolved syslog:active
# svccfg setnotify problem-resolved mailto:root@localhost
# svcs -n
Event: problem-resolved
Notification Type: snmp
Active: true
Notification Type: syslog
Active: true
Notification Type: smtp smtp, syslog での通知が追加
Active: true
to: admin@example-1.com
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
43
- 44. Email Notification
診断内容やアップデートの通知をサポート (例-smtp_1)
Date: Sun, 19 Aug 2012 17:44:56 +0900 (JST)
From: No Access User <noaccess@solaris>
Message-Id: <201208190844.q7J8iuDC024826@solaris.>
X-FMEV-HOSTNAME: solaris 障害発生:
X-FMEV-CLASS: list.suspect
X-FMEV-UUID: ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 problem-diagnosed
X-FMEV-CODE: SMF-8000-YX
X-FMEV-SEVERITY: major
Reply-To: root@solaris
Subject: Fault Management Event: solaris:SMF-8000-YX
To: root@solaris
Content-Length: 758
SUNW-MSG-ID: SMF-8000-YX, TYPE: defect, VER: 1, SEVERITY: major
EVENT-TIME: Sun Aug 19 17:44:56 JST 2012
PLATFORM: 4170CTO, CSN: R9M32P0, HOSTNAME: solaris
SOURCE: software-diagnosis, REV: 0.1
EVENT-ID: ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7
DESC: A service failed - the instance is restarting too quickly.
AUTO-RESPONSE: The service has been placed into the maintenance state.
IMPACT: svc:/system/ocm:default is unavailable.
REC-ACTION: Run 'svcs -xv svc:/system/ocm:default' to determine the generic reason why the service failed, the
location of any logfiles, and a list of other services impacted. Please refer to the associated reference
document at http://sun.com/msg/SMF-8000-YX for the latest service procedures and policies regarding this
diagnosis.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
44
- 45. Email Notification
診断内容やアップデートの通知をサポート(例-smtp_2)
Date: Sun, 19 Aug 2012 17:46:23 +0900 (JST)
From: No Access User <noaccess@solaris>
Message-Id: <201208190846.q7J8kNMj026367@solaris.>
X-FMEV-HOSTNAME: solaris 障害の解決
X-FMEV-CLASS: list.resolved
X-FMEV-UUID: ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 problem-resolved
X-FMEV-CODE: FMD-8000-6U
X-FMEV-SEVERITY: Minor
Reply-To: root@solaris
Subject: Fault Management Event: solaris:FMD-8000-6U
To: root@solaris
Content-Length: 528
SUNW-MSG-ID: FMD-8000-6U, TYPE: Resolved, VER: 1, SEVERITY: Minor
EVENT-TIME: Sun Aug 19 17:44:56 JST 2012
PLATFORM: 4170CTO, CSN: R9M32P0, HOSTNAME: solaris
SOURCE: fmd, REV: 1.2
EVENT-ID: ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7
DESC: All faults associated with an event id have been addressed.
AUTO-RESPONSE: All system components offlined because of the original fault have been brought back online.
IMPACT: Performance degradation of the system due to the original fault has been recovered.
REC-ACTION: No action is required.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
45
- 46. Email Notification
診断内容やアップデートの通知をサポート(例-syslog)
障害の解決
problem-resolved
Aug 19 17:46:23 solaris fmd: [ID 377184 daemon.notice] SUNW-MSG-ID: FMD-8000-6U, TYPE: Resolved, VER: 1,
SEVERITY: Minor
Aug 19 17:46:23 solaris EVENT-TIME: Sun Aug 19 17:44:56 JST 2012
Aug 19 17:46:23 solaris PLATFORM: 4170CTO, CSN: R9M32P0, HOSTNAME: solaris
Aug 19 17:46:23 solaris SOURCE: fmd, REV: 1.2
Aug 19 17:46:23 solaris EVENT-ID: ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7
Aug 19 17:46:23 solaris DESC: All faults associated with an event id have been addressed.
Aug 19 17:46:23 solaris AUTO-RESPONSE: All system components offlined because of the original fault have been
brought back online.
Aug 19 17:46:23 solaris IMPACT: Performance degradation of the system due to the original fault has been
recovered.
Aug 19 17:46:23 solaris REC-ACTION: No action is required.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
46
- 47. Email Notification
診断内容やアップデートの通知をサポート(例-3)
root@solaris:/usr/lib# fmadm faulty -u ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7
--------------- ------------------------------------ -------------- ---------
TIME EVENT-ID MSG-ID SEVERITY
--------------- ------------------------------------ -------------- ---------
8月 19 17:44:56 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 SMF-8000-YX major
Host : solaris
Platform : 4170CTO Chassis_id : R9M32P0
Product_sn :
root@solaris:/usr/lib# fmdump
Fault class : defect.sunos.smf.svc.maintenance TIME UUID SUNW-MSG-ID EVENT
Affects : svc:///system/ocm:default 8月 19 17:44:56.8725 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 SMF-8000-YX Diagnosed
ok and in service 8月 19 17:46:23.2414 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 FMD-8000-4M Repaired
Problem in : svc:///system/ocm:default 8月 19 17:46:23.2439 ccf2cb98-75b0-e82e-b4f7-a0c68b215ab7 FMD-8000-6U Resolved
repaired
Description : A service failed - the instance is restarting too quickly.
Response : The service has been placed into the maintenance state.
Impact : svc:/system/ocm:default is unavailable.
Action : Run 'svcs -xv svc:/system/ocm:default' to determine the generic
reason why the service failed, the location of any logfiles, and
a list of other services impacted. Please refer to the associated
reference document at http://sun.com/msg/SMF-8000-YX for the
latest service procedures and policies regarding this diagnosis.
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
47
- 48. Solaris 11: New Fault Management Features
パニックに関する通知の強化
パニック発生後の再起動にて、障害ログおよび通知が生成される
– 障害ログにパニックメッセージおよびスタックトレース情報が含まれる
カーネルパニックは、下記 MSG-ID にて通知
– SUNOS-8000-KL - Kernel Panic [ID 1173706.1]
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
48
- 49. Solaris 11: New Fault Management Features
# fmadm –Vp –u fb2b23db-8f75-ee79-a91e-ece2ecbd9354
TIME UUID SUNW-MSG-ID
1月 09 2012 08:10:03.036954000 fb2b23db-8f75-ee79-a91e-ece2ecbd9354 SUNOS-8000-KL
TIME CLASS ENA
1月 09 2012 08:10:02 ireport.os.sunos.panic.dump_available 0x0000000000000000
1月 09 2012 08:08:53 ireport.os.sunos.panic.dump_pending_on_device 0x0000000000000000
nvlist version: 0 nvlist version: 0
version = 0x0 version = 0x0
class = list.suspect class = defect.sunos.kernel.panic
uuid = fb2b23db-8f75-ee79-a91e-ece2ecbd9354 certainty = 0x64
code = SUNOS-8000-KL asru = sw:///:path=/var/crash/.fb2b23db-8f75-ee79-a91e-ece2ecbd9354
diag-time = 1326064202 814436 resource = sw:///:path=/var/crash/.fb2b23db-8f75-ee79-a91e-ece2ecbd9354
de = fmd:///module/software-diagnosis savecore-succcess = 1
fault-list-sz = 0x1 dump-dir = /var/crash
__case_state = 0x1 dump-files = vmdump.0
topo-uuid = bf74c336-dd8f-e381-e0a5-f7c03e42527b os-instance-uuid = fb2b23db-8f75-ee79-a91e-ece2ecbd9354
fault-list = (array of embedded nvlists) panicstr = BAD TRAP: type=d (#gp General protection) rp=ffffff0011e4a950 addr=0
(start fault-list[0]) panicstack = unix:die+131 () | unix:trap+3b2 () | unix:cmntrap+e6 () | nvidia:_nv002206rm+113 () |
crashtime = 1326008412
panic-time = 2012年01月08日 16時40分12秒 JST
(end fault-list[0])
fault-status = 0x1
severity = Major
__ttl = 0x1
__tod = 0x4f0a224b 0x233df90
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
49
- 50. Solaris 11: New Fault Management Features
非大域ゾーンのサポート
非大域ゾーンにて Fault Manager の動作をサポート
– svc:/system/fmd:default
ソフトウェア障害検知のみに特化させる
– 非大域ゾーンの Fault Manager の役割は、SMF インスタンスの監視
– ハードウェア障害は、大域ゾーンの FMD にてカバーできるため
IPS パッケージのインストールが必要
– pkg:/solaris/system/fault-management/smtp-notify
– pkg:/solaris/system/fault-management/snmp-notify
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
50
- 51. Solaris Fault Manager
まとめ
OS だけではなく、HW 側にも実装される Fault Management Architecture
– Solaris Fault Manager
– ILOM FMA Software Stack (ILOM, XSCF)
SMF(Service Management Facility) との連携によりソフトウェアとハード
ウェアの可用性を最大化する
他社システムでは実現できない、予測的自己修復機能 を実現
– Solaris + Oracle HW の優位性
OS と HW を提供できる、Oracle だからこそ可能な技術
– ハードウェアとソフトウェアに、真の自己修復機能実現
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
51
- 52. 参考情報
Oracle Solaris の管理: 一般的なタスク >第 8 章障害管理の使用
http://docs.oracle.com/cd/E26924_01/html/E25810/glgki.html#scrolltoc
Fault Management Community
http://hub.opensolaris.org/bin/view/Community+Group+fm/WebHome
Oracle Solaris 11: New Fault Management Features
http://hub.opensolaris.org/bin/view/Community+Group+fm/Solaris11FCS
Self-Healing in Modern Operating Systems
http://queue.acm.org/detail.cfm?id=1039537
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
52
- 53. 参考情報
Fault Management Daemon Programmer's Reference Manual
fault management daemon の実装について
http://hub.opensolaris.org/bin/download/Community+Group+fm/WebHome/FMDPRM.pdf
– fmtopo(topology snapshot ), fminject (event error injector), Debugging など、様々な情報を掲載
デバイスドライバの記述 (Writing Device Drivers)
– 障害管理アーキテクチャーの入出力障害サービス
http://docs.oracle.com/cd/E24845_01/html/E22201/fmaiofs.html#scrolltoc
– FMA をデバイスドライバに実装する方法などを解説
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
53
- 54. 参考情報
Eversholt Fault Tree Description Language
Eversholt compiler and other utilities (ESC)
– # pkg install system/fault-management/eversholt-utilities
EFT module
– /usr/platform/`uname –i`/lib/fm/eft (platform specific)
– /usr/lib/fm/eft
Eversholt Fault Tree Description Language Document
http://hub.opensolaris.org/bin/download/Community+Group+fm/WebHome/EVERSHOLT.pdf
source directory for the eversholt fault diagnosis technology
http://cvs.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/cmd/fm/eversholt/
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
54
- 55. 参考情報
PSARC 2002/412 Solaris Fault Management Architecture (FMA)
PSARC 2003/089 Solaris Fault Management Daemon
PSARC 2004/694 Update to Solaris FMA Event Protocol and Resource
Identification
PSARC 2004/807 FMA Event Registry
PSARC 2005/754 FMA SNMP Agent
PSARC 2005/755 FMA Transport Layer
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
55
- 56. 参考情報
製品情報とダウンロード
– oracle.co.jp/solaris
Oracle Technology Network
– http://www.oracle.com/technetwork/jp/server-storage/solaris11/overview/index.html
System administrators community
– oracle.com/technetwork/systems
@ORCL_Solaris
facebook.com/SolarisJP
SlideShare.net/SolarisJP
SlideShare.net/SolarisJPNight (Solaris ナイトセミナー資料)
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
56