| ナビゲーションリンクをスキップ | |
| 印刷ビューの終了 | |
|
Oracle® ZFS Storage Appliance 顧客サービスマニュアル、Release 2013.1.3.0 ZS4-4、ZS3-x、7x20 コントローラ、および DE2-24、Sun Disk Shelf 用 |
警告アクションとして実行されているワークフローは、audit 関数を使用して監査ログエントリを生成できます。関連するすべてのデバッグ情報を audit 関数を経由して監査ログに生成することをお勧めします。たとえば、クラスタ化された状態にある場合はフェイルオーバーを実行するが、リブートの失敗をすべて監査するワークフローを次に示します。
var workflow = {
name: 'Failover',
description: 'Fail the node over to its clustered peer',
alert: true,
setid: true,
execute: function (params) {
/*
* To failover, we first confirm that clustering is configured
* and that we are in the clustered state. We then reboot,
* which will force our peer to takeover. Note that we're
* being very conservative by only rebooting if in the
* AKCS_CLUSTERED state: there are other states in which it
* may well be valid to failback (e.g., we are in AKCS_OWNER,
* and our peer is AKCS_STRIPPED), but those states may also
* indicate aberrent operation, and we therefore refuse to
* failback. (Even in an active/passive clustered config, a
* FAILBACK should always be performed to transition the
* cluster peers from OWNER/STRIPPED to CLUSTERED/CLUSTERED.)
*/
var uuid = params.uuid;
var clustered = 'AKCS_CLUSTERED';
audit('attempting failover in response to alert ' + uuid);
try {
run('configuration cluster');
} catch (err) {
audit('could not get clustered state; aborting');
return;
}
if ((state = get('state')) != clustered) {
audit('state is ' + state + '; aborting');
return;
}
if ((state = get('peer_state')) != clustered) {
audit('peer state is ' + state + '; aborting');
return;
}
run('cd /');
run('confirm maintenance system reboot');
}
};