Oracle® Clusterware

管理およびデプロイメント・ガイド

11gリリース2(11.2)

B56289-08(原本部品番号:E41959-04)

2015年6月

Oracle Clusterware管理およびデプロイメント・ガイド, 11gリリース2(11.2)

B56289-08

Copyright © 2007, 2015, Oracle and/or its affiliates.All rights reserved.

原本著者: Richard Strohm

原本協力者: Ahmed Abbas、Ram Avudaiappan、Mark Bauer、Eric Belden、Gajanan Bhat、Jonathan Creighton、Mark Fuller、John Grout、Andrey Gusev、Winston Huang、Sameer Joshi、Sana Karam、Roland Knapp、Erich Kreisler、Raj K.Kammend、Karen Li、Barb Lundhild、Bill Manry、Saar Maoz、Markus Michalewicz、Anil Nair、Philip Newlan、Kevin Reardon、Dipak Saggi、Viv Schupmann、K.P. Singh、Duane Smith、Janet Stern、Su Tang、Mark Townsend、Douglas Williams

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション(人的傷害を発生させる可能性があるアプリケーションを含む)への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性(redundancy)、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。適用されるお客様とOracle Corporationとの間の契約に別段の定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。適用されるお客様とOracle Corporationとの間の契約に定めがある場合を除いて、Oracle Corporationおよびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

目次

表一覧

タイトルおよび著作権情報

はじめに

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

Oracle Clusterwareの管理およびデプロイメントに関する新機能

- Oracle Clusterwareに関するOracle Database 11gリリース2(11.2.0.4)の新機能

- Oracle Clusterwareに関するOracle Database 11gリリース2(11.2)の新機能

- Oracle Clusterwareに関するOracle Database 11gリリース2(11.2.0.1)の新機能

1 Oracle Clusterwareの概要

- Oracle Clusterwareとは

- Oracle Clusterwareのシステム要件の理解

- Oracle Clusterwareのハードウェアの概念および要件

- Oracle Clusterwareのオペレーティング・システムの概念および要件

- Oracle Clusterwareのソフトウェアの概念および要件

- Oracle Clusterwareのネットワーク構成の概念

- GNSの実装

- 単一クライアント・アクセス名(SCAN)

- アドレスの手動構成

- Oracle Clusterwareのプラットフォーム固有のソフトウェア・コンポーネントの概要

- Oracle Clusterwareのスタック

- クラスタ・レディ・サービス・スタック

- Oracle高可用性サービス・スタック

- WindowsシステムでのOracle Clusterwareプロセス

- Oracle Clusterwareのインストールの概要

- Oracle Clusterwareのリリースの互換性

- Oracle Clusterwareのアップグレードの概要

- Oracle Clusterware環境の管理の概要

- グリッド環境でのOracle Clusterwareのクローニングおよび拡張の概要

- Oracle Clusterwareの高可用性フレームワークおよびAPIの概要

2 Oracle Clusterwareの管理

- ポリシー・ベースのクラスタおよび容量の管理

- サーバー・プールおよびポリシー・ベース管理の概要

- Oracle Clusterwareによって割り当てられるサーバー属性

- サーバー・プールの理解

- サーバー・プールの動作

- 空きサーバー・プール

- 汎用サーバー・プール

- Oracle Clusterwareでの新しいサーバーの割当て方法

- サーバー・プールからサーバー・プールへのサーバーの移動

- ロール別管理

- ロール別管理について

- CRS管理者について

- クラスタ内のCRS管理者の管理

- 水平ロール区分の構成

- Oracle Grid Infrastructureの構成

- 単一ノードの構成

- 複数ノードの構成

- グリッド・インフラストラクチャのアップグレード

- サイレント・モードでの構成ウィザードの実行

- 障害分離のためのIPMIの構成

- 障害分離のためのIPMIの使用について

- IPMI用のサーバー・ハードウェアの構成

- CRSCTLを使用したIPMIベース障害分離のインストール後の構成

- Oracle ClusterwareでのIPMIインストール後の構成

- CRSCTLを使用したIPMI構成の変更

- CRSCTLを使用したIPMI構成の削除

- クラスタの時間管理

- 手動構成ネットワーク上のネットワーク・アドレスの変更

- ネットワーク・アドレスを構成する必要がある場合の理解

- SCANアドレスおよびクライアント・サービス接続の理解

- 仮想IPアドレスの変更

- Oracle Clusterwareのプライベート・ネットワーク構成の変更

- プライベート・ネットワークおよびネットワーク・インタフェースについて

- 冗長なインターコネクトの使用

- OIFCFGを使用したインタフェース名の変更結果

- ネットワーク・インタフェースの変更

3 Oracle Cluster Registryおよび投票ディスクの管理

- Oracle Cluster RegistryおよびOracle Local Registryの管理

- Oracle Automatic Storage ManagementへのOracle Cluster Registryの移行

- Oracle ASMから他のタイプの記憶域へのOracle Cluster Registryの移行

- Oracle Cluster Registryの場所の追加、置換、修復および削除

- Oracle Cluster Registryの場所の追加

- Oracle Cluster Registryの場所の削除

- Oracle Cluster Registryの場所の置換

- ローカル・ノードのOracle Cluster Registry構成の修復

- Oracle Cluster Registryのデータ損失保護メカニズムの無効化

- Oracle Cluster Registryのバックアップ

- Oracle Cluster Registryのリストア

- Oracle Cluster Registryの問題の診断

- Oracle Cluster Registryエクスポート・コマンドおよびインポート・コマンドを使用したOracle Cluster Registryの管理

- LinuxまたはUNIXシステムでのOracle Cluster Registryの内容のインポート

- WindowsシステムでのOracle Cluster Registryの内容のインポート

- Oracle Local Registry

- Oracle Cluster Registry構成のアップグレードおよびダウングレード

- 投票ディスクの管理

- Oracle ASMでの投票ディスクの格納

- 投票ディスクのバックアップ

- 投票ディスクのリストア

- 投票ディスクの追加、削除または移行

4 クラスタ・ノードの追加および削除

- クラスタ・ノードを追加するための必須手順

- LinuxおよびUNIXシステムでのクラスタ・ノードの追加および削除

- LinuxおよびUNIXシステムでのクラスタ・ノードの追加

- LinuxおよびUNIXシステムでのクラスタ・ノードの削除

- Windowsシステムでのクラスタ・ノードの追加および削除

- Windowsシステムでのクラスタへのノードの追加

- Windowsシステムでのクラスタ・ノードの削除

5 Oracle Clusterwareのクローニング

- Oracle Clusterwareのクローニングの概要

- Oracle Grid Infrastructureホームをクローニングするための準備

- 手順1: Oracle Clusterwareのインストール

- 手順2: 実行中のソフトウェアの停止

- 手順3: Oracle Grid Infrastructureホームのコピーの作成

- Oracle Clusterwareのクローニングによるクラスタの作成

- 手順1: 新規クラスタ・ノードの準備

- 手順2: 宛先ノードでのOracle Grid Infrastructureホームのデプロイ

- 手順3: 各宛先ノードでのclone.plスクリプトの実行

- コマンドライン上でのclone.plスクリプトの入力値の指定

- ファイル内でのclone.plスクリプトの入力値の指定

- 手順4: 構成ウィザードの起動

- クローニングを使用したクラスタへのノードの追加

- クローニング時に生成されたログ・ファイルの配置と表示

6 Oracle Clusterwareを使用したアプリケーションの高可用性の実現

- Oracle Clusterwareリソースおよびエージェント

- リソース

- リソース・タイプ

- エージェント

- アクション・スクリプト

- エージェントの作成

- Oracle Clusterwareへのリソースの登録

- Oracle Clusterwareを使用した高可用性の実現の概要

- リソース属性

- リソースの状態

- リソース依存性

- 起動依存性

- 停止依存性

- リソースの配置

- リソースとしてのアプリケーションの登録

- Oracle Clusterwareで管理されるアプリケーションVIPの作成

- ユーザー定義のリソースの追加

- デプロイメント・スキームの決定

- 特定のサーバー・プールへのリソースの追加

- サーバー固有のデプロイメントを使用したリソースの追加

- Oracle Enterprise Managerを使用したリソースの追加

- リソース権限の変更

- アプリケーションの配置ポリシー

- アプリケーションおよびアプリケーション・リソースの登録解除

- リソースの管理

- アプリケーション・リソースの登録

- アプリケーション・リソースの起動

- アプリケーションおよびアプリケーション・リソースの再配置

- アプリケーションおよびアプリケーション・リソースの停止

- クラスタウェア・アプリケーションおよびアプリケーション・リソースのステータス情報の表示

- Oracle Clusterwareによるリソースの自動再起動の管理

- 自動再起動の防止

- リソースの再起動試行カウンタの自動管理

A クラスタ検証ユーティリティのリファレンス

- クラスタ検証ユーティリティについて

- 概要

- 使用上の注意

- 特別な項目

- クラスタ検証ユーティリティのコマンド・リファレンス

- cluvfy comp acfs

- cluvfy comp admprv

- cluvfy comp asm

- cluvfy comp cfs

- cluvfy comp clocksync

- cluvfy comp clu

- cluvfy comp clumgr

- cluvfy comp crs

- cluvfy comp dhcp

- cluvfy comp dns

- cluvfy comp freespace

- cluvfy comp gns

- cluvfy comp gpnp

- cluvfy comp ha

- cluvfy comp healthcheck

- cluvfy comp nodeapp

- cluvfy comp nodecon

- cluvfy comp nodereach

- cluvfy comp ocr

- cluvfy comp ohasd

- cluvfy comp olr

- cluvfy comp peer

- cluvfy comp scan

- cluvfy comp software

- cluvfy comp space

- cluvfy comp ssa

- cluvfy comp sys

- cluvfy comp vdisk

- cluvfy stage [-pre | -post] acfscfg

- cluvfy stage [-pre | -post] cfs

- cluvfy stage [-pre | -post] crsinst

- cluvfy stage -pre dbcfg

- cluvfy stage -pre dbinst

- cluvfy stage [-pre | -post] hacfg

- cluvfy stage -post hwos

- cluvfy stage [-pre | -post] nodeadd

- cluvfy stage -post nodedel

- CVUのトラブルシューティングおよび診断出力

- トレースの有効化

- クラスタ検証ユーティリティの既知の問題

- クラスタ検証ユーティリティによってサポートされるデータベースのバージョン

- Linuxの共有記憶域アクセス性(ssa)チェックのレポートの制限

- Red Hat Linuxでの共有ディスクの検出

B Oracle Clusterwareのリソース・リファレンス

- リソース属性

- 構成可能なリソース属性

- ACL

- ACTION_SCRIPT

- ACTIVE_PLACEMENT

- AGENT_FILENAME

- AUTO_START

- CARDINALITY

- CHECK_INTERVAL

- DEGREE

- DESCRIPTION

- ENABLED

- FAILURE_INTERVAL

- FAILURE_THRESHOLD

- HOSTING_MEMBERS

- LOAD

- NAME

- OFFLINE_CHECK_INTERVAL

- PLACEMENT

- RESTART_ATTEMPTS

- SCRIPT_TIMEOUT

- SERVER_POOLS

- START_DEPENDENCIES

- START_TIMEOUT

- STOP_DEPENDENCIES

- STOP_TIMEOUT

- TYPE

- UPTIME_THRESHOLD

- 読取り専用のリソース属性

- ACTION_FAILURE_EVENT_TEMPLATE

- INTERNAL_STATE

- LAST_SERVER

- LAST_STATE_CHANGE

- PROFILE_CHANGE_EVENT_TEMPLATE

- RESTART_COUNT

- STATE

- STATE_CHANGE_EVENT_TEMPLATE

- STATE_DETAILS

- TARGET

- サード・パーティ製アプリケーションのアクション・スクリプトの例

C OLSNODESのコマンド・リファレンス

- OLSNODESの使用

- 概要

- 使用上の注意

- OLSNODESコマンドのサマリー

D Oracle Interface Configurationツール(OIFCFG)のコマンド・リファレンス

- OIFCFGコマンドライン・インタフェースの起動

- OIFCFGの使用方法の概要

E CRSCTLユーティリティのリファレンス

- CRSCTLの概要

- クラスタ用に変更された(クラスタ対応)コマンド

- 使用上の注意

- 非推奨のサブプログラムまたはコマンド

- CRSCTLのコマンド・リファレンス

- デュアル環境のCRSCTLコマンド

- crsctl add resource

- crsctl add type

- crsctl check css

- crsctl check evm

- crsctl delete resource

- crsctl delete type

- crsctl get hostname

- crsctl getperm resource

- crsctl getperm type

- crsctl modify resource

- crsctl modify type

- crsctl setperm resource

- crsctl setperm type

- crsctl start resource

- crsctl status resource

- crsctl status type

- crsctl stop resource

- Oracle RAC環境のCRSCTLコマンド

- crsctl add crs administrator

- crsctl add css votedisk

- crsctl add serverpool

- crsctl check cluster

- crsctl check crs

- crsctl check resource

- crsctl check ctss

- crsctl config crs

- crsctl delete crs administrator

- crsctl delete css votedisk

- crsctl delete node

- crsctl delete serverpool

- crsctl disable crs

- crsctl discover dhcp

- crsctl enable crs

- crsctl get clientid dhcp

- crsctl get css

- crsctl get css ipmiaddr

- crsctl get nodename

- crsctl getperm serverpool

- crsctl lsmodules

- crsctl modify serverpool

- crsctl pin css

- crsctl query crs administrator

- crsctl query crs activeversion

- crsctl query crs releaseversion

- crsctl query crs softwareversion

- crsctl query css ipmiconfig

- crsctl query css ipmidevice

- crsctl query css votedisk

- crsctl query dns

- crsctl release dhcp

- crsctl relocate resource

- crsctl relocate server

- crsctl replace discoverystring

- crsctl replace votedisk

- crsctl request dhcp

- crsctl set css

- crsctl set css ipmiaddr

- crsctl set css ipmiadmin

- crsctl setperm serverpool

- crsctl start cluster

- crsctl start crs

- crsctl start ip

- crsctl start testdns

- crsctl status ip

- crsctl status server

- crsctl status serverpool

- crsctl status testdns

- crsctl stop cluster

- crsctl stop crs

- crsctl stop ip

- crsctl stop testdns

- crsctl unpin css

- crsctl unset css

- crsctl unset css ipmiconfig

- Oracle Restart環境のCRSCTLコマンド

- crsctl check has

- crsctl config has

- crsctl disable has

- crsctl enable has

- crsctl query has releaseversion

- crsctl query has softwareversion

- crsctl start has

- crsctl stop has

- トラブルシューティングおよび診断出力

- 動的デバッグ

- crsctl set log

- コンポーネント・レベルのデバッグ

- Oracle Clusterwareモジュールのデバッグの有効化

- デバッグ・レベルを含む初期化ファイルの作成

- Oracle Clusterwareリソースのデバッグの有効化

- Oracle Clusterwareコンポーネントのための追加トレースの有効化

F Oracle Clusterware C Application Program Interface

- Oracle Clusterwareのプログラミング・インタフェース(C API)について

- 対話形式CLSCRS API

- 非対話形式CLSCRS API

G Oracle Cluster Registryユーティリティ・リファレンス

- OCRCONFIGについて

- OCRCONFIGコマンド・リファレンス

- Oracle Cluster Registryのトラブルシューティングおよび診断出力

- Oracle Cluster Registryのトラブルシューティング

- OCRCHECKユーティリティの使用

- OCRDUMPユーティリティを使用したOracle Cluster Registryの内容の表示

- OCRDUMPユーティリティの構文およびオプション

- OCRDUMPユーティリティの例

- OCRDUMPユーティリティの出力例

H Oracle Clusterwareのトラブルシューティング

- Oracle Clusterwareの監視

- クラスタ状態モニター

- CHMサービス

- CHMリポジトリ

- CHMデータの収集

- OCLUMONコマンドのリファレンス

- oclumon debug

- oclumon dumpnodeview

- oclumon manage

- oclumon version

- クラスタウェアのログ・ファイルおよび統合ログ・ディレクトリ構造

- ゾーン委任のテスト

- Oracleトレース・ファイル・アナライザ・コレクタ

- TFAデーモンの管理

- TFA制御ユーティリティのコマンド・リファレンス

- tfactl print

- tfactl purge

- tfactl directory

- tfactl host

- tfactl set

- tfactl diagcollect

- TFAでのデータ・リダクション

- 診断収集スクリプト

- Oracle Clusterwareアラート

- Diagnostic Record Unique IDを使用したアラート・メッセージ

用語集

索引

表一覧

- 1-1 Oracle Clusterwareコンポーネントに関連付けられたプロセスおよびサービスのリスト

- 2-1 サーバー属性

- 2-2 サーバー・プール属性

- 2-3 サーバー・プール属性の構成例

- 2-4 処理後のサーバー・プール構成

- 2-5 ネットワーク・インタフェース、プライベートIPアドレスおよびプライベート・ホスト名の記憶域

- 5-1 clone.plスクリプトのパラメータ

- 5-2 clone.plスクリプトに渡される環境変数

- 5-3 クローニングのログ・ファイルおよび説明

- 5-4 Oracleインベントリ・ディレクトリの場所の検索

- 6-1 エージェント・フレームワークの監視特性

- 6-2 予想されるリソースの状態

- A-1 CVUの様々な検証の実行

- A-2 cluvfy comp acfsコマンドのパラメータ

- A-3 cluvfy comp admprvコマンドのパラメータ

- A-4 cluvfy comp asmコマンドのパラメータ

- A-5 cluvfy comp cfsコマンドのパラメータ

- A-6 cluvfy comp clocksyncコマンドのパラメータ

- A-7 cluvfy comp cluコマンドのパラメータ

- A-8 cluvfy comp clumgrコマンドのパラメータ

- A-9 cluvfy comp crsコマンドのパラメータ

- A-10 cluvfy comp dhcpコマンドのパラメータ

- A-11 cluvfy comp dnsコマンドのパラメータ

- A-12 cluvfy comp gnsコマンドのパラメータ

- A-13 cluvfy comp gpnpコマンドのパラメータ

- A-14 cluvfy comp healthcheckコマンドのパラメータ

- A-15 cluvfy comp nodeappコマンドのパラメータ

- A-16 cluvfy comp nodeconコマンドのパラメータ

- A-17 cluvfy comp nodereachコマンドのパラメータ

- A-18 cluvfy comp ocrコマンドのパラメータ

- A-19 cluvfy comp ohasdコマンドのパラメータ

- A-20 cluvfy comp peerコマンドのパラメータ

- A-21 cluvfy comp softwareコマンドのパラメータ

- A-22 cluvfy comp spaceコマンドのパラメータ

- A-23 cluvfy comp ssaコマンドのパラメータ

- A-24 cluvfy comp sysコマンドのパラメータ

- A-25 cluvfy comp vdiskコマンドのパラメータ

- A-26 cluvfy stage [-pre | -post] acfscfgコマンドのパラメータ

- A-27 cluvfy stage [-pre | -post] cfsコマンドのパラメータ

- A-28 cluvfy stage [-pre | -post] crsinstコマンドのパラメータ

- A-29 cluvfy stage -pre dbcfgコマンドのパラメータ

- A-30 cluvfy stage -pre dbinstコマンドのパラメータ

- A-31 cluvfy stage [-pre | -post] hacfgコマンドのパラメータ

- A-32 cluvfy stage -post hwosコマンドのパラメータ

- A-33 cluvfy stage [-pre | -post] nodeaddコマンドのパラメータ

- A-34 cluvfy stage -post nodedelコマンドのパラメータ

- C-1 OLSNODESのコマンド・オプション

- D-1 OIFCFGコマンド

- E-1 非推奨のCRSCTLコマンドおよびその代替

- E-2 crsctl add resourceコマンドのパラメータ

- E-3 crsctl add typeコマンドのパラメータ

- E-4 crsctl delete resourceコマンドのパラメータ

- E-5 crsctl getperm resourceコマンドのパラメータ

- E-6 crsctl getperm typeコマンドのパラメータ

- E-7 crsctl modify resourceコマンドのパラメータ

- E-8 crsctl modify typeコマンドのパラメータ

- E-9 crsctl setperm resourceコマンドのパラメータ

- E-10 crsctl setperm typeコマンドのパラメータ

- E-11 crsctl start resourceコマンドのパラメータ

- E-12 crsctl status resourceコマンドのパラメータ

- E-13 crsctl status typeコマンドのパラメータ

- E-14 crsctl stop resourceコマンドのパラメータ

- E-15 crsctl add crs administratorコマンドのパラメータ

- E-16 crsctl add css votediskコマンドのパラメータ

- E-17 crsctl add serverpoolコマンドのパラメータ

- E-18 crsctl check resourceコマンドのパラメータ

- E-19 crsctl delete crs administratorコマンドのパラメータ

- E-20 crsctl delete css votediskコマンドのパラメータ

- E-21 crsctl discover dhcpコマンドのパラメータ

- E-22 crsctl get clientid dhcpコマンドのパラメータ

- E-23 crsctl getperm serverpoolコマンドのパラメータ

- E-24 crsctl modify serverpoolコマンドのパラメータ

- E-25 crsctl query dnsコマンドのパラメータ

- E-26 crsctl release dhcpコマンドのパラメータ

- E-27 crsctl relocate resourceコマンドのパラメータ

- E-28 crsctl relocate serverコマンドのパラメータ

- E-29 crsctl replace discoverystringコマンドのパラメータ

- E-30 crsctl replace votediskコマンドのパラメータ

- E-31 crsctl request dhcpコマンドのパラメータ

- E-32 crsctl setperm serverpoolコマンドのパラメータ

- E-33 crsctl start ipコマンドのパラメータ

- E-34 crsctl start testdnsコマンドのパラメータ

- E-35 crsctl status ipコマンドのパラメータ

- E-36 crsctl status serverコマンドのパラメータ

- E-37 crsctl status serverpoolコマンドのパラメータ

- E-38 crsctl status testdnsコマンドのパラメータ

- E-39 crsctl stop ipコマンドのパラメータ

- E-40 crsctl stop testdnsコマンドのパラメータ

- E-41 CRS、CSSおよびEVMモジュールのコンポーネント

- E-42 クラスタ同期サービス(CSS)・モジュールおよびその機能

- E-43 通信(COMM)モジュールおよびその機能

- E-44 Oracle Clusterware(CRS)モジュールおよびその機能

- E-45 Oracle Cluster Registry(OCR)コンポーネント名

- E-46 OCRCONFIGモジュールおよびその機能

- F-1 非推奨のCLSCRS API

- F-2 Oracle Clusterwareの対話形式CLSCRS APIのサマリー

- F-3 非対話形式CLSCRS API

- G-1 Oracle Cluster Registryの一般的な問題および解決策

- G-2 OCRDUMPのオプションおよびオプションの説明

- H-1 oclumon debugコマンドのパラメータ

- H-2 oclumon dumpnodeviewコマンドのパラメータ

- H-3 SYSTEMビューのメトリックの説明

- H-4 PROCESSESビューのメトリックの説明

- H-5 DEVICESビューのメトリックの説明

- H-6 NICSビューのメトリックの説明

- H-7 FILESYSTEMSビューのメトリックの説明

- H-8 PROTOCOL ERRORSビューのメトリックの説明

- H-9 oclumon manageコマンドのパラメータ

- H-10 Oracle Clusterwareコンポーネントのログ・ファイルの場所

- H-11 tfactl printコマンドのパラメータ

- H-12 tfactl directoryコマンドのパラメータ

- H-13 tfactl setコマンドのパラメータ

- H-14 tfactl diagcollectコマンドのパラメータ

はじめに

『Oracle Clusterware管理およびデプロイメント・ガイド』では、Oracle Clusterwareのアーキテクチャと、この製品の概要について説明します。また、Oracle Clusterwareの管理とデプロイメントについても説明します。

このマニュアルの情報は、特に指定がないかぎり、すべてのプラットフォーム上で動作するOracle Clusterwareに適用されます。このマニュアルの内容は、他のOracleマニュアルにおけるシングル・インスタンスのOracle Databaseの管理およびデプロイメントに関する項目の説明を補足するものです。必要に応じて、プラットフォーム固有のマニュアルも参照してください。ここでは、次の内容について説明します。

- 対象読者

- ドキュメントのアクセシビリティについて

- 関連ドキュメント

- 表記規則

対象読者

『Oracle Clusterware管理およびデプロイメント・ガイド』は、次のタスクを実行するデータベース管理者、ネットワーク管理者およびシステム管理者を対象としています。

- Oracle Real Application Clusters(Oracle RAC)データベースのインストールおよび構成

- Oracle RACデータベースの管理

- Oracle RACを使用するクラスタおよびネットワークの管理およびトラブルシューティング

ドキュメントのアクセシビリティについて

オラクル社のアクセシビリティについての詳細情報は、Oracle Accessibility ProgramのWebサイトhttp://www.oracle.com/pls/topic/lookup?ctx=acc&id=docaccを参照してください。

Oracle Supportへのアクセス

Oracleサポート・サービスでは、My Oracle Supportを通して電子支援サービスを提供しています。詳細情報は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=info)か、聴覚に障害のあるお客様は(http://www.oracle.com/pls/topic/lookup?ctx=acc&id=trs)を参照してください。

関連ドキュメント

詳細は、次のOracleドキュメントを参照してください。

- プラットフォーム固有のOracle ClusterwareおよびOracle RACのインストレーション・ガイド
Oracle Database 11gのプラットフォーム固有の各インストール・メディアには、プラットフォーム固有のOracle ClusterwareおよびOracle RACのインストールおよび構成ガイド(HTML形式およびPDF形式)が含まれています。これらのインストール・ガイドには、Oracle ClusterwareおよびOracle RACが動作するUNIX、LinuxおよびWindowsの様々なプラットフォームに対するインストール前、インストールおよびインストール後の情報が記載されています。

- 『Oracle Database 2日でReal Application Clustersガイド』
このタスク指向型のガイドにより、Oracle Linux 5.0を使用した2ノード・システム上で、Oracle ClusterwareおよびOracle Real Application Clustersをインストール、構成、管理するための基本手順を理解できます。

- 『Oracle Real Application Clusters管理およびデプロイメント・ガイド』
このドキュメントは重要であり、インスタンスの管理、チューニング、バックアップとリカバリ、サービスの管理などについて説明しています。

- 『Oracle Database 2日でデータベース管理者』

- 『Oracle Database管理者ガイド』

- 『Oracle Database Net Services管理者ガイド』

- 『Oracle Databaseプラットフォーム・ガイドfor Microsoft Windows』

- 『Oracle Database管理者リファレンスfor Linux and UNIX-Based Operating Systems』

- 『Oracle Databaseエラー・メッセージ』

表記規則

このマニュアルでは次の表記規則を使用します。

規則

意味

太字

太字は、操作に関連するGraphical User Interface要素、または本文中で定義されている用語および用語集に記載されている用語を示します。

イタリック体

イタリックは、ドキュメントのタイトル、強調またはユーザーが特定の値を指定するプレースホルダ変数を示します。

固定幅フォント

固定幅フォントは、段落内のコマンド、URL、サンプル内のコード、画面に表示されるテキスト、または入力するテキストを示します。

Oracle Clusterwareの管理およびデプロイメントに関する新機能

この章では、Oracle Clusterwareに関するOracle Database 11gリリース2(11.2)および11gリリース2(11.2.0.1)の新機能について説明します。

Oracle Clusterwareに関するOracle Database 11gリリース2(11.2.0.4)の新機能

この項では、Oracle Database 11gリリース2 (11.2.0.4)のOracle Clusterwareの管理およびデプロイメント機能について説明します。

- Oracle RAC構成監査ツール
Oracle Real Application Clusters (Oracle RAC)構成監査ツール(RACcheck)は、構成の既知の問題、ベスト・プラクティス、通常のヘルス・チェックおよびアップグレード前後のベスト・プラクティスに対して、単一インスタンスおよびOracle RACデータベースのインストールを評価します。

関連項目:
詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- Oracleトレース・ファイル・アナライザ・コレクタ
Oracleトレース・ファイル・アナライザ(TFA)コレクタは、Oracle Clusterware、Oracle Grid InfrastructureおよびOracle Real Application Clusters (Oracle RAC)システムの診断データ収集を簡素化し、診断を収集するためのユーティリティです。

関連項目:
「Oracleトレース・ファイル・アナライザ・コレクタ」

Oracle Clusterwareに関するOracle Database 11gリリース2(11.2)の新機能

ここでは、Oracle Database 11gリリース2(11.2)からのOracle Clusterwareの管理およびデプロイメントに関する機能について説明します。

関連項目:
Oracle Database 11gリリース2(11.2)の機能の詳細は、『Oracle Database新機能ガイド』を参照してください。

- Oracle Real Application Clusters One Node(Oracle RAC One Node)
Oracle Real Application Clusters One Node(Oracle RAC One Node)は、強化された高可用性をシングル・インスタンス・データベースに提供し、データベースを計画済停止時間および計画外停止時間の両方から保護します。Oracle RAC One Nodeよって、次のことが実現されます。

- 常にオン状態のシングル・インスタンス・データベース・サービス

- データベース・サーバーのより優れた統合

- 強化されたサーバーの仮想化

- 完全なOracle RACを対象にした低コストの開発とテスト・プラットフォーム

さらに、Oracle RAC One Nodeは、データベース記憶域の統合を容易にし、データベース環境を標準化します。必要に応じて、停止時間や中断を発生させることなく、完全な複数ノードOracle RACデータベースにアップグレードできます。

オンライン・データベース再配置を使用すると、サービスの可用性を維持したまま、あるノードから別のノードにOracle RAC One Nodeデータベースを再配置できます。

この機能には、Oracle RAC One Nodeとオンライン・データベース再配置の両方に対するサーバー制御ユーティリティ(SRVCTL)の拡張が含まれます。

関連項目:
Oracle RAC One Nodeの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- Oracle Grid Infrastructureソフトウェアの構成ウィザード
この構成ウィザードを使用すると、ソフトウェアのみのインストールを実行した後にOracle Grid Infrastructureソフトウェアを構成できます。このウィザードでは、順を追ってプロセスが進められるため、config_params構成ファイルを手動で編集する必要がなくなりました。

関連項目:
詳細は、「Oracle Grid Infrastructureの構成」を参照してください。

- クラスタ状態モニター(CHM)
クラスタ状態モニター(CHM)はリアルタイムにオペレーティング・システムのメトリックを収集し、後で分析するためにリポジトリに格納し、Oracleサポートの支援を受けながら、Oracle ClusterwareおよびOracle RACの多くの問題の原因を判断します。また、ノードでのメモリーのオーバーコミットメントを検出するためのメトリックを提供することによって、Oracle Databaseにおけるサービスのクオリティ管理(Oracle Database QoS Management)とあわせて使用することもできます。この情報を使用して、Oracle Database QoS Managementは、負荷を軽減し、既存のワークロードを保持することができます。

関連項目:

- 詳細は、「クラスタ状態モニター」を参照してください。

- Oracle Database QoS Managementの詳細は、『Oracle Database Quality of Service Managementユーザーズ・ガイド』を参照してください。

- グリッド・インフラストラクチャ管理用のSRVCTLの拡張
サーバー制御ユーティリティ(SRVCTL)の拡張では、新しい様々なOracle Grid InfrastructureとOracle RACリソースの管理が簡略化されます。

関連項目:
SRVCTLの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- 冗長なインターコネクトの使用
以前のリリースでは、インターコネクトの冗長なネットワークを利用するために、ボンディング、トランキング、チーミングなどの類似テクノロジが必要でした。現在、Oracle Grid InfrastructureおよびOracle RACは、他のネットワーク・テクノロジを使用しなくても、冗長なネットワーク・インターコネクトを利用して、クラスタ内における最適な通信を向上できるようになりました。

冗長なインターコネクトの使用は、複数(最高4つ)のプライベート・ネットワーク(インターコネクトとも呼ばれる)全体で、ロード・バランシングおよび高可用性を可能にします。

関連項目:
詳細は、「冗長なインターコネクトの使用」を参照してください。

- Oracle Database Quality of Service Managementサーバー
システム管理者は、Oracle Database Quality of Service Managementサーバーを使用して、正確なランタイム・パフォーマンスとリソース・メトリックを相関させ、ポリシーベースのパフォーマンスの目標を達成するために推奨リソース調整を生成するエキスパート・システムで分析することで、Oracle Databaseクラスタでホストされるアプリケーションのサービス・レベルを管理できます。

関連項目:
詳細は、『Oracle Database Quality of Service Managementユーザーズ・ガイド』を参照してください。

Oracle Clusterwareに関するOracle Database 11gリリース2(11.2.0.1)の新機能

ここでは、Oracle Database 11gリリース2(11.2.0.1)からのOracle Clusterwareの管理およびデプロイメントに関する機能について説明します。

- Oracle Restart
Oracle Restartでは、Oracle Databaseおよびリスナーを自動的に再起動する機能が提供されます。

スタンドアロン・サーバーの場合、Oracle Restartによって、Oracle Automatic Storage Management (Oracle ASM)、Oracle DatabaseおよびリスナーなどのOracleプロセスがサーバー上で監視され、自動的に再起動されます。Oracle RestartおよびOracle ASMによって、スタンドアロン・サーバーにグリッド・インフラストラクチャが提供されます。

関連項目:
Oracle Restartの詳細は、『Oracle Database管理者ガイド』を参照してください。

- Oracle Clusterwareのリソース・モデリングの向上
Oracle Clusterwareでは、サード・パーティ製のアプリケーションを含め、異なるタイプのアプリケーションおよびプロセスを管理できます。アプリケーション間およびプロセス間の依存関係を作成し、それらを1つのエンティティとして管理できます。

Oracle Clusterwareでは、リソース、リソース・タイプ、サーバー、サーバー・プールなどの様々なエンティティを使用してアプリケーションおよびプロセスが管理されます。オラクル社は、Application Program Interface(API)の改訂に加え、これらのエンティティを管理する新しいAPIセットを作成しました。

関連項目:

- サーバーおよびサーバー・プールの詳細は、「ポリシー・ベースのクラスタおよび容量の管理」を参照してください。

- リソースおよびリソース・タイプの詳細は、「Oracle Clusterwareリソースおよびエージェント」を参照してください。

- APIの詳細は、付録F「Oracle Clusterware C Application Program Interface」を参照してください。

- ポリシー・ベースのクラスタおよび容量の管理
クラスタをサーバー・プールに論理分割すると、サーバーの容量管理が向上します。カーディナリティ・ベースの方法によって、クラスタ内でリソースを実行する場所および方法を決定できます。その後、ノードは匿名になり、ノードにリソースを配置する際にノードを特定する必要がなくなります。

サーバー・プールには様々なレベルの重要度が割り当てられます。障害が発生した場合、Oracle Clusterwareは、ユーザー定義のポリシーに基づいて、アプリケーションの容量をクラスタ内の重要度が低い別のサーバー・プールに効率的に再割り当てします。この機能によって、フェイルオーバーおよび動的な容量割当てをより短時間で実行できます。

クラスタは、ユーザー定義のポリシーによってリソース消費を考慮して分離されたサーバー・プール内の(アプリケーションおよびデータベースとして定義された)リソースをホスティングできます。たとえば、個別のサーバー・プール内のすべての人事アプリケーション、会計アプリケーションおよび電子メール・アプリケーションの実行を選択できます。

関連項目:
詳細は、「ポリシー・ベースのクラスタおよび容量の管理」を参照してください。

- ロール別管理
ロール別管理を使用すると、複数のアプリケーションおよびデータベースで同じクラスタ・リソースおよびハードウェア・リソースを共有しながら、他の管理グループによって妨げられることを相互に防ぐことができます。

関連項目:
詳細は、「ロール別管理」を参照してください。

- クラスタ時刻同期化サービス
ベンダーの時刻同期ソフトウェア(UNIXのNTPやWindow Timeサービスなど)がインストールされていない場合は、クラスタ時刻同期化サービスによって、クラスタ内のすべてのノードのシステム時間が同期化されます。クラスタ全体でのシステム時間の同期化は、Oracleクラスタを正常に実行するための前提条件であり、これによりOracleクラスタ環境全体の信頼性が向上します。

関連項目:
詳細は、「クラスタの時間管理」を参照してください。

- Oracle Automatic Storage Management によるOracle Cluster Registryおよび投票ディスクの格納
OCRおよび投票ディスクは、Oracle Automatic Storage Management (Oracle ASM)に格納できます。Oracle ASMのPST(Partnership and Status Table)は複数のディスクにレプリケートされ、OCRを格納するために拡張されます。そのため、基礎となるディスク・グループ内のディスクと同数のディスクを失っても、OCRは有効で、ディスク障害に応じて再配置できます。

Oracle ASMは、投票ディスクの格納用にいくつかのブロックを各Oracle ASMディスクの一定の場所に確保しています。投票ディスクが保持されているディスクで障害が発生すると、Oracle ASMはこのデータを格納できる別のディスクを選択します。

OCRおよび投票ディスクをOracle ASMに格納することで、サード・パーティのクラスタ・ボリューム・マネージャが不要になり、Oracle ClusterwareインストールでOCRおよび投票ディスクのためにディスク・パーティションを管理する煩雑さがなくなります。

注意:
以前のバージョンのOracle Clusterwareで投票ディスクのバックアップおよびリカバリに使用されたddコマンドは、Oracle Clusterware 11gリリース2(11.2)ではサポートされません。

関連項目:
OCRおよび投票ディスクの詳細は、第3章「Oracle Cluster Registryおよび投票ディスクの管理」を参照してください。

- Oracle Automatic Storage Management クラスタ・ファイル・システム
Oracle Automatic Storage Management クラスタ・ファイル・システム(Oracle ACFS)は、Oracle Databaseファイル以外のファイルに堅牢で汎用的なエクステント・ベースのジャーナル・ファイル・システムを提供することでOracle ASMを拡張します。Oracle ACFSでは、Oracleのバイナリ、レポート・ファイル、トレース・ファイル、アラート・ログ、その他のアプリケーション・データ・ファイルなどのファイルがサポートされます。Oracle ACFSを追加することで、Oracle ASMは、Oracleのデータベース・ファイルとデータベース・ファイル以外のファイルの両方に対応する完全なストレージ管理ソリューションになります。

また、Oracle ACFSには次の機能もあります。

- 64ビットのファイル・サイズおよびファイル・システム・データ構造サイズを持つ大規模ファイルをサポートすることで、エクサバイトに対応するファイルおよびファイル・システム容量をサポートします。

- エクステント・ベースのストレージ割当てによってパフォーマンスを向上させます。

- ログ・ベースのメタデータ・トランザクション・エンジンを使用して、ファイル・システムの整合性および高速リカバリを実現します。

- Network File System、Common Internet File Systemなどの業界標準プロトコルによってリモート・クライアントにエクスポートできます。

Oracle ACFSを使用すると、サード・パーティのクラスタ・ファイル・システム・ソリューションが不要になる一方で、単一ノード環境でもOracle Real Application Clusters(Oracle RAC)およびグリッド・コンピューティング環境でもすべてのファイル・タイプの管理が合理化され、自動化され、簡素化されます。

Oracle ACFSは、停止時間なしにファイルシステムの動的な拡張および縮小をサポートします。また、ハードウェアのRAID機能に加えて、Oracle ASMのミラー化およびストライプ化機能を利用できます。

関連項目:
Oracle ACFSの使用の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- Oracle Clusterwareのアウトオブプレース・アップグレード
Oracle Clusterwareの新しいバージョンを別のホームにインストールできます。アップグレードの前にOracle Clusterwareを別のホームにインストールすると、クラスタのアップグレードに必要な計画停止時間が短くなるため、可用性サービス・レベルの条件を満たすのに役立ちます。Oracle Clusterwareソフトウェアをインストールした後で、以前のバージョンのOracle Clusterwareソフトウェアを停止して、ノードごとに新しいバージョンを起動できます(これは、ローリング・アップグレードと呼ばれます)。

関連項目:
アウトオブプレース・アップグレードの詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- クラスタ検証ユーティリティの拡張
クラスタ検証ユーティリティ(CVU)の拡張には、クラスタでの次のチェックが含まれます。

- ノード追加の前後

- ノード削除の後

- ストレージ追加の前後

- ストレージ削除の前後

- ネットワーク変更後

- Oracle ASMの整合性

これらのチェックは、コマンドライン・コマンドの他に、Oracle Universal Installer、Database Configuration AssistantおよびOracle Enterprise Managerでも実行できます。これらの拡張により、クラスタ環境の実装と構成が容易になり、クラスタ環境の問題を診断する支援機能が提供されるため、構成およびインストールの機能が向上しています。

関連項目:

- CVUコマンドの詳細は、付録A「クラスタ検証ユーティリティのリファレンス」を参照してください。

- インストール時に実行されるCVUチェックの詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- クラスタ検証ユーティリティとOracle Universal Installerとの統合の拡張
この機能によって、CVUとOracle Universal Installerが完全に統合され、複数ノードのチェックが自動的に実行されます。これによって、Oracleソフトウェアをインストールする前に、クラスタ設定の問題が検出および修正されます。

CVUは、Oracle RACデプロイメントの様々な段階(Oracle Clusterwareのインストール、Oracle RACデータベースのインストール、Oracle RACデータベースの構成など)でクラスタ・コンポーネントの妥当性をチェックし、クラスタの準備状況を検証します。また、Oracle RACデプロイメントの特定の段階が正常に完了したことを検証する場合にも役立ちます。

関連項目:
インストール時に実行されるCVUチェックの詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- グリッド・プラグ・アンド・プレイ
グリッド・プラグ・アンド・プレイを使用すると、データ・センターを動的なグリッド・インフラストラクチャに移動できます。これによって、アプリケーションを統合してアプリケーションの管理コストを削減でき、ワークロードでの必要性に応じて容易にスケールを調整することができる高可用性の環境が提供されます。クラスタへのサーバーの追加を容易にし、さらにより動的なグリッドをサポートするために、Oracle RAC 11gリリース2(11.2)では数多くの変更が行われています。

これまでは、クラスタ内のサーバーを追加または削除しようとすると、様々な準備を手動で行う必要がありました。このリリースでは、次のタスクを自動化することで、グリッドのプラグ・アンド・プレイは、サーバー・ノードのインストール、構成および管理にかかるコストを低減できます。

- Oracle RACデータベース・インスタンスの追加

- ノード自体の適切なネットワークIDのネゴシエート

- 構成プロファイルからの操作に必要な追加情報の取得

- ネットワーク上でホスト名とアドレスを解決可能できるようにするための、プロファイル・データを使用したノード自体の構成または再構成

また、ノードの追加および削除に必要な手順の数が少なくなっています。

Oracle Enterprise Managerには、グリッド・プラグ・アンド・プレイに対応するための変更がすぐに反映されます。

- Oracle Enterprise ManagerによるOracle ACFSのサポート
この機能によって、Oracle ASMテクノロジを拡張する総合的な管理ソリューションが提供され、シングル・インスタンスのOracle DatabaseおよびOracle Clusterwareの両方の構成で、ASMでは直接サポートされていない汎用ファイルがサポートされます。また、Oracle Enterprise ManagerによるOracle ASMの既存のサポートも強化され、Oracle ASM動的ボリューム・マネージャ(ADVM)およびOracle ASMクラスタ・ファイル・システム(ACFS)・テクノロジをサポートするための新しい機能が追加されます。

Oracle Automatic Storage Management クラスタ・ファイル・システム(Oracle ACFS)は、Oracle ASMテクノロジを拡張するスケーラブルなファイル・システムおよびストレージ管理として設計されています。単一ホストおよびクラスタの両方の構成においてすべてのアプリケーション・データがサポートされ、既存のOracle ASMの機能を活用して次のことが実現されます。

- ファイル・システムの動的なサイズ変更

- Oracle ASMの自動分散によるパフォーマンスの最大化

- 使用可能なすべてのディスク間でのファイル・システムの分散およびストライプ化

- Oracle ASMのミラー化およびパリティ保護によるストレージの信頼性の確保

Oracle ACFSによって、クラスタ全体のデータベース以外のカスタマ・ファイルにアクセスするための複数プラットフォーム・ストレージ管理ソリューションが提供されます。

関連項目:
Oracle ACFSの使用の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- Oracle Enterprise ManagerベースのOracle Clusterwareリソースの管理
Oracle Enterprise Managerを使用して、Oracle Clusterwareリソースを管理できます。Oracle Clusterwareでリソースを作成および構成して、クラスタにデプロイすると、監視および管理することもできます。

関連項目:
「Oracle Enterprise Managerを使用したリソースの追加」

- Oracle Clusterwareにパッチを適用する場合の停止時間の排除
クラスタ全体を停止することなくOracle ClusterwareおよびOracle RACへのパッチの適用を完了できます。これによって、クラスタ・ソフトウェアおよびOracle Databaseのアウトオブプレース・アップグレードが可能になり、Oracle RAC環境で必要なメンテナンスのための計画停止時間が短くなります。

- Oracle ClusterwareおよびOracle RACのプロビジョニングの向上
この機能は、Oracle RACシステムのプロビジョニングのための簡素化されたソリューションを提供します。Oracle Enterprise Manager Database Controlは、新しいノードでのプロビジョニング・タスクを自動化することで、Oracle RACクラスタの拡張を可能にします。

1 Oracle Clusterwareの概要

内容は次のとおりです。

- Oracle Clusterwareとは

- Oracle Clusterwareのシステム要件の理解

- Oracle Clusterwareのプラットフォーム固有のソフトウェア・コンポーネントの概要

- Oracle Clusterwareのインストールの概要

- Oracle Clusterwareのアップグレードの概要

- Oracle Clusterware環境の管理の概要

- グリッド環境でのOracle Clusterwareのクローニングおよび拡張の概要

- Oracle Clusterwareの高可用性フレームワークおよびAPIの概要

Oracle Clusterwareとは

Oracle Clusterwareを使用すると、サーバーが相互に通信することが可能になるため、1つの集合ユニットとして機能しているように見えます。このようなサーバーの組合せは、一般にクラスタと呼ばれます。これらのサーバーはスタンドアロン・サーバーですが、各サーバーに他のサーバーと通信を行う追加プロセスが含まれています。このように、個々のサーバーはアプリケーションおよびエンド・ユーザーから1つのシステムとして認識されます。

Oracle Clusterwareでは、Oracle Real Application Clusters(Oracle RAC)の実行に必要なインフラストラクチャが提供されます。Oracle Clusterwareでは、仮想IP(VIP)アドレス、データベース、リスナー、サービスなどのリソースも管理されます。これらのリソースは、通常、ora.host_name.resource_nameという名前です。これらのリソースの編集は、My Oracle Supportからの明示的な指示がある場合を除いて、サポートされていません。

関連項目:
詳細は、第2章「Oracle Clusterwareの管理」および第6章「Oracle Clusterwareを使用したアプリケーションの高可用性の実現」を参照してください。

図1-1に、Oracle Clusterwareを使用して基本的なシングル・インスタンスのOracle Databaseアーキテクチャを拡張する構成を示します。図1-1に示すクラスタは、Oracle Databaseを実行しており、アプリケーションおよびユーザーにアクティブにサービスを提供しています。Oracle Clusterwareを使用すると、同じ高可用性メカニズムを使用して、Oracle Databaseとカスタム・アプリケーションの高可用性を実現できます。

図1-1 Oracle Clusterwareの構成

クラスタの使用によるメリットは、次のとおりです。

- アプリケーションのスケーラビリティ実現

- スケーラブルなシステムを低コストの汎用ハードウェアと組み合せることで、インフラストラクチャの総所有コストを削減できます。

- フェイルオーバーの機能

- サーバーをクラスタに追加してクラスタ・リソースを増やすことによって、クラスタ対応アプリケーションのスループットが必要に応じて向上します。

- クラスタ内のすべてのノードでアプリケーションを実行できるため、クラスタ対応アプリケーションのスループットが向上します。

- 依存プロセスが確実に起動されるように計画した順序でアプリケーションの起動をプログラムする機能

- プロセスの監視、およびプロセスが停止した場合に再起動する機能

- ハードウェアやソフトウェアの障害に起因する計画外停止時間を解消できます。

- ソフトウェア・メンテナンスのための計画停止時間を削減または解消できます。

Oracle Clusterwareをプログラムして、ユーザー・アプリケーションとOracle Databaseの可用性を管理できます。Oracle RAC環境では、Oracle Clusterwareによってすべてのリソースが自動的に管理されます。Oracle Clusterwareが管理するすべてのアプリケーションおよびプロセスは、クラスタ・リソースまたはローカル・リソースのいずれかです。

Oracle Clusterwareは、Oracle RACを使用するために必要であり、Oracle RACが動作するプラットフォームで必要とされる唯一のクラスタウェアです。Oracle RACでは、引き続き特定のプラットフォームにおいて多くのサード・パーティ製クラスタウェア製品がサポートされますが、Oracle Clusterwareもインストールして使用する必要があります。Oracle Clusterwareをインストールして実行する各サーバーでは、同じオペレーティング・システムを実行している必要があります。

Oracle Clusterwareの使用により、ベンダー固有のクラスタウェアが不要になり、Oracleソフトウェアのみを使用するメリットが発揮されます。オラクル社では、Oracle Automatic Storage Management(Oracle ASM)によるディスク管理から、Oracle DatabaseおよびOracle RACによるデータ管理までのあらゆるソフトウェア・ソリューションを提供しています。また、Oracle ServicesなどのOracle Database機能では、基礎となるOracle Clusterwareの高可用性フレームワークと組み合せて使用できる拡張機能を提供しています。

Oracle Clusterwareには、バイナリ以外に、ノードのメンバーシップ情報を記録する投票ディスク・ファイルと、クラスタ構成情報を記録するOracle Cluster Registry(OCR)の2つのストアド・コンポーネントがあります。投票ディスクおよびOCRは、すべてのクラスタ・メンバー・ノードに使用可能な共有記憶域に存在する必要があります。

Oracle Clusterwareのシステム要件の理解

Oracle Clusterwareを使用するには、ハードウェアとソフトウェアの概念および要件を理解する必要があります。詳細は、次の項を参照してください。

- Oracle Clusterwareのハードウェアの概念および要件

- Oracle Clusterwareのオペレーティング・システムの概念および要件

- Oracle Clusterwareのソフトウェアの概念および要件

- Oracle Clusterwareのネットワーク構成の概念

- Oracle Clusterwareのアップグレードの概要

Oracle Clusterwareのハードウェアの概念および要件

注意:
多くのハードウェア・ベンダーが、1つのクラスタに単一の製品を使用してクラスタ構成を検証しています。クラスタリングを扱うのが初めてのユーザーは、この項の情報を使用することで、クラスタを作成するためのハードウェアを購入する際に、ハードウェアの調達に関する作業を簡素化できます。

クラスタは、1つ以上のサーバーで構成されます。クラスタ内のサーバーのハードウェア(つまりクラスタ・メンバーまたはノード)は、スタンドアロン・サーバーに類似しています。ただし、クラスタの一部であるサーバー(ノードまたはクラスタ・メンバーとも呼ばれる)には第2のネットワークが必要です。この第2のネットワークは、インターコネクトと呼ばれます。このため、クラスタ・メンバー・ノードには、2つ以上のネットワーク・インタフェース・カードが必要です(1つはパブリック・ネットワーク用、もう1つはプライベート・ネットワーク用)。インターコネクト・ネットワークは、クラスタ内のノードのみがアクセスできる単一のスイッチ(または複数のスイッチ)を使用するプライベート・ネットワークです。脚注1

注意:
Oracleでは、Oracle Clusterwareのインターコネクトとして、クロスオーバー・ケーブルの使用はサポートされていません。

クラスタのサイズは、クラスタで実行するワークロードの要件と、クラスタで構成したノードの数によって決まります。高可用性対応のクラスタを実装する場合は、インフラストラクチャのすべてのコンポーネントで次の冗長構成を使用します。

- パブリック・ネットワーク用で、1つのアドレスを提供するために搭載される2つ以上のネットワーク・インタフェース

- プライベート・インターコネクト・ネットワーク用の2つ以上のネットワーク・インタフェース

クラスタでは、クラスタ内の各サーバーに接続されたクラスタ対応ストレージ脚注2が必要です。これは、マルチホスト・デバイスと呼ばれることもあります。Oracle Clusterwareでは、NFS、iSCSI、Direct Attached Storage(DAS)、Storage Area Network(SAN)およびNetwork Attached Storage(NAS)がサポートされます。

ストレージの冗長性を確保するには、通常、各サーバーからクラスタ対応ストレージに対して最低2つの接続を用意します。実際のI/O要件によっては、さらに多くの接続を用意することもあります。ストレージ・サブシステムを選択する際に、クラスタ全体のI/O要件を考慮することは重要です。

ほとんどのサーバーには、内部に1つ以上のローカル・ディスクが含まれます。通常、このディスクは、オペレーティング・システム・バイナリ用に使用されますが、ユーザーはこのディスクをOracleソフトウェアのバイナリ用としても使用できます。各サーバーでOracleバイナリの独自コピーを保持することのメリットは、高可用性が向上することであり、1つのバイナリの破損が同時にクラスタ内のすべてのノードに影響を及ぼすことがなくなります。また、これによってローリング・アップグレードも可能になり、停止時間を削減できます。

Oracle Clusterwareのオペレーティング・システムの概念および要件

各サーバーには、インストールするOracle Clusterwareのリリースの動作が保証されたオペレーティング・システムが存在する必要があります。詳細は、ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』またはMy Oracle Support(以前のOracleMetaLink)の保証マトリックスを参照してください(次のURLから入手可能)。

http://www.oracle.com/technetwork/database/clustering/tech-generic-unix-new-166583.html

オペレーティング・システムをインストールして実行したら、Oracle Clusterwareをインストールしてクラスタを作成できます。Oracle Clusterwareは、Oracle Databaseとは別にインストールされます。Oracle Clusterwareのインストール後に、Oracle DatabaseまたはOracle RACをクラスタ内の任意のノードにインストールできます。

関連項目:
プラットフォーム固有のOracle Databaseのインストレーション・ガイド

Oracle Clusterwareのソフトウェアの概念および要件

Oracle Clusterwareでは、投票ディスク・ファイルを使用して、フェンシングの提供およびクラスタ・ノードのメンバーシップの判断が行われます。OCRではクラスタ構成情報が提供されます。Oracle ClusterwareファイルはOracle ASMまたは一般共有ディスク記憶域のいずれかに格納できます。ファイルの冗長性が提供されない記憶域でOracle Clusterwareを構成する場合は、OCRおよび投票ディスク用に複数の場所を構成することをお薦めします。次に、投票ディスクおよびOCRについて説明します。

- 投票ディスク
Oracle Clusterwareでは、投票ディスク・ファイルを使用して、クラスタのメンバーであるノードを判断します。投票ディスクはOracle ASMまたは共有記憶域で構成できます。

投票ディスクをOracle ASMで構成する場合は、投票ディスクを手動で構成する必要はありません。ディスク・グループの冗長性に応じて、適切な数の投票ディスクが作成されます。

投票ディスクをOracle ASMで構成しない場合は、高可用性を確保するために、物理的に異なるストレージに3つ以上の投票ディスクを配置することをお薦めします。これによって、シングル・ポイント障害を回避できます。単一の投票ディスクを構成した場合、冗長性のために外部のミラー化を使用することをお薦めします。

外部冗長性を提供するディスク・アレイなどのストレージ・デバイスを持たないかぎり、3つ以上の投票ディスクを使用する必要があります。6つ以上の投票ディスクは使用しないことをお薦めします。サポートされる投票ディスクの最大数は15です。

- Oracle Cluster Registry
Oracle Clusterwareでは、Oracle Cluster Registry(OCR)を使用して、Oracle Clusterwareで制御するOracle RACデータベース、リスナー、仮想IPアドレス(VIP)、サービスと任意のアプリケーションなどのコンポーネントの情報を格納および管理します。OCRには、一連のキーと値のペアからなる構成情報がツリー構造に格納されます。クラスタの高可用性を確保するために、複数のOCRの場所を定義することをお薦めします。さらに、次のような特徴があります。

- 最大5つのOCRの場所を使用できます。

- 各OCRの場所は、クラスタ内のすべてのノードがアクセスできる共有記憶域に存在している必要があります。

- 障害が発生したOCRの場所がOCRの唯一の場所でないかぎり、オンラインで交換できます。

- OCRは、Oracle Enterprise Manager、Oracle Clusterware制御ユーティリティ(CRSCTL)、サーバー制御ユーティリティ(SRVCTL)、OCR構成ユーティリティ(OCRCONFIG)、Database Configuration Assistant(DBCA)などのサポートされているユーティリティを介して更新する必要があります。

関連項目:
投票ディスクとOCRの詳細は、第2章「Oracle Clusterwareの管理」を参照してください。

Oracle Clusterwareのネットワーク構成の概念

Oracle Clusterwareを使用すると、クラスタのネットワーク要件の自己管理を介した、動的なグリッド・インフラストラクチャが可能になります。Oracle Clusterware 11gリリース2(11.2)では、VIPアドレスおよびSCANアドレスへの動的ホスト構成プロトコル(DHCP)の使用がサポートされていますが、パブリック・アドレスではサポートされていません。DHCPでは、ホストのIPアドレスの動的構成が提供されますが、外部クライアントに役立つ名前を生成する最適な方法は提供されません。

Oracle RACの使用時には、すべてのクライアントがデータベースに到達できる必要があります。つまり、クラスタのすべてのパブリック・アドレス、VIPアドレスおよびSCANアドレスはクライアントによって解決される必要があります。この問題は、Oracleグリッド・ネーミング・サービス(GNS)をクラスタに追加することによって解決します。GNSは会社のドメイン名サービス(DNS)にリンクされるため、クライアントはこの動的アドレスを解決し、クラスタおよびデータベースに透過的に接続できます。クラスタでGNSをアクティブ化するには、パブリック・ネットワークにDHCPサービスが必要です。

GNSの実装

GNSを実装するには、ネットワーク管理者と協力し、パブリック・ネットワークでGNS VIPのIPアドレスを取得する必要があります。DNSでは、GNS VIPを使用してクラスタへのアクセスのリクエストがGNSに転送されます。また、DNS管理者と協力し、ドメインをクラスタに委任する必要があります。これは、別のドメインまたは既存のドメインのサブドメインです。DNSサーバーは、この新しいドメインに対するすべてのリクエストをGNS VIPに転送するように構成されている必要があります。各クラスタには独自のGNSがあるため、制御される一意のドメインを割り当てる必要があります。

GNSおよびGNS VIPは、クラスタ内の1つのノードで実行されます。GNSデーモンは、ポート53を使用しているGNS VIPでDNSリクエストをリスニングします。Oracle Clusterwareによって、GNSおよびGNS VIPはいつでも使用できるように管理されます。GNSが実行されているサーバーで障害が発生した場合、Oracle ClusterwareによってGNSおよびGNS VIPはクラスタ内の別のノードにフェイルオーバーされます。

Oracle Clusterwareでは、ネットワークでDHCPを使用してIPアドレスおよびその他のネットワーク情報(使用するゲートウェイ、DNSサーバー、ドメイン、NTPサーバーなど)がDHCPサーバーから取得されます。まず、Oracle Clusterwareでは、クラスタを構成中に、必要なIPアドレスが取得され、Oracle Clusterwareリソースは、GNSなど、DHCPサーバーから取得した正しい情報で更新されます。

単一クライアント・アクセス名(SCAN)

Oracle RAC 11gリリース2(11.2)では、単一クライアント・アクセス名(SCAN)が導入されています。SCANは、DNSまたはGNSのIPアドレス(1つ以上3つ以下)に登録されているドメイン名です。GNSおよびDHCPを使用している場合、Oracle Clusterwareでは、クラスタの構成時に指定されるSCAN名のVIPアドレスが構成されます。

ノードVIPおよび3つのSCAN VIPは、GNSを使用時している場合、DHCPサーバーから取得されます。新しいサーバーがクラスタに追加されると、Oracle Clusterwareでは、必要なVIPアドレスはDHCPサーバーから動的に取得されてクラスタ・リソースが更新され、GNSを介してサーバーにアクセスできるようになります。

例1-1に、ドメインをクラスタに委任するDNSエントリを示します。

例1-1 DNSエントリ

# Delegate to gns on mycluster
mycluster.example.com NS myclustergns.example.com
#Let the world know to go to the GNS vip
myclustergns.example.com. 10.9.8.7

関連項目:
DNSを使用して解決する方法の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

アドレスの手動構成

別の方法として、アドレスの手動構成も選択できます。この場合には次の内容を構成します。

- ノードごとに1つのパブリック・ホスト名

- ノードごとに1つのVIPアドレス。
クラスタ内の各ノードにVIPアドレスを割り当てる必要があります。各VIPアドレスは、ノードのパブリックIPアドレスと同じサブネット上に存在し、DNSで名前を割り当てられているアドレスである必要があります。また、Oracle Clusterwareのインストール前は、各VIPアドレスがネットワーク内から使用されず、pingの実行も不可能であることが必要です。

- クラスタ全体で最大3つのSCANアドレス。

注意:
SCANは、パブリック・ネットワークの1つ以上のアドレスに解決される必要があります。高可用性およびスケーラビリティを確保するために、SCANが3つのアドレスに解決されるように構成することをお薦めします。

関連項目:
システム要件およびネットワーク・アドレスの構成の詳細は、ご使用のプラットフォーム固有の『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

Oracle Clusterwareのプラットフォーム固有のソフトウェア・コンポーネントの概要

Oracle Clusterwareの動作時には、プラットフォーム固有の一部のプロセスまたはサービスがクラスタ内の各ノードで実行されます。この項では、これらの様々なプロセスおよびサービスについて説明します。

Oracle Clusterwareのスタック

Oracle Clusterwareは、クラスタ・レディ・サービス(CRS)・デーモン(crsd)が常駐する上位スタック、およびOracle高可用性サービス・デーモン(ohasd)が常駐する下位スタックの2つの独立したスタックで構成されます。これらの2つのスタックには、クラスタ操作を円滑化する複数のプロセスがあります。次の各項では、これらのスタックについてさらに詳しく説明します。

- クラスタ・レディ・サービス・スタック

- Oracle高可用性サービス・スタック

クラスタ・レディ・サービス・スタック

この項のリストでは、CRSを構成するプロセスについて説明します。このリストには、LinuxおよびUNIXオペレーティング・システムのプロセスまたはWindowsのサービスであるコンポーネントが含まれます。

- クラスタ・レディ・サービス(CRS):クラスタで高可用性操作を管理する主要プログラム。
CRSデーモン(crsd)は、各リソースのOCRに格納されている構成情報に基づいて、クラスタ・リソースを管理します。これには、起動、停止、監視およびフェイルオーバー操作が含まれます。crsdプロセスは、リソースのステータスが変更されるとイベントを生成します。Oracle RACをインストールしている場合、crsdプロセスはOracle Databaseインスタンスやリスナーなどを監視し、障害が発生した場合にこれらのコンポーネントを自動的に再起動します。

- クラスタ同期サービス(CSS): クラスタのメンバーシップを管理し、ノードがクラスタに対して追加または削除された際にメンバーに通知することによって、クラスタ構成を管理します。保証されているサード・パーティ製クラスタウェアを使用している場合、CSSプロセスは、クラスタウェアとともに動作して、ノードのメンバーシップに関する情報を管理します。
cssdagentプロセスは、クラスタの監視およびI/Oフェンシングを実行します。このサービスは、以前はOracle Process Monitor Daemon(oprocd)(WindowsではOraFenceServiceとも呼ばれる)によって提供されていました。cssdagentで障害が発生した場合、Oracle Clusterwareによってノードが再起動されることがあります。

- Oracle ASM: Oracle ClusterwareおよびOracle Databaseのディスク管理が提供されます。

- クラスタ時刻同期化サービス(CTSS): Oracle Clusterwareのクラスタで時間管理が提供されます。

- イベント・マネージメント(EVM): Oracle Clusterwareによって作成されたイベントを発行するバックグラウンド・プロセス。

- Oracle Notification Service (ONS): 高速アプリケーション通知(FAN)イベントの通信用のパブリッシュおよびサブスクライブ・サービス。

- Oracle Agent(oraagent): クラスタウェアを拡張し、Oracle固有の要件および複雑なリソースをサポートします。このプロセスは、FANイベントが発生した場合にサーバー・コールアウト・スクリプトを実行します。このプロセスは、Oracle Clusterware 11gリリース1(11.1)ではRACGと呼ばれていました。

- Oracle Root Agent(orarootagent): 特殊なoraagentプロセスであり、rootが所有するリソース(ネットワークなど)およびグリッド仮想IPアドレスをcrsdで管理するのに役立ちます。

クラスタ同期サービス(CSS)、イベント・マネージメント(EVM)およびOracle Notification Service (ONS)コンポーネントは、同じクラスタ・データベース環境で、他のノードのクラスタ・コンポーネント・レイヤーと通信します。また、これらのコンポーネントは、Oracle Database、アプリケーションおよびOracle Clusterwareの高可用性コンポーネント間における主要通信リンクです。さらに、これらのバックグラウンド・プロセスは、データベース操作を監視および管理します。

Oracle高可用性サービス・スタック

この項では、Oracle高可用性サービス・スタックを構成するプロセスについて説明します。このリストには、LinuxおよびUNIXオペレーティング・システムのプロセスまたはWindowsのサービスであるコンポーネントが含まれます。

- クラスタ・ログ出力サービス(ologgerd): クラスタ内のすべてのノードから情報を受信し、CHMリポジトリベース・データベースを維持します。このサービスは、クラスタ内の2つのノードのみで実行されます。

- システム監視サービス(osysmond): 監視して、データをクラスタ・ログ出力サービスに送信するオペレーティング・システム・メトリック収集サービス。このサービスは、クラスタ内のすべてのノードで実行されます。

- グリッド・プラグ・アンド・プレイ(GPNPD): グリッド・プラグ・アンド・プレイ・プロファイルへのアクセスを提供し、クラスタのノード間でプロファイルの更新を調整して、すべてのノードで最新のプロファイルが保持されるようにします。

- グリッド・プロセス間通信(GIPC): 冗長なインターコネクトの使用を可能にするサポート・デーモン。

- マルチキャスト・ドメイン名サービス(mDNS): クラスタ内のプロファイルを特定するためにグリッド・プラグ・アンド・プレイによって使用される他、名前解決を実行するためにGNSによって使用されます。mDNSプロセスは、Linux、UNIXおよびWindowsのバックグラウンド・プロセスです。

- Oracleグリッド・ネーミング・サービス(GNS): 外部DNSサーバーから送信されるリクエストを処理し、クラスタで定義されている名前の名前解決を実行します。

表1-1に、Oracle Clusterwareコンポーネントに関連付けられたプロセスおよびサービスを示します。表1-1で、UNIXまたはLinuxシステムのプロセスに(r)とある場合、そのプロセスがrootユーザーとして実行されることを示します。

表1-1 Oracle Clusterwareコンポーネントに関連付けられたプロセスおよびサービスのリスト

Oracle Clusterwareコンポーネント

LinuxおよびUNIXのプロセス

Windowsサービス

Windowsのプロセス

CRS

crsd.bin (r)

OracleOHService

crsd.exe

CSS

ocssd.bin、cssdmonitor、cssdagent

OracleOHService

cssdagent.exe、cssdmonitor.exe、ocssd.exe

CTSS

octssd.bin (r)

octssd.exe

EVM

evmd.bin、evmlogger.bin

OracleOHService

evmd.exe

GIPC

gipcd.bin

GNS

gnsd(r)

gnsd.exe

グリッド・プラグ・アンド・プレイ

gpnpd.bin

OracleOHService

gpnpd.exe

LOGGER

ologgerd.bin (r)

ologgerd.exe

マスターDiskmon

diskmon.bin

mDNS

mdnsd.bin

mDNSResponder.exe

Oracle Agent

oraagent.bin(11.2)またはracgmainおよびracgimon(11.1)

oraagent.exe

Oracle高可用性サービス

ohasd.bin (r)

OracleOHService

ohasd.exe

ONS

ons

ons.exe

Oracle Root Agent

orarootagent(r)

orarootagent.exe

SYSMON

osysmond.bin (r)

osysmond.exe

関連項目:
プロセスに対して作成されるログ・ファイルの場所の詳細は、「クラスタウェアのログ・ファイルおよび統合ログ・ディレクトリ構造」を参照してください。

注意:
LinuxプラットフォームのOracle Clusterwareでは、複数のスレッドが、一意のプロセス識別子を持つ個別のプロセスとして表示される場合があります。

図1-2は、クラスタの起動を表しています。

図1-2 クラスタの起動

WindowsシステムでのOracle Clusterwareプロセス

Microsoft WindowsシステムでのOracle Clusterwareプロセスには、次のものが含まれます。

- mDNSResponder.exe: 所属するサブネット内で名前解決とサービス検出を管理します

- OracleOHService: すべてOracle Clusterwareデーモンを起動します

Oracle Clusterwareのインストールの概要

次の項では、Oracle Clusterwareのインストール・プロセスの概要について説明します。

注意:
Oracle Clusterwareは、Oracle Universal Installerを使用してインストールします。

Oracle Clusterwareのリリースの互換性

クラスタには、異なるリリースのOracle Clusterware、Oracle ASMおよびOracle Databaseをインストールできます。クラスタに異なるリリースのソフトウェアをインストールする場合、次のガイドラインに従ってください。

- クラスタ内で実行できるOracle Clusterwareのインストールは1つのみであり、Oracle Clusterwareは自身のホーム(Grid_home)にインストールする必要があります。使用するOracle Clusterwareのリリースは、クラスタ内で実行するOracle ASMおよびOracle RACのバージョン以上である必要があります。クラスタ内で実行するOracle Clusterwareのバージョンより後に公開されたOracle RACのバージョンをインストールすることはできません。つまり、次のようになります。

- Oracle Clusterware 11gリリース2(11.2)では、Oracle ASM リリース11.2のみがサポートされます。これは、Oracle ASMが、Oracle Clusterwareも含まれるグリッド・インフラストラクチャ・ホーム内に存在するためです。

- Oracle Clusterwareリリース11.2では、Oracle Database 11gリリース2(11.2)、リリース1(11.1)、Oracle Database 10gリリース2(10.2)およびリリース1(10.1)がサポートされます。

- Oracle ASMリリース11.2では、Oracle Clusterwareリリース11.2が必要です。また、Oracle Database 11gリリース2(11.2)、リリース1(11.1)、Oracle Database 10gリリース2(10.2)およびリリース1(10.1)がサポートされます。

- Oracle Database 11gリリース2(11.2)では、Oracle Clusterware 11gリリース2(11.2)が必要です。
次に例を示します。

- Oracle Clusterware 11gリリース2(11.2)をクラスタウェアとしてインストールしている場合、Oracle Database 10gリリース1(10.1)のシングル・インスタンス・データベースを1つのノードで実行し、別にOracle Real Application Clusters 10gリリース1(10.1)、リリース2(10.2)、およびOracle Real Application Clusters 11gリリース1(11.1)のデータベースを同じクラスタ内で実行できます。ただし、Oracle Clusterware 10gリリース2(10.2)をクラスタにインストールして、Oracle Real Application Clusters 11gをインストールすることはできません。Oracle Clusterware 10gリリース2(10.2)のクラスタ内のノードにOracle Database 11g(シングル・インスタンス)をインストールすることは可能です。

- 異なるリリースのOracle ASMおよびOracle Databaseを使用する場合、各製品の機能は、以前のリリースのソフトウェア機能に依存します。つまり、Oracle Clusterware 11gをインストールして後からOracle ASMを構成し、Oracle Clusterwareを使用して既存のOracle Database 10gリリース10.2.0.3のインストールをサポートする場合、Oracle ASMの機能は、リリース10.2で使用可能な機能のみに制限されます。ディスク・グループのcompatible属性は、使用されているソフトウェアの適切なリリースに設定します。

関連項目:
ディスク・グループのcompatible属性の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- クラスタでは、Oracle Database(シングル・インスタンスおよびOracle RACの両方)の複数のOracleホームを使用できます。Oracle RACデータベースのすべてのノードのOracleホームは同じである必要があります。

- Oracle ClusterwareとOracle Databaseのホームでは、属しているプライマリ・グループが同じであれば異なるユーザーを使用できます。

- Oracle Clusterware 11gリリース2(11.2)では、クラスタ内で実行できるOracle ASMのインストールは1つのみです。Oracle ASMは常にOracle Clusterwareと同じバージョンであり、Oracle Clusterwareは、Oracle Databaseのリリースと同じか、それ以上のリリースである必要があります。

- Oracle9iが稼働するOracle RACでは、Oracle9iのクラスタを実行する必要があります。UNIXシステムでは、HACMP、Serviceguard、Sun ClusterまたはVeritas SFを使用します。WindowsおよびLinuxシステムでは、Oracle Cluster Managerを使用します。Oracle RAC 10gをインストールするには、Oracle Clusterwareもインストールする必要があります。

- Oracle Database 10gのクラスタにOracle9i RACをインストールすることはできません。Oracle9i RACクラスタが存在する場合、Oracle RAC 10gをクラスタに追加できます。ただし、Oracle Clusterware 10gをインストールすると、Oracle9i RACデータベースを新しくインストールすることはできません。

- 連携して動作する保証がないかぎり、同じサーバーでは異なるクラスタ・ソフトウェアを実行しないことをお薦めします。クラスタの一部であるサーバーにOracle RACを追加する場合は、Oracle Clusterwareに移行するか、次のことを確認します。

- 実行するクラスタウェアが、Oracle RAC 11gリリース2(11.2)とともに動作することを確認します。

- Oracle Clusterwareと他のベンダーのクラスタウェアが連携して動作するための適切なオプションをインストール済であることを確認します。

関連項目:
バージョンの互換性の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

Oracle Clusterwareのアップグレードの概要

Oracleでは、インプレース・アップグレードおよびアウトオブプレース・アップグレードがサポートされています。どちらの方法でもローリング・アップグレードが容易になります。Oracle Clusterware 11gリリース2(11.2)の場合、インプレース・アップグレードはパッチに対してのみサポートされています。パッチ・バンドルおよび個別パッチはインプレース・アップグレードでサポートされていますが、パッチ・セットおよびメジャー・リリースは、アウトオブプレース・アップグレードでのみサポートされています。

インプレース・アップグレードによって、Oracle Clusterwareソフトウェアは同じGridホームの新しいバージョンに置き換えられます。アウトオブプレース・アップグレードの場合は、同じソフトウェアの両方のバージョンがノードに同時に存在しますが(Gridホームは異なる)、アクティブなバージョンは1つのみです。

ローリング・アップグレードでは、停止時間が回避され、ソフトウェアが新しいバージョンにアップグレードされる間、Oracle Clusterwareの連続的な可用性が確保されます。11gリリース2(11.2)にアップグレードすると、Oracle ClusterwareおよびOracle ASMバイナリがグリッド・インフラストラクチャという1つのバイナリとしてインストールされます。Oracle Clusterwareは、Oracle Clusterware 10gおよびOracle Clusterware 11gからローリング方式でアップグレードできますが、Oracle ASMはOracle Database 11gリリース1(11.1)からの場合のみローリング方式でアップグレードできます。

Oracleでは、クラスタの一部のノードが停止している場合の強制アップグレードがサポートされます。

関連項目:
Oracle Clusterwareのアップグレードの詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

Oracle Clusterware環境の管理の概要

次のリストに、Oracle Clusterware環境を管理するツールとユーティリティを示します。

- Oracle Enterprise Manager: Oracle Enterprise Managerには、単一インスタンス環境およびOracle RACデータベース環境を管理するための2つのGUIインタフェース、Database ControlおよびGrid Controlがあります。また、Oracle Clusterware、およびOracle Grid Infrastructureのインストールで構成したすべてのコンポーネントを管理するGUIインタフェースもあります。Oracle Enterprise Managerを使用して管理タスクを実行することをお薦めします。

関連項目:
Oracle Enterprise Managerを使用したOracle Clusterwareの管理の詳細は、『Oracle Database 2日でReal Application Clustersガイド』、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』およびOracle Enterprise Managerのオンライン・ドキュメントを参照してください。

- クラスタ検証ユーティリティ(CVU): クラスタとOracle RAC固有の様々なコンポーネントの検証に使用するコマンドライン・ユーティリティ。CVUを使用して、共有ストレージ・デバイス、ネットワーク構成、システム要件、Oracle Clusterware、およびオペレーティング・システムのグループやユーザーを検証します。
CVUをインストールして使用し、インストール前およびインストール後のクラスタ環境をチェックします。CVUは、Oracle ClusterwareおよびOracle RACコンポーネントのインストール前およびインストール時に特に役立ち、これによって、現在の構成がインストールの最小要件を満たしていることを確認できます。また、CVUを使用して、ノードの追加や削除などの管理タスクの完了後にその構成を検証できます。

関連項目:
CVUを手動でインストールする方法については、ご使用のプラットフォーム固有のOracle ClusterwareおよびOracle RACのインストレーション・ガイドを参照してください。CVUの使用方法の詳細は、付録A「クラスタ検証ユーティリティのリファレンス」を参照してください。

- サーバー制御ユーティリティ(SRVCTL): クラスタ内のデータベース、サービス、リスナーなどのOracleリソースを管理するためのコマンドライン・インタフェース。

注意:
接頭辞ora.*を持つ名前のサーバー・プールのみ、SRVCTLを使用して管理できます。

関連項目:
『Oracle Real Application Clusters管理およびデプロイメント・ガイド』の付録「サーバー制御ユーティリティのリファレンス」

- Oracle Clusterware制御(CRSCTL): Oracle Clusterwareを管理するためのコマンドライン・ツール。CRSCTLは、クラスタウェアの一般的な管理および個々のリソースの管理に使用してください。
Oracle Clusterware 11gリリース2(11.2)には、クラスタ対応コマンドが導入されています。これらのコマンドを使用して、操作に応じてクラスタ内の別のノードで、またはクラスタ内のすべてのノードで、クラスタ内の任意のノードから操作を実行できます。

crsctlコマンドを使用すると、クラスタ・リソースを監視したり(crsctl status resource)、サーバー、および接頭辞ora.*を持つ名前のサーバー・プール以外のサーバー・プールを監視および管理できます(crsctl status server、crsctl status serverpool、crsctl modify serverpool、crsctl relocate serverなど)。ノード固有のオプション引数-nまたは-allを使用して、クラスタ全体でOracle高可用性サービスを管理することもできます(crsctl start | stop | enable | disable | config crs)。また、CRSCTLを使用して個々のノードでOracle Clusterwareを管理できます(crsctl start | stop | enable | disable | config crs)。

関連項目:

- crsctlコマンドを使用したOracle Clusterwareの管理の詳細は、第2章「Oracle Clusterwareの管理」を参照してください。

- CRSCTLコマンドの詳細なリストは、付録E「CRSCTLユーティリティのリファレンス」を参照してください。

- Oracle Interface Configurationツール(OIFCFG): シングル・インスタンスのOracle DatabaseとOracle RAC環境の両方のコマンドライン・ツール。OIFCFGを使用して、ネットワーク・インタフェースのコンポーネントへの割当ておよび割当て解除を行います。また、OIFCFGを使用して、特定のネットワーク・インタフェースを使用するようにコンポーネントを設定したり、コンポーネントの構成情報を取得できます。

関連項目:
付録D「Oracle Interface Configurationツール(OIFCFG)のコマンド・リファレンス」を参照してください。

- Oracle Cluster Registryコンフィギュレーション・ツール(OCRCONFIG): OCR管理のためのコマンドライン・ツール。また、OCRCHECKおよびOCRDUMPユーティリティを使用して、OCRに影響を及ぼす構成の問題のトラブルシューティングを実行できます。

関連項目:
OCRの管理方法の詳細は、第2章「Oracle Clusterwareの管理」を参照してください。

- クラスタ状態モニター(CHM): CHMは、オペレーティング・システムとクラスタのリソース関連の低下および障害を検出して分析し、ノードの排除など、Oracle ClusterwareおよびOracle RACの多くの問題に関する詳細をユーザーに提供します。このツールは、オペレーティング・システム・リソースの消費状況を、ノード、プロセスおよびデバイス・レベルで継続的に追跡します。また、クラスタ全体のデータを収集し分析します。リアルタイム・モードでは、しきい値に達すると、ツールによってユーザーにアラートが表示されます。根本原因分析のため、履歴データを再生し、障害発生時に何が起きていたのかを理解できます。

関連項目:
CHMの詳細は、「クラスタ状態モニター」を参照してください。

グリッド環境でのOracle Clusterwareのクローニングおよび拡張の概要

ノードのクローニングは、新しいクラスタを作成する場合に推奨される方法です。クローニング・プロセスでは、Oracle Clusterwareソフトウェアのイメージが同様のハードウェアおよびソフトウェアを持つ他のノードにコピーされます。クローニングを使用して、同じ構成で複数のクラスタを迅速に作成します。クローニングを使用する前に、プラットフォーム固有のOracle Clusterwareのインストレーション・ガイドに記載された手順を使用して、1つ以上のノードにOracle Clusterwareホームを正常にインストールする必要があります。

新規インストールの場合またはインストールするクラスタが1つのみの場合は、Oracle Universal InstallerやOracle Enterprise ManagerのProvisioning Pack機能など、自動化された対話型のインストール方法を使用することをお薦めします。これらの方法ではインストールのチェックが実行されるため、正常にインストールできます。クラスタ内のノードに対してOracle Clusterwareを追加または削除するには、addNode.shおよびrootcrs.plスクリプトを使用します。

関連項目:

- クローニング手順の詳細は、第5章「Oracle Clusterwareのクローニング」を参照してください。

- Provisioning Packの詳細は、Oracle Enterprise Managerのオンライン・ヘルプを参照してください。

- 第4章「クラスタ・ノードの追加および削除」

Oracle Clusterwareの高可用性フレームワークおよびAPIの概要

Oracle Clusterwareでは、クラスタで実行されるアプリケーションまたはプロセスを管理できる、CLSCRS APIという多くの高可用性Application Program Interfaceが提供されます。このCLSCRS APIによって、すべてのアプリケーションで高可用性を実現できます。

関連項目:
CLSCRS APIの詳細は、付録F「Oracle Clusterware C Application Program Interface」を参照してください。

アプリケーションが実行されているクラスタ内のノードとは関係なくユーザーがアプリケーションにアクセスできるように、アプリケーションのVIPアドレスを定義できます。これは、アプリケーションVIPとも呼ばれます。複数のアプリケーションVIPも定義できますが、通常は稼働するアプリケーションごとに1つのアプリケーションVIPを定義します。アプリケーションVIPは、Oracle Clusterwareにより定義されたアプリケーション・リソースに依存することでアプリケーションに関連付けられます。

Oracle Clusterwareコンポーネントは、高可用性を維持するために、定義されている高可用性規則に従い、ステータスの変化に応じてアプリケーションおよびプロセスを再起動できます。アプリケーションをOracle Clusterwareに登録し、クラスタウェアがアプリケーション・プロセスを起動、停止または再配置できるように構成することによって、Oracle Clusterwareの高可用性フレームワークを使用できます。これを行うには、Oracle Clusterwareを使用して、アプリケーションを監視、再配置および再起動するプロファイルを作成し、カスタム・アプリケーションの高可用性を確保します。

脚注の説明

脚注1: Oracle Clusterwareでは、Oracle Database 10gリリース2(10.2)以上のリリースが稼働する構成において、クラスタ内で最大100のノードがサポートされます。
脚注2: クラスタ対応ストレージは、マルチホスト・デバイスと呼ばれることもあります。

2 Oracle Clusterwareの管理

この章では、Oracle Clusterwareの管理について説明します。内容は次のとおりです。

- ポリシー・ベースのクラスタおよび容量の管理

- ロール別管理

- Oracle Grid Infrastructureの構成

- 障害分離のためのIPMIの構成

- クラスタの時間管理

- 手動構成ネットワーク上のネットワーク・アドレスの変更

ポリシー・ベースのクラスタおよび容量の管理

Oracle Clusterware 11gリリース2(11.2)では、データベースが使用するノードおよびリソースの異なる管理方法が導入されており、ポリシー・ベース管理と呼ばれます。

この項の内容は次のとおりです。

- サーバー・プールおよびポリシー・ベース管理の概要

- Oracle Clusterwareによって割り当てられるサーバー属性

- サーバー・プールの理解

- Oracle Clusterwareでの新しいサーバーの割当て方法

サーバー・プールおよびポリシー・ベース管理の概要

Oracle Clusterware 11gリリース2(11.2)以上では、Oracle Clusterwareで管理されるリソースは、サーバー・プールと呼ばれるサーバーの論理グループに含まれています。リソースは共有インフラストラクチャ上でホスト指定され、サーバー・プールに格納されます。リソースは、ポリシーによってハードウェア・リソース(CPUやメモリーなど)の使用量にのみ制限され、単一システム環境にデプロイされているように動作します。

リソースは、サーバー・プールを使用して動的に管理することで、クラスタ内のリソースをポリシー・ベースで管理することができます。また、特定のノードで実行するように物理的にリソースを割り当てる従来の方法で管理することもできます。

ポリシー・ベース管理の特徴は次のとおりです。

- 必要時に動的な容量の割当てが可能で、ポリシーで設定した優先度に従ってサーバーの容量を指定できます。

- 重要度ごとにリソースの割当てが可能で、アプリケーションが可能なかぎり必要最小限のリソースを取得できます。また、優先度が低いアプリケーションが、より重要なアプリケーションのリソースを消費しないようにすることもできます。

- 必要時には分離が保証され、アプリケーションとデータベースについて、クラスタの専用サーバーを指定できます。

サーバー・プールで実行しているアプリケーションとデータベースは、リソースを共有しません。このため、サーバー・プールは必要に応じてリソースを分離しますが、必要時は動的な容量の割当てが可能です。ロール別管理を併用すると、この機能は標準化されたクラスタ環境がある組織のニーズに対応しますが、複数の管理者グループが、一般的なクラスタ・インフラストラクチャを共有できるようになってしまいます。

関連項目:
リソース属性の詳細は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

Oracle Clusterwareは、異なるリソースをクラスタに効率的に割り当てます。ノードで実行される各リソースの重要度のレベルと組み合せて、リソースが実行できるノードの最小数および最大数のみを指定する必要があります。

Oracle Clusterwareによって割り当てられるサーバー属性

サーバーをクラスタに追加するとすぐに、Oracle Clusterwareは、各サーバーに属性セットを割り当てます。サーバーをクラスタから削除すると、Oracle Clusterwareはそれらの設定を削除します。表2-1に、サーバー属性を示します。

表2-1 サーバー属性

属性

説明

NAME

サーバーのノード名です。サーバー名には、プラットフォームでサポートされているすべての文字(感嘆符(!)およびチルダ(~)を除く)を使用できます。サーバー名の先頭をピリオド(.)またはoraにすることはできません。この属性は必須です。

ACTIVE_POOLS

サーバーが属しているサーバー・プールの名前の空白区切りのリストです。Oracle Clusterwareはこのリストを自動的に管理します。

STATE

サーバーは、次のいずれかの状態になります。

ONLINE

サーバーは、クラスタのメンバーであり、リソースの配置に使用できます。

OFFLINE

サーバーは、現在クラスタのメンバーではありません。したがって、リソースの配置に使用できません。

JOINING

サーバーがクラスタに追加されると、Oracle Clusterwareは、サーバーを処理し、リソースの配置に有効であることを確認します。また、Oracle Clusterwareは、サーバーで実行されるように構成されているリソースの状態をチェックします。サーバーの妥当性およびリソースの状態が確認されると、サーバーはこの状態から遷移します。

LEAVING

サーバーの計画停止が開始すると、サーバーの状態はLEAVINGに遷移し、サーバーをリソースの配置に使用できなくなります。

VISIBLE

Oracle Clusterwareは実行されており、クラスタ・レディ・サービス・デーモン(crsd)は実行されていないサーバーは、VISIBLE状態になります。通常、これは、断続的な問題または障害が発生し、Oracle Clusterwareがデーモンのリカバリ(再起動)を試行していることを示します。サーバーがこの状態である間、Oracle Clusterwareはサーバーのリソースを管理できません。

RECONFIGURING

サーバー・プールの再構成のためにサーバーがサーバー・プール間で移動する場合、現行のサーバー・プールのそのサーバー上で実行されるリソースを停止または再配置する必要があると、サーバーはこの状態になります。これは、サーバーで実行されるリソースは、サーバーの移動先サーバー・プールで実行されるように構成されない可能性があるためです。リソースが正常に再配置されるとすぐに、サーバーはONLINE状態に戻されます。

crsctl status serverコマンドを使用して、サーバー情報を取得します。

STATE_DETAILS

これは、Oracle Clusterwareで管理される読取り専用の属性です。属性ではサーバーの状態に関する追加の詳細が提供されます。サーバーの状態に関する追加の詳細には、次のものが含まれる場合があります。

サーバーの状態: ONLINE:

- AUTOSTARTING RESOURCES
(サーバーが再起動する場合またはOracle Clusterwareスタックが再起動される場合に実行される)リソース自動起動手順がサーバーに対して進行中であることを示します。

- AUTOSTART QUEUED
サーバーはリソース自動起動が開始するのを待機します。これが実行されると、属性値はAUTOSTARTING RESOURCESに変わります。

サーバーの状態: RECONFIGURING:

- STOPPING RESOURCES
新しいサーバー・プールでの実行が制限されるリソースが停止中です。

- STARTING RESOURCES
新しいサーバー・プールで実行できるリソースが開始中です。

- RECONFIG FAILED
1つ以上のリソースが停止しなかったため、サーバーはONLINE状態に遷移できません。この時点で、手動による介入は必須です。停止しなかったリソースを停止または登録解除する必要があります。その後、サーバーは自動的にONLINE状態に遷移します。

サーバーの状態: JOINING:

- CHECKING RESOURCES
サーバーが再起動、Oracle Clusterwareスタックが再起動、またはサーバーのcrsdが再起動するたびに、ポリシー・エンジンではサーバー上のリソースの現在の状態を確認する必要があります。この手順が進行中の間は、この値が戻されます。

サーバー・プールの理解

この項の内容は次のとおりです。

- サーバー・プールの動作

- 空きサーバー・プール

- 汎用サーバー・プール

サーバー・プールの動作

サーバー・プールは、クラスタを同じまたは類似したリソースのホスティングするサーバーのグループに分割します。サーバー・プールによって、クラスタの複数のサーバーに対し、統一されたワークロード(一連のOracle Clusterwareリソース)が分散されます。たとえば、Oracle Databaseを特定のサーバー・プールでのみ実行するように制限できます。役割区分管理を有効にすると、特定のサーバー・プールの属性を変更する権限をオペレーティング・システム・ユーザーに明示的に付与できます。

最上位のサーバー・プールの特徴は、次のとおりです。

- クラスタを論理的に分割します。

- 常に排他的です。これは、1つのサーバーが特定の時期に1つの特定のサーバー・プールにのみ存在できることを意味します。

各サーバー・プールには、作成時に割り当てられる3つの属性があります。

- MIN_SIZE: サーバー・プールに含まれるサーバーの最小数。サーバー・プールのサーバーの数がこの属性の値を下回る場合、サーバーの数が属性の値になるまで、Oracle Clusterwareによって自動的に他の場所からサーバー・プールにサーバーが移動されます。

- MAX_SIZE: サーバー・プールに含まれるサーバーの最大数。

- IMPORTANCE: クラスタ内の他のすべてのサーバー・プール間でサーバー・プールをランク付けする0から1000(0の重要度が最低)の数値。
表2-2に、すべてのサーバー・プール属性を示します。

表2-2 サーバー・プール属性

属性

値および書式

説明

ACL

次の書式の文字列を使用します。

owner:user:rwx,pgrp:group:rwx,other::r—

サーバー・プールの所有者、および様々なオペレーティング・システムのユーザーとグループに付与する権限を定義します。サーバー・プールの所有者には、所有者になるオペレーティング・システム・ユーザーとそのユーザーに付与する権限を定義します。

このオプション属性の値は、明示的に上書きする場合を除き、サーバー・プールを作成するプロセスのIDに基づいてサーバー・プールの作成時に移入されます。その後、サーバー・プールの既存の権限に基づいて変更を行うことができる場合、この値は変更できます。

文字列は次のように指定します。

- owner: サーバー・プール所有者になるオペレーティング・システム・ユーザーです。続いてその所有者の権限を指定します。

- pgrp: サーバー・プール所有者のプライマリ・グループであるオペレーティング・システム・グループです。続いてプライマリ・グループのメンバーの権限を指定します。

- other: 続いて他のメンバーの権限を指定します。

- r: 読取り専用です

- w: プールの属性を変更または削除します。

- x: このプールにリソースを割り当てます。

デフォルトでは、サーバー・プールを作成するクライアントのIDはownerです。また、デフォルトでは、root、およびownerに指定されたuserは完全な権限を持ちます。ACL属性に次の行を追加することで、必要なオペレーティング・システム・ユーザーおよびオペレーティング・システム・グループに権限を付与できます。

user:username:rwx
group:group_name:rwx

ACTIVE_SERVERS

サーバー名の文字列には次の書式を使用します。

server_name1 server_name2 ...

Oracle Clusterwareは、この属性を自動的に管理します。この属性には、現在サーバー・プールに割り当てられているサーバーの空白区切りのリストが含まれています。

EXCLUSIVE_POOLS

文字列

このオプション属性は、このサーバー・プールに割り当てられたサーバーが他のサーバー・プールと共有されるかどうかを示します。サーバー・プールは、この属性に同じ値を持つその他のサーバー・プールに対して排他的であることを明示的に示すことができます。サーバー・プールに割り当てられたサーバーのセットに共通の単一サーバーがない場合、2つ以上のサーバー・プールは相互に排他的です。たとえば、サーバー・プールAおよびBの両方でこの属性の値がfoo_A_Bに設定されている場合、サーバー・プールAおよびBは排他的となります。

最上位のサーバー・プールは、デフォルトでは、相互に排他的です。

IMPORTANCE

0から1000の任意の整数

サーバー・プールの相対的な重要度で、0が最低レベルの重要度、1000が最高レベルの重要度を示します。このオプション属性は、ノードがクラスタに追加されるか、またはクラスタから削除された場合にサーバー・プールを再構成する方法を判別するために使用されます。デフォルト値は、0です。

MAX_SIZE

任意の負でない整数または-1(制限なし)

サーバー・プールに含めることができるサーバーの最大数です。この属性はオプションで、デフォルトでは、-1(制限なし)に設定されています。

注意: この属性の-1という値は、クラスタ全体に適用されます。

MIN_SIZE

任意の負でない整数

サーバー・プールの最小サイズです。サーバー・プールに含まれるサーバーの数がこの属性で指定する数を下回る場合、Oracle Clusterwareは、この数が満たされるまで他のサーバー・プールからこのサーバー・プールにサーバーを自動的に移動します。

注意: このオプション属性の値によって、ハード制限は設定されません。クラスタが再構成されるたびにサーバー割当ての優先順位が制御されます。デフォルト値は、0です。

NAME

文字列

サーバー・プールの名前で、これはサーバー・プールの作成時に指定する必要があります。サーバー・プール名は、ユーザーが作成したエンティティ(リソース、タイプ、サーバーなど)の名前のドメイン内で一意である必要があります。サーバー・プール名には、プラットフォームでサポートされているすべての文字(感嘆符(!)およびチルダ(~)を除く)を使用できます。サーバー・プール名の先頭をピリオドまたはoraにすることはできません。

PARENT_POOLS

空白区切りのサーバー・プール名の文字列には次の書式を使用します。

sp1 sp2 ...

この属性を使用して、ネストされたサーバー・プールを作成することができます。この属性に示されているサーバー・プールは、親サーバー・プールと呼ばれます。親サーバー・プールに含まれているサーバー・プールは、子サーバー・プールと呼ばれます。

SERVER_NAMES

空白区切りのサーバー名の文字列には次の書式を使用します。

server1 server2 ...

サーバー・プールに関連付けられている可能性がある候補ノード名のリスト。このオプション属性が空の場合、Oracle Clusterwareは、その他の属性の値(PARENT_POOLSなど)で許容される範囲で任意のサーバーを任意のサーバー・プールに割り当てます。

候補ノード名として識別されるサーバー名は、現在アクティブなクラスタ・メンバーであることを確認する検証が行われません。クラスタ管理者はこの属性を使用して、クラスタにまだ追加されていない候補としてサーバーを定義できます。

Oracle RACデータベースを管理しているサーバー・プールは、サーバー制御(SRVCTL)ユーティリティを使用して管理します。他のすべてのサーバー・プールを管理するには、Oracle Clusterware制御(CRSCTL)ユーティリティを使用します。最上位のサーバー・プールを作成する権限を所有しているのは、クラスタ管理者のみです。

Oracle Clusterwareがインストールされると、汎用サーバー・プールおよび空きサーバー・プールという2つのサーバー・プールが自動的に作成されます。新規インストールのすべてのサーバーは、最初、空きサーバー・プールに割り当てられます。サーバーは、空きサーバー・プールから新しく定義したサーバー・プールに自動的に移動します。Oracle Clusterwareを以前のリリースからアップグレードすると、Oracle Database 11gリリース2(11.2)以前のデータベース・リリースとの互換性を確保するために、すべてのノードは汎用サーバー・プールに割り当てられます。

空きサーバー・プール

空きサーバー・プールには、他のサーバー・プールに割り当てられていないサーバーが含まれています。空きサーバー・プールの属性は、次のように制限されます。

- SERVER_NAMES、MIN_SIZEおよびMAX_SIZEは、ユーザーが編集することはできません。

- IMPORTANCEおよびACLは、ユーザーが編集することができます。

汎用サーバー・プール

汎用サーバー・プールには、11gリリース2(11.2)よりも前のOracle Database、および構成を固定した管理者管理型データベースが格納されます。また、次のいずれかを満たすサーバーも含まれます。

- applicationリソース・タイプのすべてのリソースのHOSTING_MEMBERSリソース属性に指定されているサーバー

関連項目:

- この属性の詳細は、「HOSTING_MEMBERS」を参照してください。

- リソース・タイプの詳細は、「リソース・タイプ」を参照してください。

- 汎用サーバー・プールを親サーバー・プールとして示すサーバー・プールのSERVER_NAMES属性に指定された名前のサーバー

汎用サーバー・プールの属性は、次のように制限されています。

- 汎用サーバー・プールの構成属性は変更できません(すべての属性が読取り専用です)。

- サーバーが次の状態の場合にのみ、Oracle Clusterwareは、HOSTING_MEMBERSリソース属性にサーバー名を指定することができます。

- オンラインで汎用サーバー・プールに存在する。

- オンラインで空きサーバー・プールに存在する。この場合、Oracle Clusterwareによってサーバーが汎用サーバー・プールに移動されます。

- オンラインで、他のサーバー・プールに存在し、クライアントがクラスタ管理者であるか、またはサーバー・プールのサーバーを使用することが許可されている(この場合、サーバーは汎用サーバー・プールに移動されます)。

- オフラインで、クライアントがクラスタ管理者。

- 子サーバー・プールを汎用サーバー・プールに登録した場合、リソースに対して以前に指定したものと同じ要件をサーバー名が満たす場合にのみ、Oracle Clusterwareはその子サーバー・プールを許可します。
サーバーは、クラスタの起動時またはサーバーがクラスタに追加されるときに汎用サーバー・プールに割り当てられ、その後で、他のサーバー・プールに割り当てられます。

Oracle Clusterwareでの新しいサーバーの割当て方法

Oracle Clusterwareは、次の順序でサーバー・プールに新しいサーバーを割り当てます。

1. 汎用サーバー・プール

2. ユーザー作成のサーバー・プール

3. 空きサーバー・プール

次の条件が満たされるまで、Oracle Clusterwareはサーバー・プールへのサーバーの割当てを続行します。

1. 重要度順にすべてのサーバー・プールが最小値まで一杯になるまで(MIN_SIZE)。

2. 重要度順にすべてのサーバー・プールが最大値まで一杯になるまで(MAX_SIZE)。

3. デフォルトでは、サーバー・プールに配置されていないサーバーは、空きサーバー・プールに割り当てられます。
空きサーバー・プールのIMPORTANCE属性は変更できます。

サーバーをクラスタに追加する場合、いくつかの問題が発生します。

表2-3で構成されているサーバー・プールについて考えてみます。

表2-3 サーバー・プール属性の構成例

NAME

IMPORTANCE

MIN_SIZE

MAX_SIZE

PARENT_POOLS

EXCLUSIVE_POOLS

sp1

1

1

10

sp2

3

1

6

sp3

2

1

2

sp2_1

2

1

5

sp2

S123

sp2_2

1

1

5

sp2

S123

たとえば、クラスタ内にサーバーがなく、すべてのサーバー・プールが空であるとします。

server1というサーバーをクラスタに追加するには、次の手順を実行します。

1. サーバーからプールへの割当てを開始します。

2. Oracle Clusterwareは、最上位のサーバー・プール(親サーバー・プールがないサーバー・プール)のみを最初に処理します。この例では、最上位のサーバー・プールはsp1、sp2およびsp3です。

3. Oracle Clusterwareは、IMPORTANCEの順位に従ってsp2、sp3、sp1のようにサーバー・プールを表示します。

4. sp2のIMPORTANCEが最大値で、MIN_SIZE値は満たされていないため、Oracle Clusterwareはserver1をsp2に割り当てます。

5. Oracle Clusterwareは、残り2つのサーバー・プール(sp2_1およびsp2_2)を処理します。両方のサーバー・プールのサイズはMIN_SIZE属性の値(サーバー・プールは両方とも空で、MIN_SIZE値は1)を下回っています。

6. Oracle Clusterwareは、IMPORTANCEの順位に従ってsp2_1、sp2_2のように残り2つのサーバー・プールを表示します。

7. Oracle Clusterwareは、server1をsp2_1に割り当てますが、sp2_1はsp2_2に対して排他的であるように構成されているため、server1をsp2_2に割り当てることはできません。

処理後、クラスタ構成は次のように表示されます。

表2-4 処理後のサーバー・プール構成

サーバー・プール名

割り当てられたサーバー

sp1

sp2

server1

sp3

sp2_1

server1

sp2_2

サーバー・プールからサーバー・プールへのサーバーの移動

サーバー・プール内のサーバーの数がサーバー・プールのMIN_SIZE属性の値を下回る場合(サーバーで障害が発生した場合など)、Oracle Clusterwareは、すべてのサーバー・プールのMIN_SIZEおよびIMPORTANCE属性に設定した値に基づいて、他のサーバー・プールのサーバーをサーバーの数がMIN_SIZE値を下回るサーバー・プールに移動できます。Oracle Clusterwareは、他のサーバー・プールからサーバーを選択して、次の基準に該当する不十分なサーバー・プールに移動します。

- 不十分なサーバー・プールよりIMPORTANCEの値が低いサーバー・プールに対して、Oracle Clusterwareは、サーバーの数がMIN_SIZE属性の値を下回る場合でもそのサーバー・プールからサーバーを取得します。

- IMPORTANCEの値が同一以上のサーバー・プールに対して、Oracle Clusterwareは、サーバー・プール内のサーバーの数がMIN_SIZE属性の値より大きい場合にのみそのサーバー・プールからサーバーを取得します。

ロール別管理

この項の項目は次のとおりです。

- ロール別管理について

- クラスタ内のCRS管理者の管理

- 水平ロール区分の構成

ロール別管理について

ロール別管理とは、複数のリソースで同じクラスタ・リソースおよびハードウェア・リソースを共有できる実装可能な機能です。これは、サーバー・プールまたはリソースの権限を設定してから、アクセス制御リスト(ACL)を使用してアクセスを提供することでできます。デフォルトでは、この機能はインストール時に有効化されません。リソースの割当ては、CRS管理者ロールを割り当てられたユーザーによって制御されます。次のいずれかの方法で、ロール別管理を実装できます。

- 垂直実装: サーバー・プールまたはリソースへのアクセス権限は、それらの所有権をエンタープライズ・アーキテクチャの各層で様々なユーザーに割り当てることによって、およびそれらのユーザーに割り当てられたACLを使用することによって付与されます。Oracle ASMでは、グループを使用した、よりきめ細かい方法が提供されます。タスクの重複を有効にするには、綿密な計画が必要です。

関連項目:
グループの使用の詳細は、『Oracle Grid Infrastructureインストレーション・ガイドfor Linux』を参照してください。

- 水平実装: リソースに対するアクセス権限は、割り当てられたACLを使用して、サーバー・プールおよびポリシー管理型データベースまたはアプリケーションに付与されます。

CRS管理者について

注意:
この権限を持つオペレーティング・システム・ユーザーを制限するには、特定のユーザーをCRS管理者リストに追加することをお薦めします。

CRS管理者は、サーバー・プールの作成を制御するOracle Clusterwareの事前定義済管理者ロールです。CRS管理者ロールを付与されたユーザーは、サーバー・プールのみのシステム・リソースへのアクセスを付与または取消しできます。CRS管理者ロールは、サーバーの管理権限に影響を与えません。

また、CRS管理者は、アスタリスク(*)をSERVER_POOLS属性の値として使用して配置を制御するrestrictedの配置でリソースを作成し、Oracle Clusterwareによって管理されるこれらのリソースへのアクセスを付与および取消しすることができます。

オペレーティング・システム・グループのメンバーである一連のユーザーではなく、CRS管理者ロールを持つ一連のユーザーは、Oracle Clusterware内の名前付きCRS管理者のリストによって管理されます。サーバー・プールの作成により、CRS管理者は、組織の異なるユーザーのグループによって使用されるサーバーのグループにクラスタを分けることができ(前述の項で説明した水平実装)、これによってロール別管理が可能になります。

デフォルトでは、クラスタ用のOracle Grid Infrastructureのインストール後またはアップグレード後に、すべてのユーザーはクラスタ管理者となり(CRS管理者のリストにアスタリスク(*)で示されます)、同じインフラストラクチャを共有するすべてのユーザーは、クラスタを管理する権限が平等にあると想定されます。このデフォルトの構成では、すべての名前付きオペレーティング・システム・ユーザーがOracle Clusterware内でサーバー・プールを作成することができます。

CRS管理者権限をグリッド・ユーザーおよびrootに制限すると、後で作成されるポリシー管理データベースが新しく作成されたサーバー・プールに自動的に作成されることを防止します。ロール別管理を有効にする場合、CRS管理者は事前に必要なサーバー・プールを作成しておく必要があります。

グリッド・インフラストラクチャ・ホーム(Gridホーム)にOracle Clusterwareをインストールしたユーザー(グリッド・ユーザー)およびシステム・スーパーユーザー(LinuxおよびUNIXではroot、Windowsでは管理者)は、永続的なクラスタ管理者となり、これらの2種類のユーザーのみがCRS管理者のリストにユーザーを追加または削除でき、ロール別管理を有効にします。

クラスタが様々なユーザーによって共有されている場合、CRS管理者は特定のサーバー・プールへのアクセスを制限できるため、クラスタ内の特定のユーザーに対する特定のハードウェア・リソースへのアクセスも制限できます。ACL属性の各サーバー・プールに格納されている権限の詳細は、表2-2を参照してください。

クラスタ内のCRS管理者の管理

次のコマンドを使用して、クラスタ内のCRS管理者を管理します。

- CRS管理者であるユーザーのリストを問い合せるには、次のコマンドを使用します。

$ crsctl query crs administrator

- ロール別管理を有効にして、非永続的なCRS管理者に権限を付与するには、特定のユーザーをCRS管理者のリストに追加する必要があります。永続的なCRS管理者として、次のコマンドを実行します。

# crsctl add crs administrator -u user_name

デフォルトのアスタリスク(*)値は、このコマンドを使用して追加するユーザーで置換されます。

- CRS管理者のグループから特定のユーザーを削除するには、次のコマンドを使用します。

# crsctl delete crs administrator -u user_name

- すべてのユーザーをCRS管理者にするには、次のようにリストの後にアスタリスク(*)値を追加します。

# crsctl add crs administrator -u "*"

アスタリスク(*)値は二重引用符("")で囲む必要があります。この値は、CRS管理者のリストで以前に指定されたユーザーを置換します。

水平ロール区分の構成

crsctl setpermコマンドを使用して、サーバー・プール、リソースまたはその両方に割り当てられるACLを使用した水平ロール区分を構成します。CRSCTLユーティリティは、パスGrid_home/binにあります(Grid_homeは、Oracle Grid Infrastructureのホームです)。

コマンドでは次の構文を使用して、リソース、リソース・タイプまたはサーバー・プールのいずれに権限を設定するかを選択できます。

crsctl setperm {resource | type | serverpool} {-u acl_string |
-x acl_string | -o user_name | -g group_name}

フラグ・オプションは、次のとおりです。

- -u: エンティティACLの更新

- -x: エンティティACLの削除

- -o: エンティティ所有者の変更

- -g: エンティティ・プライマリ・グループの変更

ACL文字列は、次のとおりです。

{ user:user_name[:readPermwritePermexecPerm] |
group:group_name[:readPermwritePermexecPerm] |
other[::readPermwritePermexecPerm] }

説明:

- user: ユーザーACL(指定したユーザーに付与されるアクセス権限)を指定します。

- group: グループACL(指定したグループ・メンバーに付与される権限)を指定します。

- other: 他のACL(特定のアクセス権限は付与されないユーザーまたはグループに付与されるアクセス権)を指定します。

- readperm: 読取り権限の場所(rは権限を付与、-は権限を禁止)

- writeperm: 書込み権限の場所(wは権限を付与、-は権限を禁止)

- execperm: 実行権限の場所(xは権限を付与、-は権限を禁止)

たとえば、CRS管理者(所有者)のみが読取り、書込みおよび実行権限を持ち、ユーザーおよびoinstallグループのメンバーが読取りおよび実行権限のみを持つ場合、CRS管理者として、oracleユーザーおよびoinstallグループのtestadminというデータベース・サーバー・プールの権限を設定できます。グループ外のすべてのユーザーにはアクセス権がありません。次のコマンドをCRS管理者として実行すると、次のようになります。

# crsctl setperm serverpool ora.testadmin -u user:oracle:r-x,group:oinstall:r-x,
other::---

注意:
前述の例は、水平ロール区分の有効化を目的としてOracle (ora.*)リソース(ora.testadminサーバー・プール)でCRSCTLコマンドを使用する明示的な付与の例外です。

Oracle Grid Infrastructureの構成

Oracle Grid Infrastructureのソフトウェアのみのインストールを実行した後、構成ウィザードを使用してソフトウェアを構成できます。このウィザードでは、crsconfig_params構成ファイルを簡単に編集できます。構成ウィザードでは、Oracle Grid Infrastructureのインストーラと同様に、ユーザーがウィザードで操作を行う前後にGridホームと入力の様々な検証が実行されます。

構成ウィザードを使用すると、1つ以上のノードで新しいグリッド・インフラストラクチャを構成したり、アップグレード済のグリッド・インフラストラクチャを構成できます。また、構成ウィザードはサイレント・モードでも実行できます。

注意:

- 構成ウィザードを実行する前に、グリッド・インフラストラクチャ・ホームがカレントであり、必要なすべてのパッチが適用されていることを確認します。

- 以降の手順で構成ウィザードを起動する場合は、次のようにします。
LinuxおよびUNIXの場合は、次のコマンドを実行します。

Oracle_home/crs/config/config.sh

Windowsの場合は、次のコマンドを実行します。

Oracle_home\crs\config\config.bat

この項には次のトピックが含まれます:

- 単一ノードの構成

- 複数ノードの構成

- グリッド・インフラストラクチャのアップグレード

- サイレント・モードでの構成ウィザードの実行

単一ノードの構成

構成ウィザードを使用して単一ノードを構成するには、次の手順を実行します。

1. 次のように、構成ウィザードを起動します。

$ Oracle_home/crs/config/config.sh

2. 「インストール・オプションの選択」ページで、「クラスタ用のGrid Infrastructureの構成」を選択します。

3. 「クラスタ・ノードの情報」ページで、ローカル・ノードと、それに対応するVIP名のみを選択します。

4. 残りのウィザード・ページで、引き続き情報を追加します。

5. 「サマリー」ページで入力を確認して、「終了」をクリックします。

6. 構成ウィザードの指示に従って、root.shスクリプトを実行します。

複数ノードの構成

構成ウィザードを使用して複数ノードを構成するには、次の手順を実行します。

1. 次のように、構成ウィザードを起動します。

$ Oracle_home/crs/config/config.sh

2. 「インストール・オプションの選択」ページで、「クラスタ用のGrid Infrastructureの構成」を選択します。

3. 「クラスタ・ノードの情報」ページで、構成するノードと、それに対応するVIP名を選択します。構成ウィザードは、選択されたノードを検証し、その準備が整っていることを確認します。

4. 残りのウィザード・ページで、引き続き情報を追加します。

5. 「サマリー」ページで入力を確認して、「終了」をクリックします。

6. 構成ウィザードの指示に従って、root.shスクリプトを実行します。

グリッド・インフラストラクチャのアップグレード

構成ウィザードを使用してグリッド・インフラストラクチャをアップグレードするには、次の手順を実行します。

1. 次のように、構成ウィザードを起動します。

$ Oracle_home/crs/config/config.sh

2. 「インストール・オプションの選択」ページで、「Grid Infrastructureのアップグレード」を選択します。

3. 「Grid Infrastructureノードの選択」ページで、アップグレードするノードを選択します。

4. 残りのウィザード・ページで、引き続き情報を追加します。

5. 「サマリー」ページで入力を確認して、「終了」をクリックします。

6. 構成ウィザードの指示に従って、rootupgrade.shスクリプトを実行します。

サイレント・モードでの構成ウィザードの実行

構成ウィザードをサイレント・モードで使用してノードを構成またはアップグレードするには、コマンドラインで-silent -responseFile file_nameを指定して構成ウィザードを起動します。ウィザードは、レスポンス・ファイルを検証して構成を行います。レスポンス・ファイルで無効な入力を検出すると、構成ウィザードはエラーを表示して終了します。指示に従って、rootおよびconfigToolAllCommandsスクリプトを実行します。

障害分離のためのIPMIの構成

この項の内容は次のとおりです。

- 障害分離のためのIPMIの使用について

- IPMI用のサーバー・ハードウェアの構成

- CRSCTLを使用したIPMIベース障害分離のインストール後の構成

障害分離のためのIPMIの使用について

障害分離は、障害が発生したノードをクラスタの残りのノードから分離させ、障害が発生したノードでデータが失われるのを防ぐプロセスです。理想的なフェンシングには、Oracle Clusterwareまたはそのノードで実行されているオペレーティング・システムとの連携がなくても問題のノードを再起動できる外部メカニズムが含まれます。この機能を提供するために、Oracle Clusterware 11gリリース2(11.2)では、業界標準の管理プロトコルであるIntelligent Management Platform Interface仕様(IPMI)(Baseboard Management Controller(BMC)とも呼ばれる)をサポートしています。

通常、IPMIを使用する障害分離は、グリッド・インフラストラクチャのインストール時の「障害の分離のサポート」画面でIPMI構成のオプションが提示されたときに構成します。インストール時にIPMIを構成しない場合は、Oracle Clusterware制御ユーティリティ(CRSCTL)を使用してインストール後に構成できます(「CRSCTLを使用したIPMIベース障害分離のインストール後の構成」を参照)。

障害分離用にIPMIを使用するには、各クラスタ・メンバー・ノードに、IPMIバージョン1.5(Local Area Network (LAN)を介してIPMIがサポートされます)に対応するファームウェアが動作するIPMIデバイスを装備する必要があります。データベースの操作中、障害分離は、削除を行うクラスタ同期サービス・デーモンから障害が発生したノードのIPMIデバイスへのLANを介した通信によって行われます。IPMI-over-LANプロトコルは、インストール時に管理者から取得したユーザー名およびパスワードで保護される認証セッションに引き継がれます。

DHCPを使用してIPMIの動的IPアドレス割当てをサポートするために、クラスタ同期サービス・デーモンは、クラスタ同期サービスの起動時にローカルのIPMIデバイスと直接通信を行いIPMIデバイスのIPアドレスを取得する必要があります。(ただし、これはHP-UXおよびSolarisプラットフォームにはあてはまりません。これらのプラットフォームでは、IPMIデバイスに静的IPアドレスを割り当てる必要があります。)これは、各クラスタ・システムにインストールする必要があるIPMIドライバを介してIPMIデバイスと通信するIPMIプローブ・コマンド(OSD)を使用して行われます。

IPMIデバイスに静的IPアドレスを割り当てた場合、IPMIドライバは、クラスタ同期サービス・デーモンにとって必須ではありません。ただし、ipmitoolまたはipmiutilを使用してIPMIデバイスを構成するにはドライバが必要ですが、一部のプラットフォームでは管理コンソールを使用してこれを行うこともできます。

IPMI用のサーバー・ハードウェアの構成

IPMIドライバをインストールして有効にし、IPMIデバイスを構成します(ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照)。

CRSCTLを使用したIPMIベース障害分離のインストール後の構成

この項の内容は次のとおりです。

- Oracle ClusterwareでのIPMIインストール後の構成

- CRSCTLを使用したIPMI構成の変更

- CRSCTLを使用したIPMI構成の削除

Oracle ClusterwareでのIPMIインストール後の構成

Oracle Clusterwareのインストール時にIPMIをインストールする場合は、障害分離を2つのフェーズで構成します。インストールを開始する前に、サーバー・オペレーティング・システムにIPMIドライバをインストールして有効にし、各ノードでIPMIハードウェア(IPアドレス・モード、管理資格証明など)を構成する必要があります(『Oracle Grid Infrastructureインストレーション・ガイド』を参照)。Oracle Clusterwareをインストールすると、インストーラによって、IPMI管理者のユーザーIDおよびパスワードが収集され、ノードのローカル記憶域の(OLRにある)Oracle Walletに格納されます。

サーバーの構成が完了したら、各クラスタ・ノードで次の手順を実行し、ノードにIPMI管理者およびパスワードを登録します。

注意:
IPMIがDHCPを使用してIPアドレスを取得するように構成されている場合は、IPMIをリセットするか、またはノードを再起動して、アドレスを取得するようにする必要がある可能性があります。

1. Oracle Clusterwareを起動します(起動すると、IPMIから現在のIPアドレスを取得できます)。これにより、起動時に必要となるクラスタウェアとIPMIの通信が可能であることが確認されます。
IPMIが構成される前にOracle Clusterwareが実行されていた場合は、Oracle Clusterwareを停止して再起動できます。または、IPMI管理ユーティリティを使用してIPMIのIPアドレスを取得してから、CRSCTLを使用して次のようなコマンドを実行することで、OLRにIPアドレスを格納します。

crsctl set css ipmiaddr 192.168.10.45

2. CRSCTLを使用して、crsctl set css ipmiadminコマンドを実行し、プロンプトにパスワードを指定することで、装備されているIPMI用に以前に作成したユーザーIDおよびパスワードをOLRに格納します。次に例を示します。

crsctl set css ipmiadmin administrator_name
IPMI BMC password: password

このコマンドでは、指定した資格証明が検証され、これを使用して別のクラスタ・ノードがローカルIPMIにアクセスできない場合は失敗します。

ハードウェアおよびオペレーティング・システムの構成を完了し、Oracle ClusterwareにIPMI管理者を登録した後、IPMIベースの障害分離は完全に機能します。

CRSCTLを使用したIPMI構成の変更

既存のIPMIベースの障害分離構成を変更するには(IPMIパスワードを変更したり、既存のインストールで障害分離用にIPMIを構成する場合など)、ご使用のプラットフォームに適したIPMI構成ツールでCRSCTLを使用します。たとえば、IPMIの管理者パスワードを変更するには、まず『Oracle Grid Infrastructureインストレーション・ガイド』で説明しているようにIMPI構成を変更してから、CRSCTLを使用してOLR内のパスワードを変更します。

Oracle Clusterwareで必要なIPMIの構成データはOCRのOracle Walletに保存されています。構成情報はセキュアなストアに保持されるため、この情報はOracle Clusterwareインストールの所有者アカウント(グリッド・ユーザー)が書き込む必要があり、このインストールのユーザーとしてログインする必要があります。

既存のIPMI構成を変更するには、次の手順を実行します。

1. crsctl set css ipmiadmin administrator_nameコマンドを入力します。たとえば、ユーザーIPMIadmの場合は、次のようになります。

crsctl set css ipmiadmin IPMIadm

管理者パスワードを指定します。Oracle Clusterwareでは、ローカルIPMIの管理者の名前およびパスワードがOLRに格納されます。

新しい資格証明が格納されると、Oracle Clusterwareは新しい資格証明を取得し、必要に応じて配布することができます。

2. crsctl set css ipmiaddr bmc_ip_addressコマンドを入力します。次に例を示します。

crsctl set css ipmiaddr 192.0.2.244

このコマンドでは、ローカルIPMIの新しいIPMI IPアドレスがOLRに格納され、IPアドレスの格納後、Oracle Clusterwareは、新しい構成を取得し、必要に応じて配布することができます。

3. crsctl get css ipmiaddrコマンドを入力します。次に例を示します。

crsctl get css ipmiaddr

このコマンドでは、ローカルIPMIのIPアドレスがOLRから取得され、コンソールに表示されます。

4. 次のように、OLRからローカルIPMIのIPMI構成情報を削除して、レジストリ・エントリを削除します。

crsctl unset css ipmiconfig

関連項目:
これらのCRSCTLコマンドの詳細は、「Oracle RAC環境のCRSCTLコマンド」を参照してください。

CRSCTLを使用したIPMI構成の削除

IPMIの使用を完全に停止する場合、またはIPMIの最初の構成がOracle Clusterwareをインストールしたユーザー以外のユーザーによって行われていた場合は、CRSCTLを使用してクラスタからIPMI構成を削除できます。後者に該当する場合、Oracle ClusterwareはIPMI構成データにアクセスできず、Oracle ClusterwareソフトウェアはIPMIを使用できないため、Oracle ClusterwareをインストールしたユーザーとしてIPMIを再構成する必要があります。

IPMIを完全に削除するには、次の手順を実行します。Oracle ClusterwareをインストールしたユーザーとしてIPMIを再構成するには、手順3および4を実行し、「CRSCTLを使用したIPMI構成の変更」の手順2および3を繰り返します。

1. 次のように、IPMIドライバを無効にして、起動時のインストールを回避します。

/sbin/modprobe –r

関連項目:
IPMIドライバの詳細は、ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

2. LAN経由でのアクセスを防ぐためにipmitoolまたはipmiutilを使用してローカルIPMIのIPMI-over-LANを無効にするか、またはIPMI管理者のユーザーIDとパスワードを変更します。

3. Oracle Clusterwareが実行中であることを確認し、次のコマンドでCRSCTLを使用し、OLRからIPMI構成データを削除します。

crsctl unset css ipmiconfig

4. rootとして次のコマンドを実行し、Oracle Clusterwareを再起動して、IPMI構成なしで実行するようにします。

# crsctl stop crs
# crsctl start crs

クラスタの時間管理

クラスタ時刻同期化サービス(CTSS)は、Oracle Clusterwareの一部としてインストールされ、システムで時刻同期サービスまたは時刻同期サービス構成が有効になっているか、または中断されていることが検出されるとオブザーバ・モードで実行されます。クラスタ内のどのノードにも時刻同期サービスまたは時刻同期サービス構成がCTSSによって検出されない場合、CTSSはアクティブ・モードになり、クラスタの時間管理を行います。

ノードがクラスタに追加されると、CTSSではアクティブ・モードの場合、これらのノードの時刻がクラスタ内の1つのノードにある参照クロックと比較されます。2つの時刻の間に不一致があり、その不一致が特定の段階制限内である場合、CTSSによって時刻の同期化(Step)が行われ、クラスタに追加されたノードの時刻は参照クロックと同期するように進められます。

Oracle Clusterwareを起動したときに、CTSSがアクティブ・モードで実行されており、時刻の不一致が段階制限(制限は24時間)を超えている場合、CTSSはアラート・ログにアラートを生成して終了し、Oracle Clusterwareの起動は失敗します。クラスタに追加したノードの時刻をクラスタと同期するように手動で調整する必要があり、その後、Oracle Clusterwareを起動してCTSSでノードの時刻を管理することができます。

クラスタ内のノードのクロックは、様々な理由のために定期的に参照クロック(時刻CTSSが基準として使用し、クラスタ内で最初に起動するノードのクロック)と非同期になります。この場合、CTSSは時刻の同期化(Slew)を実行し、参照システムの時刻と同期するまで、ノードのシステムの時刻を速めたり、遅くします。この時刻の同期方法では、CTSSによって時刻が戻されることがないため、システムの時刻における単調増加が保証されます。

時刻の同期化(Slew)を実行する場合、CTSSでは参照クロックと同期するために時刻が戻されることはありません。CTSSによって定期的にアラート・ログにアラートが書き込まれ、これには、ノードが参照クロックと同期し続けるようにCTSSによって時刻が調整される頻度に関する情報が含まれます。

クラスタのCTSSをアクティブ化するには、クラスタ内のすべてのノードでベンダーの時刻同期サービスを停止し、構成を解除する必要があります。CTSSは、この操作を検出し、クラスタの時間管理を引き受けます。

たとえば、NTPの構成を解除するには、ntp.confファイルを削除するか、名前を変更する必要があります。

注意:
Windowsの場合、CTSSはntp.confファイルが存在するかどうかチェックせず、時刻同期サービスがあるかどうかのみをチェックします。

同様に、クラスタのCTSSを非アクティブ化する場合は、次の操作を実行します。

1. クラスタ内のすべてのノードでベンダーの時刻同期サービスを構成します。CTSSは、この変更を検出し、オブザーバ・モードに戻ります。

2. crsctl check ctssコマンドを使用して、CTSSがオブザーバ・モードで動作していることを確認します。

3. クラスタ内のすべてのノードでベンダーの時刻同期サービスを起動します。

4. cluvfy comp clocksync -n allコマンドを使用して、時刻同期サービスが動作していることを検証します。

関連項目:
Oracle ClusterwareのNTP構成またはCTSSを使用するための無効化の詳細は、ご使用のプラットフォーム固有の『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

手動構成ネットワーク上のネットワーク・アドレスの変更

この項の内容は次のとおりです。

- ネットワーク・アドレスを構成する必要がある場合の理解

- SCANアドレスおよびクライアント・サービス接続の理解

- 仮想IPアドレスの変更

- Oracle Clusterwareのプライベート・ネットワーク構成の変更

ネットワーク・アドレスを構成する必要がある場合の理解

Oracle Clusterware構成には次の2つ以上のインタフェースが必要です。

- ユーザーとアプリケーション・サーバーがデータベース・サーバー上のデータにアクセスするために接続するパブリック・ネットワーク・インタフェース

- ノード間の通信用のプライベート・ネットワーク・インタフェース。

グリッド・ネーミング・サービスおよびDHCPを使用してネットワーク接続を管理する場合は、クラスタのアドレス情報を構成する必要がない場合があります。GNSを使用すると、パブリック仮想インターネット・プロトコル(VIP)・アドレスを、DHCPが提供する動的なアドレスにすることができます。クライアントでは、名前解決リクエストがネットワークのドメイン名サービス(DNS)に送信され、DNSでは、クラスタ内で管理されているグリッド・ネーミング・サービス(GNS)にリクエストが転送されます。GNSでは、これらのリクエストがクラスタ内のノードに解決されます。

GNSを使用せず、かわりにネットワークを手動で構成する場合は、パブリックVIPアドレスはDNSで静的に構成する必要があります。VIPはDNSおよびhostsファイルで静的に構成される必要があり、プライベートIPアドレスでは静的構成が必須です。

SCANアドレスおよびクライアント・サービス接続の理解

パブリック・ネットワーク・アドレスはクライアントにサービスを提供するために使用します。クライアントで単一クライアント・アクセス名(SCAN)アドレスに接続している場合は、クラスタに対してノードを追加または削除する際にパブリックおよび仮想IPアドレスを変更する必要がある場合がありますが、クライアントを新しいクラスタ・アドレスで更新する必要はありません。

SCANはクラスタの別名のように機能します。ただし、SCANはクラスタ内の任意のノードで解決され、ノードのVIPアドレスとは異なり、SCANに接続するクライアントでは、クラスタに対してノードを追加または削除する際に、更新されたVIPアドレスは必要なくなります。SCANアドレスはクラスタ内のノード・アドレスではなくクラスタに解決されるため、SCANアドレス構成に影響を与えることなく、クラスタでノードを追加または削除できます。

SCANは完全修飾名(ホスト名+ドメイン)で、SCANに割り当てられたすべてのアドレスに解決するように構成されています。アドレスは、DNSサーバー上またはGNS構成のクラスタ内で、ラウンドロビンDNSによって解決します。SCANリスナーはクラスタ内の任意のノードで実行できます。SCANは、クライアント構成が特定のデータベースを実行するノードに依存する必要がないように、データベースに位置の独立性を提供します。

Oracle Database 11gリリース2(11.2)以上のインスタンスは、SCANリスナーにのみリモート・リスナーとして登録されます。アップグレードしたデータベースは、リモート・リスナーとしてSCANリスナーに登録されるとともに、引き続きすべてのノード・リスナーにも登録されています。

注意:
インストール時にSCAN名を指定するというOracle Clusterwareのインストール要件により、サーバーの/etc/hostsファイルを使用して1つ以上のIPアドレスを解決してこのインストール要件を回避し、SCANに必要なインフラストラクチャがない場合は、インストール後、SCANを無視し、VIPを使用してクラスタ内のデータベースに接続できます。
Oracleでは、SCANアドレスの削除はサポートされていません。

仮想IPアドレスの変更

Oracle Database 11gリリース2(11.2)より前のOracle DatabaseリリースのパブリックVIPアドレスを使用するように構成されたクライアントは、既存の接続アドレスを引き続き使用できます。SCANを使用するようにクライアントを構成することをお薦めしますが、ユーザーがSCANを使用する必要はありません。以前のバージョンのOracle Databaseは、アップグレードされるとSCANに登録され、クライアントでは、SCANを使用してこのデータベースへの接続を開始するか、接続用のVIPアドレスの使用を継続することができます。

クライアント接続用のVIPアドレスの使用を継続する場合、Oracle DatabaseおよびOracle ASMの実行が継続している間にVIPアドレスを変更できます。ただし、アドレスを変更する間は、サービスを停止する必要があります。VIPアドレスを再起動すると、サービスもノードで再起動します。

この手順を使用して、静的パブリック・サブネットでDHCPを使用するように変更することはできません。srvctl add network -Sコマンドのみで、DHCPネットワークが作成されます。

注意:
次の説明は、VIPアドレスのみを変更する方法を示すもので、VIPアドレスに関連付けられたホスト名は変更しないことを想定しています。GNSを使用していて、VIPがDHCPを使用して割り当てられている場合は、VIPアドレスを手動で更新する必要はありません。
VIPアドレスのみを変更する場合、DNSおよびクライアントのhostsファイルを更新します。また、サーバーのhostsファイルがVIPアドレスに対して使用されている場合は、それも更新します。

VIPアドレスを変更するには、次の手順を実行します。

1. 次のコマンド構文を使用して、変更するVIPアドレスのノードで実行されているすべてのサービスを停止します。database_nameはデータベースの名前、service_name_listは停止するサービスのリスト、およびmy_nodeは変更するVIPアドレスのノードの名前です。

srvctl stop service -d database_name  -s service_name_list -n my_node

この例では、データベース名(grid)を-dオプションで指定し、適切なノード(mynode)上のサービス(sales,oltp)を指定しています。

$ srvctl stop service -d grid -s sales,oltp -n mynode

2. srvctl config vipコマンドを実行して、VIPアドレスの現在のIPアドレスを確認します。このコマンドにより、ネットワーク・インタフェースの1つにバインドされた現在のVIPアドレスが表示されます。構成したVIPアドレスの例を次に示します。

$ srvctl config vip -n stbdp03
VIP exists.:stbdp03
VIP exists.: /stbdp03-vip/192.168.2.20/255.255.255.0/eth0

3. srvctl stop vipコマンドを使用してVIPリソースを停止します。

$ srvctl stop vip -n mynode

4. LinuxまたはUNIXシステムでifconfig -aコマンドを実行(Windowsシステムの場合はipconfig /allコマンドを発行)して、VIPリソースが実行されていないことを確認し、インタフェース(この例ではeth0:1)が出力に表示されていないことを確認します。

5. LinuxおよびUNIXシステムではすべてのノードの/etc/hostsファイルに、Windowsシステムでは%windir%\system32\drivers\etc\hostsファイルに、必要なすべての変更を加え、DNSを適切に変更して、新しいIPアドレスを古いホスト名に関連付けます。

6. VIPリソースを変更する前に、デフォルトのネットワークに異なるサブネットまたはNICを使用するには、srvctl modify network -S subnet/netmask/interfaceコマンドをrootとして使用して、ネットワーク・リソースを変更する必要があります(subnetは新しいサブネット・アドレス、netmaskは新しいネットマスク、interfaceは新しいインタフェースです)。サブネットの変更後、次の手順で説明するとおり、各ノードのVIPを新しいサブネットのIPアドレスに変更する必要があります。

7. 次のsrvctl modify nodeapps構文を使用して、ノード・アプリケーションを変更し、新しいVIPアドレスを指定します。

$ srvctl modify nodeapps -n node_name -A new_vip_address

コマンドには次のフラグおよび値が含まれます。

- -n node_nameはノード名です。

- -A new_vip_addressはノード・レベルのVIPアドレスで、次のようになります。name|ip/netmask/[if1[|if2|...]]
たとえば、rootユーザーとして次のコマンドを発行します。

srvctl modify nodeapps -n mynode -A 192.168.2.125/255.255.255.0/eth0

インストール所有者アカウントとしてこのコマンドを発行しようとすると、エラーが発生する場合があります。たとえば、インストール所有者がoracleの場合は、エラー「PRCN-2018: Current user oracle is not a privileged user」が表示される場合があります。このエラーを回避するには、rootまたはシステム管理者アカウントとしてコマンドを実行します。

8. 次のようにして、srvctl start vipコマンドを実行し、ノードVIPを起動します。

$ srvctl start vip -n node_name

次のコマンドの例では、mynodeという名前のノードでVIPを起動します。

$ srvctl start vip -n mynode

9. クラスタ内の各ノードでこの手順を繰り返します。
SRVCTLユーティリティはクラスタ全体の管理ツールであるため、各クラスタ・ノードにログインせずに、クラスタ内の任意のノードから特定のノードに対し、これらのタスクを完了することができます。

10. 次のコマンドを実行して、クラスタが構成されているすべてのノード間の接続性を確認します。このコマンドは、クラスタ・ノード上で使用可能なすべてのネットワーク・インタフェースを検出し、検出されたインタフェースからすべてのノードへの接続性を確認します。また、ノードで使用可能な、VIPアドレスとしての使用に適したすべてのインタフェースを表示します。

$ cluvfy comp nodecon -n all -verbose

Oracle Clusterwareのプライベート・ネットワーク構成の変更

この項の内容は次のとおりです。

- プライベート・ネットワークおよびネットワーク・インタフェースについて

- 冗長なインターコネクトの使用

- OIFCFGを使用したインタフェース名の変更結果

- ネットワーク・インタフェースの変更

プライベート・ネットワークおよびネットワーク・インタフェースについて

Oracle Clusterwareでは、各ノードが、(パブリック・ネットワークに加えて)プライベート・ネットワークに接続されている必要があります。プライベート・ネットワーク接続は、クラスタ・インターコネクトとも呼ばれます。表2-5に、ネットワーク・インタフェース・カード(NIC)およびプライベートIPアドレスがどのように格納されるかを示します。

すべてのノードが、同一のサブネットに接続された同一のネットワーク・インタフェース(oifcfgコマンドによりグローバル・インタフェースとして定義済)を使用しているクラスタのみをサポートしています。ノードごとに異なるネットワーク・インタフェース(ノード固有のインタフェース)を使用することはできません。グローバル・インタフェースおよびノード固有のインタフェースの詳細は、付録D「Oracle Interface Configurationツール(OIFCFG)のコマンド・リファレンス」を参照してください。

表2-5 ネットワーク・インタフェース、プライベートIPアドレスおよびプライベート・ホスト名の記憶域

エンティティ

格納先

コメント

ネットワーク・インタフェース名

オペレーティング・システム。

たとえば、eth1など。

ネットワーク・インタフェース名を指定する場合、ワイルドカードを使用できます。

たとえば、eth*など。

プライベート・ネットワーク・インタフェース

Oracle Clusterwareのグリッド・プラグ・アンド・プレイ(GPnP)・プロファイル内

インストール時にインタフェースを「プライベート」とすることによって、使用するインタフェースをプライベート・インタフェースとして構成するか、oifcfg setifコマンドを使用して、インタフェースをプライベート・インタフェースに指定します。

関連項目: oifcfg setifコマンドの詳細は、「OIFCFGコマンド」を参照してください。

冗長なインターコネクトの使用

インストール時、またはインストール後にoifcfg setifコマンドを使用してインタフェースをプライベートとして分類することによって、冗長なインターコネクトの使用に対して複数のインタフェースを定義できます。このようにすると、定義したインタフェースの数に応じて1つから4つの高可用性IP(HAIP)アドレスがOracle Clusterwareによって作成され、Oracle DatabaseおよびOracle ASMインスタンスは、これらのアドレスを使用して高可用性のロード・バランスされた通信を実現します。

デフォルトでは、Oracleソフトウェア(11gリリース2(11.2.0.2)以上のOracle RAC、Oracle ASMおよびOracle ACFSなど)は、そのすべてのトラフィックにHAIPアドレスを使用し、提供されたクラスタ・インターコネクト・インタフェースのセット全体でロード・バランシングが可能になります。定義済のクラスタ・インターコネクト・インタフェースのいずれかに障害が発生するか、または通信できなくなった場合、Oracle Clusterwareは、機能している残りのインタフェースのいずれかに対応するHAIPアドレスを透過的に移動します。

注意:
Oracle Clusterwareが使用するインタフェースは、定義されているインタフェースの数に関係なく、常に最大で4つです。あるインタフェースに障害が発生すると、HAIPアドレスは、定義されたセット内の別の構成済インタフェースに移動します。
HAIPアドレスが1つのみで、選択するインタフェースが複数ある場合、HAIPアドレスの移動先のインタフェースは、そのアドレスが構成された元のインタフェースではなくなります。Oracle Clusterwareは、HAIPアドレスの追加先として、数が最も小さいサブネットのインタフェースを選択します。

関連項目:
インタフェースの定義については、ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

OIFCFGを使用したインタフェース名の変更結果

インタフェース名の変更結果は、どの名前を変更するか、またIPアドレスも変更するかどうかによって異なります。インタフェース名のみを変更する場合、結果は、それほど重要ではありません。OCR内に格納されたパブリック・インタフェースの名前を変更する場合、クラスタのノード・アプリケーションも変更する必要があります。したがって、この変更を有効にするために、ノード・アプリケーションを停止する必要があります。

関連項目:
新しいパブリック・インタフェース名を使用するためのノード・アプリケーションの変更の詳細は、My Oracle Support(以前のOracleMetaLink)のNote 276434.1を参照してください。次のURLから入手できます。

https://metalink.oracle.com

ネットワーク・インタフェースの変更

次の手順を実行して、ネットワーク・インタフェースおよびそれに関連するサブネット・アドレスを変更できます。クラスタのすべてのノードでこの変更を実行する必要があります。

この手順では、Oracle ClusterwareおよびOracle Databaseが以前使用していたクラスタ内の各ノードで、ネットワーク・インタフェースおよびIPアドレスを変更します。

注意:
Oracle RAC(RDBMS)インターコネクトで使用されるインタフェースは、Oracle Clusterwareでホスト名に使用されるインタフェースと同じである必要があります。Oracle Clusterwareで監視されない別のインタフェースで、Oracle RACのプライベート・インターコネクトを構成しないでください。

1. 次のコマンドを実行し、Oracle Clusterwareがすべてのクラスタ・ノードで実行されていることを確認します。

$ olsnodes -s

このコマンドでは、次のような出力が戻され、Oracle Clusterwareがクラスタ内のすべてのノードで実行されていることが表示されます。

./olsnodes -s
myclustera Active
myclusterc Active
myclusterb Active

2. 代替インタフェースが構成され、すべてのノードのオペレーティング・システムで操作可能であることを確認します。ご使用のプラットフォームのifconfigコマンド(Windowsではipconfig)を使用します。たとえば、Linuxでは次のように使用します。

$ /sbin/ifconfig..

3. 次のコマンドを使用して、新しいインタフェースの名前およびサブネット・アドレスを指定して、新しいインタフェースをクラスタに追加します。

$ oifcfg setif -global if_name/subnet:cluster_interconnect

インタフェース名にはワイルドカードを使用できます。たとえば、oifcfg setif -global "eth*/192.168.0.0:cluster_interconnectは有効な構文です。ただし、他のクラスタ・インタフェースで使用している他のアドレスやマスクとまぎらわしくならないように注意してください。ワイルドカードを使用すると、コマンドでは次のような警告が戻されます。

eth*/192.168.0.0 global cluster_interconnect
PRIF-29: Warning: wildcard in network parameters can cause mismatch
among GPnP profile, OCR, and system

注意:
従来型ネットワーク構成ではワイルドカードがサポートされないため、ワイルドカードは更新の時点で現行のノード構成を使用して解決されます。

関連項目:
OIFCFGコマンドの使用方法の詳細は、付録D「Oracle Interface Configurationツール(OIFCFG)のコマンド・リファレンス」を参照してください。

4. 前の手順が完了したら、次のように、以前のインタフェースの名前およびサブネット・アドレスを指定して、以前のサブネットを削除できます。

oifcfg delif -global if_name/subnet

次に例を示します。

$ oifcfg delif -global eth1/10.10.0.0

注意:
この手順は、代替インタフェースがグリッド・プラグ・アンド・プレイ構成に取り込まれた後でのみ実行する必要があります。有効な代替インタフェースを準備せずにクラスタのインタフェースを単純に削除すると、無効なクラスタ構成になる可能性があります。

5. 次のコマンドを使用して現行の構成を検証します。

oifcfg getif

次に例を示します。

$ oifcfg getif
eth2 10.220.52.0 global cluster_interconnect
eth0 10.220.16.0 global public

6. rootとして、各ノードで次のコマンドを実行し、すべてのノードのOracle Clusterwareを停止します。

# crsctl stop crs

注意:
クラスタのネットワーク構成が変更される場合、クラスタを完全に停止する必要があります。ローリング停止および再起動を使用しないでください。

7. Oracle Clusterwareが停止したら、ifconfigコマンドを使用して、削除したネットワーク・インタフェースをオペレーティング・システムで構成解除します。次に例を示します。

$ ifconfig down

この時点で、ネットワーク・インタフェースからの以前のサブネットのIPアドレスは、Oracle Clusterwareから構成解除されます。このコマンドは、オペレーティング・システムのIPアドレスの構成に影響しません。

ifconfigによる変更は、永続的ではないため、オペレーティング・システムの構成変更を更新する必要があります。

関連項目:
ifconfigコマンドの効果を永続的にする方法の詳細は、オペレーティング・システムのマニュアルを参照してください。

8. クラスタの各ノードでrootユーザーとして次のコマンドを実行し、Oracle Clusterwareを再起動します。

# crsctl start crs

変更は、Oracle Clusterwareの再起動時に有効になります。

CLUSTER_INTERCONNECTS初期化パラメータを使用している場合は、変更を反映するためにそれを更新する必要があります。

3 Oracle Cluster Registryおよび投票ディスクの管理

Oracle Clusterwareには、構成およびノード・メンバーシップを管理する2つの重要なコンポーネントが含まれます(ローカル・コンポーネントのOracle Local Registry(OLR)も含むOracle Cluster Registry(OCR)および投票ディスク)。

- OCRは、Oracle ClusterwareおよびOracle RACデータベースの構成情報を管理します。

- OLRは、クラスタ内の各ノードに存在し、特定のノードごとにOracle Clusterwareの構成情報を管理します。

- 投票ディスクでは、ノード・メンバーシップに関する情報が管理されます。ノードがクラスタのメンバーになれるよう、各投票ディスクには、クラスタ内のすべてのノードがアクセスできる必要があります。

OCRおよび投票ディスクは、Oracle Automatic Storage Management (Oracle ASM)または動作保証されているクラスタ・ファイル・システムに格納できます。

Oracle Clusterware 11gリリース2(11.2)用のOracle Universal Installerでは、RAWデバイスまたはブロック・デバイスをサポートしていません。ただし、以前のOracle Clusterwareリリースからアップグレードした場合は、RAWデバイスまたはブロック・デバイスの使用を継続できます。Oracle ASMを使用してOCRおよび投票ディスクを格納することをお薦めします。

可用性を向上させるために、Oracle Clusterwareのインストール時に複数の投票ディスクを構成することをお薦めします。投票ディスクをOracle ASMディスク・グループに配置することを選択すると、通常または高い冗長性のディスク・グループを使用する場合に、Oracle ASMによって複数の投票ディスクが確実に構成されます。投票ディスクをクラスタ・ファイル・システムに格納することを選択する場合は、複数の投票ディスクを構成するオプションを選択します(この場合、異なるディスクに基づいて3つの異なるファイル・システムを指定する必要があります)。

必要に応じて、Oracle Clusterwareのインストール・プロセス完了後に、クラスタを停止することなく投票ディスクを動的に追加または置換することもできます。

注意:
インストールの後にCRSCTLを使用して新しい投票ディスクをRAWデバイスに追加すると、リモート・ノード上の新しい投票ディスクのファイル権限が不適切である場合があります。各リモート・ノードで、投票ディスクのファイル権限が適切である(グリッド・インフラストラクチャ・インストール所有者およびOINSTALLグループのメンバーによって所有されている)ことを確認します。権限が不適切である場合は、手動で変更します。
次に例を示します。

grid@myserver>$ ls -l /dev/rhdisk18
crwxrwxrwx  1 root  oinstall  36, 02 Feb 10 20:28 /dev/rhdisk18
$ su root
root@myserver> # chown grid:oinstall /dev/rhdisk18
# exit
$ ls -l /dev/rhdisk18
crwxrwxrwx  1001 grid  oinstall  36, 19 Sep 09 20:29 /dev/rhdisk18

内容は次のとおりです。

- Oracle Cluster RegistryおよびOracle Local Registryの管理

- 投票ディスクの管理

Oracle Cluster RegistryおよびOracle Local Registryの管理

この項では、ユーティリティ(OCRCONFIG、OCRDUMPおよびOCRCHECK)を使用してOCRおよびOracle Local Registry(OLR)を管理する方法について説明します。

OCRには、クラスタ内のすべてのOracleリソースに関する情報が含まれます。

OLRは、クラスタ内の各ノードに配置されている、OCRに類似したレジストリですが、各ノードに固有の情報が含まれます。様々なサービス間の依存性など、Oracle Clusterwareに関する管理性情報が含まれます。Oracle高可用性サービスでこの情報が使用されます。OLRは、クラスタ内の各ノードのローカル記憶域に配置されています。デフォルトの場所は、パスGrid_home/cdata/host_name.olrにあり、Grid_homeはOracle Grid Infrastructureホームで、host_nameはノードのホスト名です。

この項では、OCRの管理について、次の内容を説明します。

- Oracle Automatic Storage ManagementへのOracle Cluster Registryの移行

- Oracle Cluster Registryの場所の追加、置換、修復および削除

- Oracle Cluster Registryのバックアップ

- Oracle Cluster Registryのリストア

- Oracle Cluster Registryの問題の診断

- Oracle Cluster Registryエクスポート・コマンドおよびインポート・コマンドを使用したOracle Cluster Registryの管理

- Oracle Local Registry

- Oracle Cluster Registry構成のアップグレードおよびダウングレード

関連項目:
OCRCONFIGユーティリティの詳細は「OCRCONFIGについて」、OCRDUMPユーティリティおよびOCRCHECKユーティリティの詳細は「Oracle Cluster Registryのトラブルシューティング」を参照してください。

Oracle Automatic Storage ManagementへのOracle Cluster Registryの移行

Oracle Clusterwareの記憶域管理性を向上させるために、OCRは、Oracle Database 11g リリース2(11.2)のOracle ASMを使用するようにデフォルトで構成されます。Oracle ASMディスク・グループに存在するOracle Clusterwareの記憶域では、Oracle Enterprise Managerを使用してデータベースとクラスタウェア記憶域の両方を管理できます。

ただし、以前のバージョンのOracle Clusterwareからアップグレードする場合に、OCRをOracle ASM上に存在するように移行でき、向上されたOracle Clusterwareの記憶域の管理性を利用できます。

注意:
以前のバージョンのOracle Clusterwareを11gリリース2(11.2)にアップグレードしてOracle ASMディスク・グループにOCRを格納する場合は、「ASMの互換性」の互換性属性を11.2.0.0に設定する必要があります。

関連項目:
Oracle ASMの互換性属性の設定の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

OCRCONFIGを使用してOCRをOracle ASMに移行する方法

1. Oracle Clusterware 11gリリース2(11.2)へのアップグレードが完了していることを確認します。次のコマンドを実行し、現在実行中のバージョンを検証します。

$ crsctl query crs activeversion

2. Oracle ASM Configuration Assistant(ASMCA)を使用し、クラスタ内のすべてのノードでOracle ASMを構成して起動します。

関連項目:
ASMCAの使用の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

3. ASMCAを使用して、既存のOCRのサイズと同じかそれ以上で、かつ通常以上の冗長性があるOracle ASMディスク・グループを作成します。

注意:

- OCRが外部冗長性でOracle ASMディスク・グループに格納されている場合に、ディスク・グループ内のディスクに障害が発生したときは、OCRの損失を回避するために別のOCR場所を別のディスク・グループに追加することをお薦めします。
Oracleでは、OCRをOracle ASMおよび共有ファイル・システムの両方に格納するなど、OCRを異なるストレージ・タイプに同時に格納することはできません(ただし、移行中はこのかぎりではありません)。

- あるノードでOracle ASMインスタンスに障害が発生すると、OCRはそのノードで使用できなくなります。
Oracle ASMインスタンス障害の影響を受けるノードで実行されているcrsdプロセスがOCRライターであり、過半数のOCRの場所がOracle ASMに格納されている場合、このノードのOracle ASMインスタンスの停止中にOCRに対してI/Oを試行すると、crsdは停止して、操作不能になります。この時点で、このノードでのクラスタ管理に影響が及びます。

どのような場合であっても、1つのノードの1つのOracle ASMインスタンスの障害が、クラスタ全体に影響を及ぼすことはありません。

- 作成するOracle ASMディスク・グループが、クラスタ内のすべてのノードにマウントされることを確認します。

関連項目:
サイズ指定の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

4. OCRをOracle ASMディスク・グループに追加するには、Oracle Clusterwareスタックが実行されていることを確認し、rootとして次のコマンドを実行します。

# ocrconfig -add +new_disk_group

複数のOCRの場所を追加する場合は、このコマンドを複数回実行できます。最大5つのOCRの場所を使用できます。ただし、後続の実行ではそれぞれ異なるディスク・グループを指定する必要があります。

5. 使用されなくなったストレージ構成を削除するには、rootとして次のコマンドを実行します。

# ocrconfig -delete old_storage_location

構成したすべてのOCRに、このコマンドを実行します。

次の例は、OCRCONFIGを使用して2つのOCRをOracle ASMに移行する方法を示しています。

# ocrconfig -add +new_disk_group
# ocrconfig -delete /dev/raw/raw2
# ocrconfig -delete /dev/raw/raw1

注意:
OCRではディスク・グループの冗長性が継承されます。OCRに高い冗長性が必要な場合は、作成時にディスク・グループを高い冗長性で構成する必要があります。

Oracle ASMから他のタイプの記憶域へのOracle Cluster Registryの移行

Oracle ASMから別の記憶域タイプにOCRを移行するには、次の手順を実行します。

1. Oracle Clusterware 11gリリース2(11.2)へのアップグレードが完了していることを確認します。次のコマンドを実行し、現在実行中のバージョンを検証します。

$ crsctl query crs activeversion

2. ファイルを共有ファイル・システムまたはクラスタ・ファイル・システムにroot、oinstall、640の権限で作成します。

注意:
OCRのシングル・ポイント障害を排除するには、プライマリ・ストレージの場所の2つ以上のミラーを作成します。OCRは、最大5つの場所をサポートします。

3. マウント・パーティションに280MB以上の領域があることを確認します。

4. 作成したファイルがクラスタ内のすべてのノードから認識できることを確認します。

5. ファイルをOCRの場所として追加するには、Oracle Clusterwareスタックが実行されていることを確認し、rootとして次のコマンドを実行します。

# ocrconfig -add file_location

複数のOCRの場所を追加する場合は、このコマンドを複数回実行できます。このコマンドの後続の実行ではそれぞれ異なるファイルの場所を指定する必要があります。

6. 使用されなくなったストレージ構成を削除するには、rootとして次のコマンドを実行します。

# ocrconfig -delete +asm_disk_group

複数のOCRの場所が構成されている場合は、このコマンドを複数回実行できます。

次の例は、OCRCONFIGを使用してOCRをOracle ASMからブロック・デバイスに移行する方法を示しています。Oracle ASMに格納されていないOCRの場合は、異なるデバイスにOCRをミラー化することをお薦めします。

# ocrconfig -add /dev/sdd1
# ocrconfig -add /dev/sde1
# ocrconfig -add /dev/sdf1
# ocrconfig -delete +unused_disk_group

Oracle Cluster Registryの場所の追加、置換、修復および削除

Oracle ClusterwareでのOracleインストール・プロセスでは、OCRを自動的にミラー化するかどうかを選択できます。ミラー化されたOCRは、共有ネットワーク・ファイル・システム(NFS)、またはオラクル社が動作保証している任意のクラスタ・ファイル・システムに手動で配置できます。または、OCRをOracle ASMに配置し、選択する冗長性オプションに応じて、自動的にミラーを作成できるようにすることができます。

この項には次のトピックが含まれます:

- Oracle Cluster Registryの場所の追加

- Oracle Cluster Registryの場所の削除

- Oracle Cluster Registryの場所の置換

- ローカル・ノードのOracle Cluster Registry構成の修復

- Oracle Cluster Registryのデータ損失保護メカニズムの無効化

また、次のような場合は、OCRを手動でミラー化できます(「Oracle Cluster Registryの場所の追加」を参照)。

- Oracle Clusterware 11gリリース2(11.2)へのアップグレード時に、OCRをミラー化することを選択しなかった場合

- Oracle Clusterwareのインストール時に、1つのみのOCRの場所を作成した場合

次のように構成することを薦めします。

- OCRがミラー化されていない、または冗長化されていない記憶域に構成されている場合は、3つ以上のOCRの場所。基礎となる記憶域がRAIDでない場合は、OCRをミラー化することをお薦めします。ミラー化することで、OCRがシングル・ポイント障害になることを防止できます。

- OCRがOracle ASMディスク・グループに構成されている場合は、2つ以上のOCRの場所。OCRは2つの独立したディスク・グループに構成する必要があります。通常、これは作業領域およびリカバリ領域です。

- OCRがミラー化されているハードウェアまたはサード・パーティのミラー化されたボリュームに構成されている場合は、2つ以上のOCRの場所。

注意:

- 元のOCRの場所が存在しない場合は、ocrconfig -addまたはocrconfig -replaceコマンドを実行する前に、適切な権限で空(0バイト)のOCRの場所を作成する必要があります。

- OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

- 指定したOracle ASMディスク・グループが存在し、マウントされていることを確認します。

- 新しいOCRファイル、デバイスまたはディスク・グループは、クラスタ内のすべてのアクティブ・ノードからアクセスできる必要があります。

関連項目:

- OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

OCRの場所のミラー化に加えて、次のことができます。

- 構成ミスまたは他のタイプのOCRエラーがある場合は、OCRの場所を置換できます(「Oracle Cluster Registryの場所の置換」を参照)。

- Oracle Enterprise ManagerまたはOracle Clusterwareのアラート・ログ・ファイルにOCR障害のアラートが表示された場合には、OCRの場所を修復できます(「ローカル・ノードのOracle Cluster Registry構成の修復」を参照)。

- たとえば、OCRの処理が原因でシステムのパフォーマンスが低下した場合や、OCRをRAIDストレージ・デバイスに移行して、複数のOCRの場所を使用する必要がなくなった場合には、OCRの場所を削除します。(「Oracle Cluster Registryの場所の削除」を参照)。

注意:
この項の操作を実行すると、OCRクラスタ全体が影響を受け、ocr.locファイル(LinuxおよびUNIXシステムの場合)およびレジストリ・キー(Windowsシステムの場合)のOCR構成情報が変更されます。ただし、ocrconfigコマンドを実行しても、停止しているノードやOracle Clusterwareが実行されていないノードのOCR構成情報は変更されません。

Oracle Cluster Registryの場所の追加

OCRの場所を追加するには、この項の手順を実行します。Oracle Clusterwareでは、最大5つの冗長なOCRの場所を管理できます。

注意:
OCRがクラスタ・ファイル・システムのファイルまたはネットワーク・ファイル・システムに存在している場合は、この項の手順を実行する前に、空(0バイト)のOCRの場所ファイルを作成してください。

Oracle ASMまたは他のストレージ・デバイスのいずれかにOCRの場所を追加するには、rootユーザーとして次のコマンドを実行します。

# ocrconfig -add +asm_disk_group | file_name

注意:
LinuxおよびUNIXシステムの場合、ocrconfigコマンドは、rootで実行する必要があります。Windowsシステムの場合、ユーザーは管理者グループのメンバーである必要があります。

Oracle Cluster Registryの場所の削除

OCRの場所または障害が発生したOCRの場所を削除するには、それ以外の1つ以上のOCRがオンライン状態である必要があります。OCRの場所の削除は、OCR関連のオーバーヘッドを軽減する場合や、OCRをRAIDなどの冗長な記憶域に移動してOCRのミラー化を中止する場合に実行します。

Oracle Clusterware環境からOCRの場所を削除するには、rootユーザーとして次の手順を実行します。

1. 削除するOCRの場所の他に、1つ以上のOCRの場所がオンライン状態になっていることを確認します。

注意:
他の1つ以上のOCRの場所がアクティブでオンラインになっていない場合は、OCRの削除手順は実行しないでください。

2. クラスタ内の任意のノードで次のコマンドを実行し、Oracle ASMまたは他の場所のいずれかからOCRの場所を削除します。

# ocrconfig -delete +ASM_disk_group | file_name

file_name変数は、デバイス名またはファイル名です。このコマンドを実行すると、Oracle Clusterwareが実行中のすべてのノードでOCR構成が更新されます。

Oracle Cluster Registryの場所の置換

既存のOCRの場所を変更する必要があるか、または障害のあるOCRの場所を正常に機能する場所に変更する必要がある場合は、残りすべてのOCRの場所がオンライン状態のままであれば、次の手順を使用できます。ocrconfig -replaceコマンドでは、2つ以上のOCRの場所が構成されている必要があります。

Oracle Cluster Registryの場所を変更する方法

次の手順を実行します。

1. OCRCHECKユーティリティを使用して、置換しようとしているOCR以外のOCRのコピーがオンラインであるかどうかを検証します(使用するコマンドは次のとおりです)。

$ ocrcheck

OCRCHECKでは、登録されているすべてのOCRの場所、およびそれらが使用可能(オンライン)かどうかが表示されます。OCRの場所が突然使用できなくなった場合は、Oracle Clusterwareがステータスの変更を示すまでにしばらく時間がかかる場合があります。

注意:
置換するOCRの場所は、オンラインまたはオフラインのいずれの状態でもかまいません。

2. 次のコマンドを使用して、置換操作を実行するノードでOracle Clusterwareが実行中であることを確認します。

$ crsctl check crs

3. rootとして次のコマンドを実行し、destination_fileまたは+ASM_disk_groupのいずれかを使用して、現行のOCRの場所を、現行のターゲットのOCRの場所を示すように置換します。

# ocrconfig -replace current_OCR_location -replacement new_OCR_location

前述のコマンドは、オンラインである構成済のOCRの場所が2つ未満の場合は失敗します。

構成済でオンラインのOCRの場所が1つのみである場合は、次のように、最初に新しい場所を追加してから、障害が発生した場所を削除する必要があります。

# ocrconfig -add new_OCR_location
# ocrconfig -delete current_OCR_location

注意:
OCRが存在するノードが停止し、Oracle Clusterwareスタックが他のノードで実行中であるときにクラスタ構成が変更されると、OCRは構成変更を検出して、ocr.locファイルの内容を変更して構成を自己修正します。

関連項目:
記憶域の移行の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

ローカル・ノードのOracle Cluster Registry構成の修復

ノードが停止し、このノードがクラスタの唯一のメンバーであるときにクラスタ構成を変更した場合は、OCRを修復する必要がある場合があります。OCRの修復は、OCRの場所の追加、削除または置換のいずれかに関連します。たとえば、現行のOracle RACクラスタの一部であるノードのいずれかが停止している場合、停止しているノードでOCR構成を更新し、そのノードが再起動された後に再びクラスタに参加できるようにする必要があります。再起動されたノードでrootとして次のコマンド構文を使用し、destination_fileまたは+ASM_disk_groupのいずれかを使用して、現行のターゲットのOCRの場所を示します。

ocrconfig -repair -replace current_OCR_location -replacement target_OCR_location

この操作では、このコマンドを実行したノードのOCRのみが変更されます。たとえば、OCRの場所が/dev/sde1である場合、ノードでコマンド構文ocrconfig -repair -add /dev/sde1を実行すると、そのノードのOCRが修復されます。

注意:

- Oracleクラスタ・レディ・サービス・デーモンが実行されているノードでは、OCR構成を修復できません。

- ocrconfig -repairを使用して、停止しているノードのOCRを修復する場合、他のノードのOCRファイル名と同様の(大/小文字が区別される)OCRファイル名を指定する必要があります。

- ocrconfig -add | -repair | -replaceコマンドを実行する場合は、追加するデバイス、ファイルまたはOracle ASMディスク・グループにアクセスできる必要があります。これはデバイスが存在する必要があることを意味します。空(0バイト)のOCRの場所を作成するか、またはOracle ASMディスク・グループが存在し、マウントされている必要があります。

関連項目:

- OCRCONFIGコマンドの詳細は、「OCRCONFIGコマンド・リファレンス」を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

Oracle Cluster Registryのデータ損失保護メカニズムの無効化

OCRには、不測の上書きによるデータの損失を防止するメカニズムが存在します。ミラー化されたOCRが構成されている場合、Oracle Clusterwareでは、ミラー化されたOCRの場所にアクセスできず、使用可能なOCRの場所に最新の構成が含まれていることが確認できなかった場合、使用可能なOCRの場所に対してそれ以上の変更は行われません。また、この処理により、1つのOCRのみが使用可能なノードでOracle Clusterwareの起動が禁止され、上書きが行われなくなります。このような場合には、Oracle Enterprise ManagerまたはOracle Clusterwareのアラート・ログ・ファイル(あるいはその両方)で、アラート・メッセージが表示されます。ある1つのノードに限って問題が発生している場合は、他のノードでクラスタ・データベースを起動できます。

ただし、環境内のすべてのクラスタ・ノードが起動できず、OCRの修復もすべてのOCRの場所へのアクセスのリストアもできない場合は、この保護メカニズムを無効にできます。次のリストに示した手順により、使用可能なOCRの場所を使用してクラスタを起動できます。ただし、保護メカニズムを無効にすると、以前の正常な状態のときに使用可能でなかったデータは失われる場合があります。

注意:
次の手順を実行してOCRを無効にした場合、現在アクセス可能なOCRに対して最後に正常なOCRの更新が実行された時点から、この上書きを実行するまでの間に行われたOCRへの更新は失われる可能性があります。すなわち、上書きを行うOCRの場所にクラスタ環境に対する構成の最新の更新が含まれていない場合は、ocrconfig -overwriteコマンドを実行すると、データが失われる場合があります。

ノードが起動できず、アラート・ログにCLSD-1009メッセージおよびCLSD-1011メッセージが含まれている場合は、次の手順を実行して、OCRを上書きします。

1. CLSD-1009メッセージおよびCLSD-1011メッセージの原因の解決を試行します。
ノードのOCR構成(LinuxおよびUNIXシステムのocr.locおよびWindowsシステムのレジストリ)をOracle Clusterwareが実行中の他のノードと比較します。

- 構成の内容が一致しない場合は、ocrconfig -repairを実行します。

- 構成の内容が一致している場合は、LinuxおよびUNIXシステムのlsコマンドを実行して、ノードから構成済のすべてのOCRにアクセスできることを確認します。Windowsでは、OCRの場所がファイルの場合はdirコマンドを使用して、GuiOracleObjectManager.exeを実行し、名前付きのクラスタの一部が存在することを確認します。

2. 最新のOCRに、OCRの最新の更新が含まれていることを確認します。
ocrdumpコマンドの出力を確認して、最新の更新が含まれているかどうかを確認します。

3. CLSDメッセージの原因となっている問題を解決できない場合は、ocrconfig -overwriteコマンドを実行してノードを起動します。

Oracle Cluster Registryのバックアップ

この項では、OCRの内容をバックアップし、それをリカバリに使用する方法について説明します。第1の方法では自動的に生成されたOCRのコピーを使用し、第2の方法では手動でバックアップ・コマンドを発行できます。

- 自動バックアップ: OCRのバックアップは、Oracle Clusterwareによって、4時間ごとに自動的に作成されます。バックアップが作成されるごとに、最後の3つのバックアップのコピーが常に保存されます。また、バックアップを作成するCRSDプロセスによって、毎日および各週の終わりにもOCRのバックアップが作成され、保存されます。バックアップの頻度またはOracle Databaseで保存されるファイルの数はカスタマイズできません。

- 手動バックアップ: Oracle Clusterwareスタックが稼働しているノードでocrconfig -manualbackupコマンドを実行して、自動バックアップを待たずに、Oracle Clusterwareによって任意の時刻にOCRのバックアップが実行されるようにします。このコマンドは、管理権限を持つユーザーとして実行する必要があります。-manualbackupオプションは、OCRを変更する前など、必要に応じてバイナリ・バックアップを取得する場合に、特に役立ちます。OLRでは手動バックアップのみがサポートされています。

クラスタウェア・スタックがクラスタ内のすべてのノードで停止している場合、ocrconfig -showbackupコマンドによって示されるバックアップは、ノードごとに異なる場合があります。

注意:
ノードでOracle Clusterwareをインストールまたはアップグレードした後、または、クラスタにノードを追加した後、root.shスクリプトが終了すると、OLRがバックアップされます。

バックアップ・ファイルのリスト

次のコマンドを実行し、バックアップ・ファイルをリストします。

ocrconfig -showbackup

ocrconfig -showbackupコマンドにより、バックアップ場所、タイムスタンプおよびOracle Clusterwareで作成されたバックアップ・ファイルの元のノード名が表示されます。デフォルトでは、-showbackupオプションによって、自動および手動の両方のバックアップに関する情報が表示されますが、autoフラグまたはmanualフラグを含めると、自動バックアップまたは手動バックアップのいずれかの情報のみを表示することができます。

次のコマンドを実行し、内容を検査してバックアップ・ファイルの整合性を検証します。

ocrdump -backupfile backup_file_name

1日に1つ以上のバックアップ・ファイルが自動的に生成されますが、これらのファイルは、任意のバックアップ・ソフトウェアを使用して、プライマリOCRが存在するデバイスとは別のデバイスにコピーすることもできます。

LinuxまたはUNIXシステムでバックアップが生成されるデフォルトの場所は、Grid_home/cdata/cluster_name(cluster_nameはクラスタ名)です。Windowsでバックアップが生成されるデフォルトの場所は、同じパス構造を使用します。デフォルトのバックアップはローカル・ファイル・システム上にあるため、標準のオペレーティング・システムまたはサード・パーティのツールを使用して、OCRCONFIGユーティリティによって作成されたバックアップ・ファイルをオペレーティング・システム・バックアップの一部に含めることをお薦めします。

ヒント:
ocrconfig -backuplocオプションを使用すると、OCRがバックアップを作成する場所を変更できます。OCRCONFIGユーティリティ・オプションの詳細は、付録G「Oracle Cluster Registryユーティリティ・リファレンス」を参照してください。

注意:
LinuxおよびUNIXシステムでは、ocrconfigコマンド・オプションのほとんど(すべてではない)を実行するためにrootユーザーである必要があります。Windowsシステムの場合、ユーザーは管理者グループのメンバーである必要があります。

関連項目:

- 手動で作成されたOCRエクスポート・ファイルを使用してOCRの内容をコピーし、それをリカバリに使用する方法については、「Oracle Cluster Registryエクスポート・コマンドおよびインポート・コマンドを使用したOracle Cluster Registryの管理」を参照してください。

- OCRCONFIGコマンドの詳細は、「OCRCONFIGコマンド・リファレンス」を参照してください。

Oracle Cluster Registryのリストア

リソースで問題が発生した場合、OCRのリストアを実行する前にリソースを再起動します。OCRでの障害の発生を確認するには、ocrcheckを実行し、このコマンドによって障害メッセージが戻された場合は、プライマリOCRとOCRミラーの両方で障害が発生しています。問題を解決するには、プラットフォーム固有のOCRリストア手順を実行します。

注意:

- -importオプションを使用して、OCRバックアップ・ファイルから構成をリストアすることはできません(「Oracle Cluster Registryエクスポート・コマンドおよびインポート・コマンドを使用したOracle Cluster Registryの管理」を参照)。かわりに、次の項で説明するとおり、-restoreオプションを使用する必要があります。

- OCRをOracle ASMディスク・グループに格納していて、ディスク・グループが使用できない場合は、Oracle ASMディスク・グループをリカバリし、マウントする必要があります。

関連項目:
Oracle ASMディスク・グループの管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- LinuxまたはUNIXシステムでのOracle Cluster Registryのリストア

- WindowsシステムでのOracle Cluster Registryのリストア

- Oracle Restart環境でのOracle Cluster Registryのリストア

LinuxまたはUNIXシステムでのOracle Cluster Registryのリストア

OCRをOracle ASMディスク・グループに格納していて、そのディスク・グループが破損している場合は、Oracle ASMユーティリティを使用してOracle ASMディスク・グループをリストアし、OCRをリカバリする前にこのディスク・グループを再びマウントする必要があります。次の手順の指示に従って、ocrconfig -restoreコマンドを実行し、OCRをリカバリします。

関連項目:
Oracle ASMディスク・グループのリストア方法の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

注意:
元のOCRの場所が存在しない場合は、ocrconfig -restoreコマンドを実行する前に、元のOCRの場所と同じ名前の空(0バイト)のOCRの場所を作成する必要があります。

LinuxまたはUNIXシステムでOCRをリストアするには、次の手順を実行します。

1. 1つのノードで次のコマンドを実行して、クラスタのノードをリストします。

$ olsnodes

2. rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

# crsctl stop crs

前述のコマンドでOCRの破損のためエラーが戻される場合は、rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

# crsctl stop crs -f

3. OCRをクラスタ・ファイル・システムまたはネットワーク・ファイル・システムに格納している場合は、rootとして次のコマンドを実行し、「バックアップ・ファイルのリスト」で特定できるOCRバックアップでOCRをリストアします。

# ocrconfig -restore file_name

この手順の完了後、手順10に進みます。

4. rootとして次のコマンドを実行し、1つのノードでOracle Clusterwareスタックを排他モードで起動します。

# crsctl start crs -excl -nocrs

-nocrsオプションは、残りのOracle ClusterwareスタックでcrsdプロセスおよびOCRが起動されないようにします。

表示されるエラーは無視します。

crsdが実行されているかどうかをチェックします。実行されている場合は、rootとして次のコマンドを実行して停止します。

# crsctl stop resource ora.crsd -init

注意:
-initフラグは他のコマンドでは使用しないでください。

5. OCRをOracle ASMディスク・グループにリストアする場合は、SQL*Plusを使用して、リストアするディスク・グループと同じ名前のディスク・グループを最初に作成し、これをローカル・ノードにマウントする必要があります。
ディスク・グループをローカルでマウントできない場合は、次のSQL*Plusコマンドを実行します。

SQL> drop diskgroup disk_group_name force including contents;

必要に応じて、OCRをRAWデバイスにリストアする場合は、rootとしてocrconfig -repair -replaceコマンドを実行する必要があります(すべてのノードに対し、これを行うのに必要なすべての権限があり、OCRが以前にOracle ASMになかったことが前提)。

6. rootとして次のコマンドを実行して、「バックアップ・ファイルのリスト」で特定できるOCRバックアップでOCRをリストアします。

# ocrconfig -restore file_name

注意:

- OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

- OCRをOracle ASMディスク・グループに構成した場合は、Oracle ASMディスク・グループが存在し、マウントされていることを確認します。

関連項目:

- OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

7. 次のコマンドを実行して、OCRの整合性を検証します。

# ocrcheck

8. 次のコマンドを実行して、ノードで排他モードで実行されているOracle Clusterwareを停止します。

# crsctl stop crs -f

9. ocrconfig -restoreコマンドを実行しなかった、クラスタ内のすべてのノードでrootとしてocrconfig -repair -replaceコマンドを実行します。たとえば、4ノードのクラスタのノード1でocrconfig -restoreコマンドを実行した場合は、ノード2、3および4でocrconfig -repair -replaceコマンドを実行する必要があります。

10. rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを起動します。

# crsctl start crs

11. 次のCVUコマンドを実行して、クラスタの一部として構成されているすべてのクラスタ・ノードのOCRの整合性を検証します。

$ cluvfy comp ocr -n all -verbose

関連項目:
CVUの有効化および使用方法の詳細は、付録A「クラスタ検証ユーティリティのリファレンス」を参照してください。

WindowsシステムでのOracle Cluster Registryのリストア

OCRをOracle ASMディスク・グループに格納していて、そのディスク・グループが破損している場合は、Oracle ASMユーティリティを使用してOracle ASMディスク・グループをリストアし、OCRをリカバリする前にこのディスク・グループを再びマウントする必要があります。次の手順の指示に従って、ocrconfig -restoreコマンドを実行し、OCRをリカバリします。

注意:
元のOCRの場所が存在しない場合は、ocrconfig -restoreコマンドを実行する前に、元のOCRの場所と同じ名前の空(0バイト)のOCRの場所を作成する必要があります。

関連項目:
Oracle ASMディスク・グループのリストア方法の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

WindowsシステムでOCRをリストアするには、次の手順を実行します。

1. 1つのノードで次のコマンドを実行して、クラスタのノードをリストします。

C:\>olsnodes

2. 管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

C:\>crsctl stop crs

前述のコマンドでOCRの破損のためエラーが戻される場合は、管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

C:\>crsctl stop crs -f

3. 管理者グループのメンバーとして次のコマンドを実行し、1つのノードでOracle Clusterwareスタックを排他モードで起動します。

C:\>crsctl start crs -excl -nocrs

-nocrsオプションは、残りのOracle ClusterwareスタックでcrsdプロセスおよびOCRが起動されないようにします。

表示されるエラーは無視します。

4. 管理者グループのメンバーとして次のコマンドを実行して、「バックアップ・ファイルのリスト」で特定したOCRバックアップ・ファイルでOCRをリストアします。

C:\>ocrconfig -restore file_name

OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

注意:

- OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

- 指定したOracle ASMディスク・グループが存在し、マウントされていることを確認します。

関連項目:

- OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

5. 次のコマンドを実行して、OCRの整合性を検証します。

C:\>ocrcheck

6. 次のコマンドを実行して、ノードで排他モードで実行されているOracle Clusterwareを停止します。

C:\>crsctl stop crs -f

7. 管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを起動します。

C:\>crsctl start crs

8. 次のクラスタ検証ユーティリティ(CVU)・コマンドを実行して、クラスタ・データベース内のすべてのノードのOCRの整合性を検証します。

C:\>cluvfy comp ocr -n all -verbose

関連項目:
CVUの有効化および使用方法の詳細は、付録A「クラスタ検証ユーティリティのリファレンス」を参照してください。

Oracle Restart環境でのOracle Cluster Registryのリストア

注意:

- OCRは、下位互換性のために存在します。

- 作成されたOCRの場所は、Oracle Restart環境では更新されません。

- Oracle Restartホームがバックアップされている場合、障害が発生したときに、Oracle RestartホームをリストアするとOCRがリストアされます。

Oracle Restart環境でOCRを復元するには、次の手順を使用します。

1. すべてのノードで次のコマンドを実行し、Oracle高可用性サービスを停止します。

$ crsctl stop has [-f]

2. ocrcheck -configコマンドを実行して、OCRの場所を特定し、適切な権限を使用してその場所で空(0バイト)のOCRの場所を作成します。

3. rootとして次のコマンドを実行し、OCRをリストアします。

# crsctl pin css -n host_name

注意:
OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

関連項目:
OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

4. ocrcheckコマンドを実行して、OCRの整合性を検証します。

5. すべてのノードで次のコマンドを実行し、Oracle高可用性サービスを起動します。

$ crsctl start has

Oracle Cluster Registryの問題の診断

OCRDUMPユーティリティおよびOCRCHECKユーティリティを使用して、OCRの問題を診断できます。

関連項目:

- OCRDUMPユーティリティの詳細は、「OCRDUMPユーティリティの構文およびオプション」を参照してください。

- OCRCHECKユーティリティの詳細は、「OCRCHECKユーティリティの使用」を参照してください。

Oracle Cluster Registryエクスポート・コマンドおよびインポート・コマンドを使用したOracle Cluster Registryの管理

自動的に作成されたOCRバックアップ・ファイルを使用するのみでなく、環境のノードの追加や削除、Oracle Clusterwareリソースの変更、データベースのアップグレード、ダウングレードまたは作成などの重要な構成変更を行う前と後には、OCRの内容をエクスポートする必要もあります。これは、OCRの内容をファイル形式でエクスポートするocrconfig -exportコマンドを使用して実行します。

注意:
OCRのリストアでは次の制限事項に注意してください。

- ocrconfig -restoreで生成されるファイル形式は、ocrconfig -exportで生成されるファイル形式と互換性がありません。ocrconfig -exportコマンドとocrconfig -importコマンドには互換性があります。ocrconfig -manualbackupコマンドとocrconfig -restoreコマンドには互換性があります。2つのファイル形式には互換性がないため、交換して使用しないでください。

- OCRをエクスポートする場合は、名前の文字列にocr、クラスタ名およびタイムスタンプを含めることをお薦めします。次に例を示します。

ocr_mycluster1_20090521_2130_export

また、ocrconfig -exportコマンドを使用すると、構成の変更によってエラーが発生した場合に、-importオプションを使用してOCRをリストアできるようになります。たとえば、構成に解決できない問題がある場合や、構成の変更後にOracle Clusterwareを再起動できない場合は、プラットフォームに応じた手順を使用して、構成をリストアします。

OCRをリストアするには、次の理由から、自動バックアップまたは手動バックアップのいずれかとocrconfig -restoreコマンドを使用し、ocrconfig -exportコマンドおよびocrconfig -importコマンドは使用しないことをお薦めします。

- バックアップはOCRの一貫したスナップショットですが、エクスポートは、そうではありません。

- バックアップはシステムがオンライン状態の場合に作成されます。ocrconfig -exportコマンドを使用して一貫したスナップショットを取得するには、クラスタ内のすべてのノードでOracle Clusterwareを停止する必要があります。

- OCRDUMPユーティリティを使用して、バックアップを検査できます。エクスポートの内容は検査できません。

- ocrconfig -showbackupコマンドを使用してバックアップをリストできますが、生成されたすべてのエクスポートはユーザーが追跡する必要があります。

この項には次のトピックが含まれます:

- LinuxまたはUNIXシステムでのOracle Cluster Registryの内容のインポート

- WindowsシステムでのOracle Cluster Registryの内容のインポート

注意:
構成を変更すると、ほとんどの場合は、OCRの内容が変更されるのみでなく、ファイルおよびデータベース・オブジェクトが作成されます。OCRをリストアしても、このような変更はリストアされない場合があります。これらの構成の変更のリストアが一部でも失敗した場合は、以前の正しい構成に戻すためにOCRをリストアしないでください。実行した場合、OCRの場所の内容がシステムの他の部分の状態と一致しなくなる可能性があります。

LinuxまたはUNIXシステムでのOracle Cluster Registryの内容のインポート

注意:
この手順では、クラスタ内のすべてのノードでのOracle Clusterwareのデフォルトのインストールを前提としています。この場合、Oracle Clusterwareの自動起動は有効になります。

LinuxまたはUNIXシステムでOCRをインポートするには、次の手順を実行します。

1. 1つのノードで次のコマンドを実行して、クラスタのノードをリストします。

$ olsnodes

2. rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

# crsctl stop crs

前述のコマンドでOCRの破損のためエラーが戻される場合は、rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

# crsctl stop crs -f

3. rootとして次のコマンドを実行し、1つのノードでOracle Clusterwareスタックを排他モードで起動します。

# crsctl start crs -excl

表示されるエラーは無視します。

crsdが実行されているかどうかをチェックします。実行されている場合は、rootとして次のコマンドを実行して停止します。

# crsctl stop resource ora.crsd -init

注意:
-initフラグは他のコマンドでは使用しないでください。

4. rootとして次のコマンドを実行し、OCRをインポートします。

# ocrconfig -import file_name

クラスタまたはネットワーク・ファイル・システムにOCRをインポートしている場合は、手順7に進みます。

注意:

- 元のOCRの場所が存在しない場合は、ocrconfig -importコマンドを実行する前に空(0バイト)のOCRの場所を作成する必要があります。

- OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

- OCRをOracle ASMディスク・グループに構成した場合は、Oracle ASMディスク・グループが存在し、マウントされていることを確認します。

関連項目:

- OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

5. 次のコマンドを実行して、OCRの整合性を検証します。

# ocrcheck

6. 次のコマンドを実行して、ノードで排他モードで実行されているOracle Clusterwareを停止します。

# crsctl stop crs -f

7. rootとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを起動します。

# crsctl start crs

8. 次のCVUコマンドを実行して、クラスタの一部として構成されているすべてのクラスタ・ノードのOCRの整合性を検証します。

$ cluvfy comp ocr -n all -verbose

注意:
インポートできるのは、エクスポートしたOCRのみです。バックアップからOCRをリストアするには、「Oracle Cluster Registryのバックアップ」で説明するとおり、かわりに-restoreオプションを使用する必要があります。

関連項目:
CVUの有効化および使用方法の詳細は、付録A「クラスタ検証ユーティリティのリファレンス」を参照してください。

WindowsシステムでのOracle Cluster Registryの内容のインポート

注意:
この手順では、クラスタ内のすべてのノードでのOracle Clusterwareのデフォルトのインストールを前提としています。この場合、Oracle Clusterwareの自動起動は有効になります。

WindowsシステムでOCRをインポートするには、次の手順を実行します。

1. 1つのノードで次のコマンドを実行して、クラスタのノードをリストします。

C:\>olsnodes

2. 管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

C:\>crsctl stop crs

前述のコマンドでOCRの破損のためエラーが戻される場合は、管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを停止します。

C:\>crsctl stop crs -f

3. 管理者グループのメンバーとして次のコマンドを実行し、1つのノードでOracle Clusterwareスタックを排他モードで起動します。

C:\>crsctl start crs -excl

表示されるエラーは無視します。

crsdが実行されているかどうかをチェックします。実行されている場合は、管理者グループのメンバーとして次のコマンドを実行して停止します。

C:\>crsctl stop resource ora.crsd -init

注意:
-initフラグは他のコマンドでは使用しないでください。

4. 管理者グループのメンバーとして次のコマンドを実行してOCRをインポートします。

C:\>ocrconfig -import file_name

OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

注意:

- 元のOCRの場所が存在しない場合は、ocrconfig -importコマンドを実行する前に空(0バイト)のOCRの場所を作成する必要があります。

- OCR構成で指定したOCRデバイスが存在し、これらのOCRデバイスが有効であることを確認します。

- 指定したOracle ASMディスク・グループが存在し、マウントされていることを確認します。

関連項目:

- OCR作成の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

5. 次のコマンドを実行して、OCRの整合性を検証します。

C:\>ocrcheck

6. 次のコマンドを実行して、ノードで排他モードで実行されているOracle Clusterwareを停止します。

C:\>crsctl stop crs -f

7. 管理者グループのメンバーとして、すべてのノードで次のコマンドを実行し、Oracle Clusterwareを起動します。

C:\>crsctl start crs

8. 次のクラスタ検証ユーティリティ(CVU)・コマンドを実行して、クラスタ・データベース内のすべてのノードのOCRの整合性を検証します。

C:\>cluvfy comp ocr -n all -verbose

関連項目:
CVUの有効化および使用方法の詳細は、付録A「クラスタ検証ユーティリティのリファレンス」を参照してください。

Oracle Local Registry

Oracle Clusterware 11gリリース2(11.2)では、クラスタ内の各ノードに、Oracle ClusterwareによるOCRのインストール時にインストールおよび構成されるOracle Local Registry(OLR)というノード固有のリソースのローカル・レジストリがあります。Oracle Clusterwareが実行されているかどうか、または完全に機能しているかどうかに関係なく、各ノードの複数のプロセスには、それらのプロセスが存在するノードに固有のOLRに対する同時読取りおよび書込みアクセス権があります。

デフォルトでは、OLRは各ノードのGrid_home/cdata/host_name.olrに格納されています。

OLRは、-localオプションを指定したOCRCHECK、OCRDUMPおよびOCRCONFIGユーティリティをrootとして使用して管理します。

- OCRCHECKユーティリティを次のように使用すると、ローカル・ノードのOLRのステータスをチェックできます。

# ocrcheck -local

Status of Oracle Cluster Registry is as follows :
Version                  :          3
Total space (kbytes)     :     262132
Used space (kbytes)      :       9200
Available space (kbytes) :     252932
ID                       :  604793089
Device/File Name         : /private2/crs/cdata/localhost/dglnx6.olr
Device/File integrity check succeeded

Local OCR integrity check succeeded

- OCRDUMPユーティリティを次のように使用すると、プログラムを起動したテキスト端末にローカル・ノードのOLRの内容を表示できます。

# ocrdump -local -stdout

- OCRCONFIGユーティリティを使用すると、ローカル・ノードのOLRで管理タスクを実行できます。

- OLRをファイルにエクスポートするには、次のようにユーティリティを使用します。

# ocrconfig –local –export file_name

注意:

- -manualbackupコマンドおよび-restoreコマンドを使用し、-importコマンドおよび-exportコマンドは使用しないことをお薦めします。

- OLRをエクスポートする場合は、名前の文字列にolr、ホスト名およびタイムスタンプを含めることをお薦めします。次に例を示します。

olr_myhost1_20090603_0130_export

- 指定したファイルをOLRにインポートするには、次のようにユーティリティを使用します。

# ocrconfig –local –import file_name

- OLRを手動でバックアップするには、次のようにユーティリティを使用します。

# ocrconfig –local –manualbackup

注意:
OLRは、インストールまたはアップグレードの最後にバックアップされます。その後は、手動でのみOLRをバックアップできます。自動バックアップはOLRではサポートされていません。OCRをOracle ASMから他の記憶域に移行する場合、またはOCRを他の記憶域からOracle ASMに移行する場合は、新しいバックアップを作成する必要があります。
OLRのデフォルトのバックアップ場所は、パスGrid_home/cdata/host_nameにあります。

- OLRバックアップ・ファイルの内容を表示するには、次のようにユーティリティを使用します。

ocrdump -local -backupfile olr_backup_file_name

- OLRのバックアップの場所を変更するには、次のようにユーティリティを使用します。

ocrconfig -local -backuploc new_olr_backup_path

- OLRをリストアするには、次のようにユーティリティを使用します。

# crsctl stop crs
# ocrconfig -local -restore file_name
# ocrcheck -local
# crsctl start crs
$ cluvfy comp olr

Oracle Cluster Registry構成のアップグレードおよびダウングレード

Oracle Clusterwareをアップグレードすると、ocrconfig -upgradeコマンドが自動的に実行されます。ダウングレードする場合は、各コンポーネントのダウングレード手順に従い、ocrconfig -downgradeコマンドを使用してOCRもダウングレードします。OCRをアップグレードする場合は、OCRCHECKユーティリティを使用してOCRの整合性を検証できます。

投票ディスクの管理

この項では、次のクラスタ内の投票ディスクの管理について説明します。

- Oracle ASMでの投票ディスクの格納

- 投票ディスクのバックアップ

- 投票ディスクのリストア

- 投票ディスクの追加、削除または移行

注意:
以前のバージョンのOracle Clusterwareで投票ディスクのバックアップおよびリカバリに使用されたddコマンドは、Oracle Clusterware 11gリリース2(11.2)ではサポートされません。ddコマンドまたはcpコマンドを使用してコピーされた投票ディスクをリストアすると、Oracle Clusterware 11gリリース2(11.2)スタックが起動されない場合があります。この章で説明されているバックアップおよびリストア手順を使用して、適切な投票ディスクの機能を確保します。

注意:

- 投票ディスクの管理には有効かつ動作中のOCRが必要です。投票ディスクを追加、削除、置換またはリストアする前に、ocrcheckコマンドをrootとして実行します。OCRが使用できない場合または破損している場合は、「Oracle Cluster Registryのリストア」で説明するとおり、OCRをリストアする必要があります。

- 以前のバージョンのOracle ClusterwareをOracle Clusterware 11gリリース2(11.2)にアップグレードしてOracle ASMディスク・グループに投票ディスクを格納する場合は、「ASMの互換性」(COMPATIBLE.ASM)の互換性属性を11.2.0.0に設定する必要があります。

関連項目:
Oracle ASMの互換性属性の設定の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

Oracle ASMでの投票ディスクの格納

Oracle ASMは、格納する他のファイルとは異なる方法で投票ディスクを管理します。投票ディスクをOracle ASMに格納するようにすると、Oracle ASMは、選択したディスク・グループにクラスタのすべての投票ディスクを格納します。Oracle ASMに格納される投票ディスクとOracle ASMに格納されない投票ディスクを同じクラスタ内で使用できません。

Oracle ASMで投票ディスクを構成した後、投票ディスクの構成に変更を加えることができるのは、crsctl replace votediskコマンドを使用する場合のみです。これは、作業投票ディスクがない場合にもあてはまります。crsctl query css votediskによって使用中の投票ディスクがないと報告されても、Oracle ClusterwareはOracle ASMが使用中だったことを記憶しているため、replaceが必要になります。replaceを使用して、Oracle ASM以外の記憶域に投票ディスクを移動した後でのみ、add css votediskおよびdelete css votediskが再び使用可能になります。

特定のOracle ASMディスク・グループに格納できる投票ファイルの数は、ディスク・グループの冗長性によって異なります。

- 外部冗長性: 外部冗長性があるディスク・グループでは単一の投票ディスクのみを格納できます。

- 通常の冗長性: 通常の冗長性があるディスク・グループでは3つの投票ディスクを格納します。

- 高い冗長性: 高い冗長性があるディスク・グループでは5つの投票ディスクを格納します。

デフォルトでは、Oracle ASMが、ディスク・グループ内のそれ自体の障害グループに各投票ディスクを配置します。障害グループは、ディスク・グループ内のディスクのサブセットです。障害グループは、あるディスクに障害が発生し、コンポーネントを共有する他のディスクにも障害が発生した場合などに、コンポーネントを共有するディスクを定義します。障害グループとして定義する可能性のある対象の例として、同じSCSIコントローラを共有しているSCSIディスク・セットがあります。障害グループは、冗長データの格納に使用するOracle ASMディスクを決定するために使用されます。たとえば、ファイルに2方向のミラー化が指定されている場合、ファイル・エクステントの冗長コピーは別の障害グループに格納される必要があります。

投票ディスクが通常または高い冗長性があるOracle ASM上に格納されている状態で、1つの障害グループに存在する記憶域ハードウェアに障害が発生した場合、影響を受けない障害グループのディスク・グループに使用可能な別のディスクが存在すると、Oracle ASMは、影響を受けない障害グループに投票ディスクをリカバリします。

通常の冗長性のディスク・グループには2つ以上の障害グループが含まれている必要がありますが、Oracle ASM上に投票ディスクを格納する場合は、通常の冗長性のディスク・グループに3つ以上の障害グループが含まれている必要があります。高い冗長性のディスク・グループには3つ以上の障害グループが含まれている必要があります。ただし、いくつかの障害グループを使用することをお薦めします。障害グループの数が少ないか、容量が均一でない障害グループの場合、使用可能な記憶域のすべてを十分に使用できない割当ての問題が発生する可能性があります。

各ディスク・グループ内に、そのディスク・グループの冗長性タイプをサポートするために十分な障害グループを指定する必要があります。

crsctl replace votediskコマンドを使用すると、特定の投票ディスク・セットを、あるOracle ASMディスク・グループから別のOracle ASMディスク・グループに、または動作保証されているファイル・システムに移動できます。あるOracle ASMディスク・グループから別のOracle ASMディスク・グループに投票ディスクを移動する場合は、以前のディスク・グループとは異なる冗長レベルのディスク・グループに投票ディスクを配置することで、投票ディスクの数を変更できます。

注意:

- 1つのディスク・グループで、投票ディスクの数を直接変更することはできません。

- 投票ディスクの数はOracle ASMがディスク・グループの冗長レベルに応じて管理するため、Oracle ASMディスク・グループに格納されている投票ディスクに対してcrsctl add | delete votediskコマンドを使用することはできません。

- 投票ディスクがOracle ASMディスク・グループに格納されている場合は、クラスタ・ファイル・システムに投票ディスクを追加できません。Oracleでは、Oracle ASM、および同じクラスタのクラスタ・ファイル・システム上に直接、投票ディスクを同時に格納することはサポートされていません。

関連項目:

- ディスク・グループの冗長性および定数障害グループの詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- 投票ディスクの移行の詳細は、「投票ディスクの追加、削除または移行」を参照してください。

投票ディスクのバックアップ

Oracle Clusterware 11gリリース2(11.2)では、投票ディスクをバックアップする必要がなくなりました。投票ディスクのデータは、構成変更の一部として自動的にOCRにバックアップされ、追加された任意の投票ディスクに自動的にリストアされます。ただし、すべての投票ディスクが破損した場合は、「投票ディスクのリストア」で説明するとおり、リストアすることができます。

投票ディスクのリストア

すべての投票ディスクが破損している場合は、次のようにリストアできます。

1. 必要に応じて、「Oracle Cluster Registryのリストア」で説明するとおり、OCRをリストアします。
この手順が必要なのは、OCRがOracle ASM上に存在し、ディスク・グループが使用できなくなっている場合など、OCRも破損しているか、または使用できない場合のみです。

関連項目:
Oracle ASMディスク・グループの管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

2. 次のコマンドを1つのノードのみからrootとして実行し、Oracle Clusterwareスタックを排他モードで起動します。この場合、投票ファイルが存在したり、使用可能である必要はありません。

# crsctl start crs -excl

3. crsctl query css votediskコマンドを実行して、現在定義されている、次のような投票ファイルのリストを取得します。

$ crsctl query css votedisk
--  -----    -----------------                --------- ---------
##  STATE    File Universal Id                File Name Disk group
1. ONLINE   7c54856e98474f61bf349401e7c9fb95 (/dev/sdb1) [DATA]

このリストは、すべての投票ディスクが破損していたり、投票ディスクにステータス3またはOFFとマーク付けされているエントリが存在する可能性がある場合は、空であることがあります。

4. 投票ファイルの格納場所に応じて、次のいずれかの方法を実行します。

- 投票ディスクがOracle ASMに格納されている場合は、次のコマンドを実行して、指定するOracle ASMディスク・グループに投票ディスクを移行します。

crsctl replace votedisk +asm_disk_group

投票ファイルの移行先のOracle ASMディスク・グループは、Oracle ASMに存在する必要があります。このコマンドは、投票ディスクがOracle ASMに格納されていても、他のストレージ・デバイスに格納されていても使用できます。

- Oracle ASMに投票ディスクを格納していなかった場合は、前の手順で取得したファイル・ユニバーサル識別子(FUID)を使用して、次のコマンドを実行します。

$ crsctl delete css votedisk FUID

次のコマンドを実行して、投票ディスクを追加します。

$ crsctl add css votedisk path_to_voting_disk

5. rootとしてOracle Clusterwareスタックを停止します。

# crsctl stop crs

注意:
Oracle Clusterwareスタックが排他モードで実行されている場合は、-fオプションを使用してスタックを強制的に停止します。

6. rootとしてOracle Clusterwareスタックを通常モードで再起動します。

# crsctl start crs

投票ディスクの追加、削除または移行

Oracle Clusterwareのインストール後に、投票ディスクを追加、削除および移行できます。これを行うために使用するコマンドは、投票ディスクがOracle ASMに存在するか、別の記憶域オプションに存在するかによって異なります。

Oracle ASMに格納されている投票ディスクの変更

- 投票ディスクのFUIDと現在の各投票ディスクのファイル・パスを表示するには、crsctl query css votediskコマンドを実行して、次のような出力を表示します。

$ crsctl query css votedisk
--  -----    -----------------                --------- ---------
##  STATE    File Universal Id                File Name Disk group
1. ONLINE   7c54856e98474f61bf349401e7c9fb95 (/dev/sdb1) [DATA]

このコマンドでは、ディスク順序番号、ディスクのステータス、FUID、ディスクのパス、およびディスクが格納されているOracle ASMディスク・グループの名前が戻されます。

- Oracle ASMから代替ストレージ・デバイスに投票ディスクを移行するには、次のコマンドを使用して、Oracle ASMディスク・グループと置き換えるOracle ASM以外のストレージ・デバイスまでのパスを指定します。

$ crsctl replace votedisk path_to_voting_disk

クラスタ内の任意のノードでこのコマンドを実行できます。

- Oracle ASMに格納されていないすべての投票ディスクを、Oracle ASMによって管理されているOracle ASMディスク・グループ内の投票ディスクと置き換えるには、次のコマンドを実行します。

$ crsctl replace votedisk +asm_disk_group

Oracle ASMに格納されていない投票ディスクの変更

- 投票ディスクFUIDおよび現行の各投票ディスクのファイル・パスを表示するには、次のコマンドを実行します。

$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
1. ONLINE   7c54856e98474f61bf349401e7c9fb95 (/cfs/host09_vd3) []

このコマンドでは、ディスク順序番号、ディスクのステータス、FUID、およびディスクのパスが戻され、Oracle ASMディスク・グループの名前は戻されません。

- 1つ以上の投票ディスクを追加するには、次のコマンドを実行します。path_to_voting_disk変数は、追加する投票ディスクの1つ以上の空白区切りの完全パスで置き換えます。

$ crsctl add css votedisk path_to_voting_disk [...]

- 投票ディスクAを投票ディスクBと置き換えるには、投票ディスクBを追加してから投票ディスクAを削除する必要があります。新しいディスクを追加して既存のディスクを削除するには、次のコマンドを実行します(path_to_voting_diskB変数は投票ディスクBの完全修飾パス名に置き換えます)。

$ crsctl add css votedisk path_to_voting_diskB -purge

-purgeオプションを使用すると、既存の投票ディスクが削除されます。

- 投票ディスクを削除するには、次のコマンドを実行します。1つ以上の空白区切りの投票ディスクFUIDまたは削除する投票ディスクのカンマ区切りのディレクトリ・パスを指定します。

$ crsctl delete css votedisk {FUID | path_to_voting_disk[...]}

注意:
クラスタが停止し、失われた投票ディスクのために再起動できない場合は、rootとして次のコマンドを実行してCSSを排他モードで起動する必要があります。

# crsctl start crs -excl

CSSを排他モードで起動したら、次のコマンドを使用して投票ディスクを置換できます。

# crsctl replace votedisk path_to_voting_disk

Oracle ASMへの投票ディスクの移行

Oracle ASMに投票ディスクを移行するには、次のコマンドにOracle ASMディスク・グループ名を指定します。

$ crsctl replace votedisk +asm_disk_group

クラスタ内の任意のノードでこのコマンドを実行できます。

投票ディスクの場所の確認

投票ディスクの変更後、次のコマンドを使用して投票ディスクの場所を確認します。

$ crsctl query css votedisk

関連項目:
CRSCTLコマンドの詳細は、付録E「CRSCTLユーティリティのリファレンス」を参照してください。

4 クラスタ・ノードの追加および削除

この章では、既存のクラスタにノードを追加する方法、およびクラスタからノードを削除する方法について説明します。この章では、Linux、UNIXおよびWindowsシステムでこれらのタスクを実行する手順を説明しています。

注意:

- 特に指定がないかぎり、Oracle Clusterwareをインストールしたユーザーとしてノードの追加および削除のすべての手順を実行します。

- クラスタを作成する場合は、第5章「Oracle Clusterwareのクローニング」に記載されているクローニング手順を使用することをお薦めします。

内容は次のとおりです。

- クラスタ・ノードを追加するための必須手順

- LinuxおよびUNIXシステムでのクラスタ・ノードの追加および削除

- Windowsシステムでのクラスタ・ノードの追加および削除

クラスタ・ノードを追加するための必須手順

注意:
クラスタにノードを追加する前に、『Oracle Grid Infrastructureインストレーション・ガイド』に示す前処理を実行してください。
Oracle Clusterwareはインストールしないでください。ソフトウェアはクラスタにノードを追加したときに既存のノードからコピーされます。

次の手順を実行して、クラスタに追加するノードを準備します。

1. 物理的な接続を確立します。
ノードのハードウェアをクラスタのネットワーク・インフラストラクチャに接続します。この作業には、電気的な接続の確立、ネットワーク・インターコネクトの構成、共有ディスク・サブシステム接続の構成などが含まれます。この手順の詳細は、ハードウェア・ベンダーのマニュアルを参照してください。

2. オペレーティング・システムをインストールします。
クラスタの他のノード上のオペレーティング・システムと一致するオペレーティング・システムのクローン・イメージをインストールします。これには、必要なサービス・パッチ、更新およびドライバのインストールも含まれます。この手順の詳細は、オペレーティング・システム・ベンダーのマニュアルを参照してください。

注意:
クローン・イメージを使用することをお薦めします。ただし、インストール要件が満たされている場合は、ベンダーのドキュメントに従ってオペレーティング・システムをインストールしてください。

3. Oracleユーザーを作成します。
既存ノードに存在すべてのOracleユーザーを新規ノードで作成する必要があります。たとえば、2つのノードを持つクラスタにノードを追加する際、これら2つのノードにグリッド・インフラストラクチャ・ホームとOracleホームの異なる所有者が存在する場合は、新規ノードにOracleホームをインストールする予定がなくても、新規ノードでこれらの所有者を作成する必要があります。

注意:
この手順は、LinuxおよびUNIXシステムに対してのみ実行します。

rootとして、既存ノードと同じユーザーIDおよびグループIDを使用してOracleユーザーおよびグループを作成します。

4. SSHがノードに構成されていることを確認します。

注意:
Oracle Clusterware 11gリリース2(11.2)をインストールすると、SSHが構成されます。SSHが構成されない場合は、SSHの構成について、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

5. クラスタ検証ユーティリティ(CVU)を使用して、ハードウェアおよびオペレーティング・システムのインストールを確認します。

追加対象ノードにハードウェアおよびオペレーティング・システムを構成した後、次のコマンドを実行して、クラスタ内の他のノードから追加対象ノードへの到達可能性を検査できます。また、このコマンドで、ローカル・ノードから指定されたすべてのノードへのユーザー等価関係、指定されたすべてのノード間のノード接続性、指定されたすべてのノードからの共有記憶域へのアクセス可能性などを検査することもできます。

既存ノードで、Grid_home/binディレクトリからCVUコマンドを実行して、参照ノードのプロパティと、現在のクラスタ環境に含まれるその他のすべてのノードのプロパティとの詳細な比較情報を取得します。ref_nodeを、CVUで追加対象ノードと比較する既存クラスタ内のノードの名前に置き換えます。-nオプションの後に、カンマ区切りのノードのリストを指定します。次の例では、orainventory_groupはOracle Inventoryグループの名前、osdba_groupはOSDBAグループの名前です。

$ cluvfy comp peer [-refnode ref_node] -n node_list
[-orainv orainventory_group] [-osdba osdba_group] [-verbose]

注意:
参照ノードについては、CVUによる比較を行うクラスタ・ノードを選択します。たとえば、-nオプションで指定して追加するノードなどです。

この項の手順を完了すると、ノードをクラスタに追加できるようになります。

注意:
Oracle Clusterwareインストールの完了後は、ホスト名の変更(ドメイン修飾の追加または削除を含む)はしないでください。ホスト名を変更されたノードはクラスタから削除され、新しい名前で追加されます。

LinuxおよびUNIXシステムでのクラスタ・ノードの追加および削除

この項では、LinuxおよびUNIXシステムでのクラスタ・ノードの追加および削除について説明します。この項のノードの追加の手順は、「クラスタ・ノードを追加するための必須手順」の項の手順を完了していることを前提としています。

ノード追加プロセスの最後の手順には、既存のノード上のOracle Clusterwareホームから追加対象ノードへのOracle Clusterwareホームの拡張が含まれます。

この項には次のトピックが含まれます:

- LinuxおよびUNIXシステムでのクラスタ・ノードの追加

- LinuxおよびUNIXシステムでのクラスタ・ノードの削除

注意:
Oracle Clusterware 11gリリース1(11.1)以降では、ノードの追加時、Oracle Universal Installerはデフォルトでサイレント・モードになっています。

LinuxおよびUNIXシステムでのクラスタ・ノードの追加

この手順では、クラスタにノードを追加する方法について説明します。この手順では、次の項目を前提としています。

- node1およびnode2という2つのノードを持つクラスタが存在する

- グリッド・ネーミング・サービス(GNS)を使用していない場合は、node3-vipという仮想ノード名を使用して、IPアドレスに解決される、node3という名前のノードを追加する

- Oracle Clusterwareがnode1およびnode2のローカルの非共有ホームにインストールされており、Grid_homeは正常にインストールされたホームを表す

ノードを追加するには、次の手順を実行します。

1. クラスタ環境内で1つ以上のノードにOracle Clusterwareを正常にインストールしていることを確認します。次の手順を実行するには、Grid_homeが、正常にインストールされたOracle Clusterwareホームを指している必要があります。

関連項目:
Oracle Clusterwareのインストール手順については、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

2. クラスタおよびnode3の整合性を検証します。

$ cluvfy stage -pre nodeadd -n node3 [-fixup [-fixupdir fixup_dir]] [-verbose]

-fixupオプションと、検証が失敗した場合にクラスタまたはノードを修正するための指示がCVUによって出力されるディレクトリを指定できます。

3. グリッド・インフラストラクチャ・ホームをnode3に拡張するには、node1のGrid_home/oui/binに移動し、次の構文を使用してOracle ClusterwareをインストールしたユーザーとしてaddNode.shスクリプトを実行します(node3は追加するノードの名前、node3-vipはノードのVIP名です)。
グリッド・ネーミング・サービス(GNS)を使用している場合、次のコマンドを実行します。

$ ./addNode.sh "CLUSTER_NEW_NODES={node3}"

グリッド・ネーミング・サービス(GNS)を使用していない場合、次のコマンドを実行します。

$ ./addNode.sh "CLUSTER_NEW_NODES={node3}" "CLUSTER_NEW_VIRTUAL_
HOSTNAMES={node3-vip}"

注意:
カッコの中にノードのカンマ区切りリストを入力することで、CLUSTER_NEW_NODESとCLUSTER_NEW_VIRTUAL_HOSTNAMESパラメータに複数のノードを指定できます。次に例を示します。

"CLUSTER_NEW_NODES={node3,node4,node5}"
"CLUSTER_NEW_VIRTUAL_HOSTNAMES={node3-vip,node4-vip,node5-vip}"

または、例4-1に示すエントリをレスポンス・ファイルに記述したうえで、次のようにaddNode.shスクリプトを実行することもできます。file_nameはファイルの名前です。

$ ./addNode.sh -responseFile file_name

例4-1 Oracle Clusterwareホームを追加するためのレスポンス・ファイルのエントリ

RESPONSEFILE_VERSION=2.2.1.0.0

CLUSTER_NEW_NODES={node3}
CLUSTER_NEW_VIRTUAL_HOSTNAMES={node3-vip}

関連項目:
コマンドライン・レスポンス・ファイルの構成方法の詳細は、『Oracle Universal InstallerおよびOpatchユーザーズ・ガイド』を参照してください。

注意:

- Oracleグリッド・ネーミング・サービス(GNS)を使用していない場合は、DNSにnode3の名前およびIPアドレスを追加する必要があります。

- コマンドラインの値は、常にレスポンス・ファイルの値に優先します。

4. Oracle RACまたはOracle RAC One Nodeデータベースをクラスタで構成した場合で、ローカルのOracleホームを持つ場合は、次を実行してOracle Databaseホームをnode3に拡張します。

1. node1のOracle_home/oui/binディレクトリに移動し、次の構文を使用してOracle RACをインストールしたユーザーとしてaddNode.shスクリプトを実行します。

$ ./addNode.sh "CLUSTER_NEW_NODES={node3}"

2. rootとしてnode3でOracle_home/root.shスクリプトを実行します。Oracle_homeはOracle RACホームです。

Oracle Automatic Storage Management クラスタ・ファイル・システム(Oracle ACFS)を使用して共有されている共有Oracleホームを持つ場合は、Oracle RACをインストールしたユーザーとして次を実行し、Oracle Databaseホームをnode3に拡張します。

1. rootとして、node3に対しGrid_home/root.shスクリプトを実行します。Grid_homeはOracle Grid Infrastructureホームです。

2. rootとしてGrid_home/binディレクトリから次のコマンドを実行して、新しいノードでOracle ACFSリソースを起動します。

# srvctl start filesystem -d volume_device_name [-n node_name]

注意:
ORACLE_HOMEが格納されているOracle ACFSレジストリ・リソースおよびOracle ACFSファイル・システム・リソースを含むOracle ACFSリソースが、新しく追加されたノードでオンラインであることを確認します。

3. node1のOracle_home/oui/binディレクトリに移動し、次の構文を使用してOracle RACをインストールしたユーザーとしてaddNode.shスクリプトを実行します。

$ ./addNode.sh -noCopy "CLUSTER_NEW_NODES={node3}"

注意:
宛先ノードのOracleホームはすでにソフトウェアに完全に移入されているため、-noCopyオプションを使用します。

Oracle ACFS以外の共有ファイル・システムで共有Oracleホームを持つ場合は、まずターゲット・ノードでOracle RACデータベース・ホームのマウント・ポイントを作成し、Oracle RACデータベース・ホームをマウントおよびアタッチし、次のようにOracle Inventoryを更新します。

1. クラスタの既存のノードでsrvctl config db -d db_nameコマンドを実行し、マウント・ポイント情報を取得します。

2. rootとして、node3で次のコマンドを実行し、マウント・ポイントを作成します。

# mkdir -p mount_point_path

3. Oracle RACデータベース・ホームをホストするファイル・システムをマウントします。

4. Oracle RACをインストールしたユーザーとして、追加したノードのOracle_home/oui/binディレクトリから次のコマンドを実行し、Oracle RACデータベース・ホームを追加します。

$ ./runInstaller -attachHome ORACLE_HOME="ORACLE_HOME" "CLUSTER
_NODES={node_list}" LOCAL_NODE="node_name"

5. Oracle RACをインストールしたユーザーとして、次のようにOracle Inventoryを更新します。

$ ./runInstaller -updateNodeList ORACLE_HOME=mount_point_path "CLUSTER
_NODES={node_list}"

前述のコマンドで、node_listはOracle RACデータベース・ホームがインストールされたすべてのノード(追加したものも含む)のリストです。

5. rootとして、node3でGrid_home/root.shスクリプトを実行し、指示に従って後続のスクリプトを実行します。

6. Oracle Clusterwareをインストールしたユーザーとして次のCVUコマンドを実行して、クラスタの整合性をチェックします。このコマンドで、指定した任意の数のノードがネットワーク、共有記憶域およびクラスタウェアの各レベルでクラスタに正常に追加されていることを確認します。

$ cluvfy stage -post nodeadd -n node3 [-verbose]

関連項目:
このCVUコマンドの詳細は、「cluvfy stage [-pre | -post] nodeadd」を参照してください。

ポリシー管理Oracle RACデータベースまたは管理者管理Oracle RACデータベースのいずれかがnode3(新しく追加されたノード)で実行されるように構成されているかどうかを確認します。管理者管理Oracle RACデータベースを構成した場合、DBCAを使用してデータベースにインスタンスを追加し、この新しく追加されたノードで実行します。

関連項目:

- DBCAを使用した管理者管理Oracle RACデータベース・インスタンスの追加の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- ポリシー管理Oracle RACデータベースを構成した場合のターゲット・ノードへのOracle RACデータベース・インスタンスの追加の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

LinuxおよびUNIXシステムでのクラスタ・ノードの削除

この項では、クラスタからノードを削除する手順について説明します。

注意:

- クラスタからノードを削除する前にノードからOracle RACデータベース・インスタンスを削除することができますが、この手順は必須ではありません。インスタンスを削除しない場合、インスタンスは構成されたままですが、実行されることはありません。クラスタからノードを削除しても、クラスタからノードの構成情報が削除されることはありません。残った構成情報がクラスタの操作を妨害することはありません。
関連項目: Oracle RACデータベース・インスタンスの削除の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- DHCPおよびGNSを使用して動的なグリッド・プラグ・アンド・プレイ・クラスタを実行する場合は、手順3(VIPリソースの削除)、手順4(ノードの削除)および手順7(残りのノードでのインベントリの更新)のみを実行する必要があります。
また、グリッド・プラグ・アンド・プレイ・クラスタの場合、固定解除されているノードは、しばらくするとOracle Clusterwareから認識されなくなるため、ユーザーが削除する必要はありません。

- (特定のノードでサービスを無効にしたり、サーバー・プールの候補リストにノードを追加するなどして)あるノードにノード固有の構成を作成すると、ノードがクラスタから削除されても、ノード固有の構成は削除されません。このようなノード固有の構成は、手動で削除する必要があります。

- クラスタに変更を行うと、投票ディスクは自動的にOCRにバックアップされます。

クラスタからノードを削除するには、次の手順を実行します。

1. Grid_homeが各ノード上のOracle Clusterwareホームへの完全なディレクトリ・パスを正しく指定していることを確認します。Grid_homeは、Oracle Clusterwareソフトウェアをインストールした場所です。

2. rootとしてまたはOracle Clusterwareをインストールしたユーザーとして次のコマンドを実行し、削除対象のノードがアクティブであることおよび固定されているかどうかを確認します。

$ olsnodes -s -t

ノードが固定されている場合は、crsctl unpin cssコマンドを実行します。使用していない場合は次の手順に進みます。

3. ノード上で実行されているOracle Clusterwareアプリケーションおよびデーモンを無効にします。削除対象のノードで、rootとしてGrid_home/crs/installディレクトリからrootcrs.plスクリプトを次のように実行します。

注意:
このコマンドを実行する前に、次のようにEMAGENTを停止する必要があります。

$ emctl stop dbconsole

# ./rootcrs.pl -deconfig -force

複数のノードを削除する場合、削除対象の各ノードでrootcrs.plスクリプトを実行します。

クラスタからすべてのノードを削除するには、前述のコマンドに-lastnodeオプションを追加し、次のようにOCRおよび投票ディスクをクリアします。

# ./rootcrs.pl -deconfig -force -lastnode

注意:
すべてのクラスタ・ノードを削除する場合のみ、-lastnodeオプションを使用してください(このオプションによりrootcrs.plスクリプトはOCRおよび投票ディスクのデータをクリアするためです)。

注意:
前述のコマンドで-forceオプションを使用しない場合、または前述のコマンドを実行する目的で削除対象のノードにアクセスできない場合、VIPリソースはそのノードで実行され続けます。削除対象ではないノードからrootとして次のコマンドを使用して、VIPリソースを手動で停止および削除する必要があります。

# srvctl stop vip -i vip_name -f
# srvctl remove vip -i vip_name -f

vip_nameは、削除対象のノードのVIPです。複数のVIP名を指定する場合、名前をカンマで区切り、リストを二重引用符("")で囲む必要があります。

4. 削除対象ではない任意のノードから、rootとしてGrid_home/binディレクトリで次のコマンドを実行して、クラスタからノードを削除します。

# crsctl delete node -n node_to_be_deleted

5. 削除対象のノードで、Oracle ClusterwareをインストールしたユーザーとしてGrid_home/oui/binディレクトリから次のコマンドを実行します。node_to_be_deletedは、削除対象のノードの名前です。

$ ./runInstaller -updateNodeList ORACLE_HOME=Grid_home "CLUSTER_NODES=
{node_to_be_deleted}" CRS=TRUE -silent -local

注意:
次の手順に進む前に、inventory.xmlをチェックして、更新されていないことを確認します。この手順を実行し、誤ってinventory.xmlファイルを更新した場合、またはこの手順を完了せずに次の手順に進んだ場合、次の手順でクラスタ全体が削除されます。

6. 共有Oracleホームを持つかローカルOracleホームを持つかによって、Oracle Clusterwareをインストールしたユーザーとして、次のいずれかの手順を実行します。

- 共有ホームがある場合は、削除するノードで次のコマンドを次の順序で実行します。
Oracle Clusterwareを構成解除するには、次のコマンドを実行します。

$ Grid_home/perl/bin/perl Grid_home/crs/install/rootcrs.pl -deconfig

Gridホームをデタッチするには、次のコマンドをGrid_home/oui/binディレクトリから実行します。

$ ./runInstaller -detachHome ORACLE_HOME=Grid_home -silent -local

手動で次のファイルを削除します。

/etc/oraInst.loc
/etc/oratab
/etc/oracle/
/opt/ORCLfmap/
$OraInventory/

- ローカル・ホームの場合は、次のコマンドを実行し、削除対象のノードからOracle Clusterwareホームを削除します。Grid_homeは、Oracle Clusterwareホームに定義されているパスです。

$ Grid_home/deinstall/deinstall –local

注意:
-localフラグを指定しない場合は、コマンドによって、クラスタ内のすべてのノードからグリッド・インフラストラクチャ・ホームが削除されます。

7. 削除対象でない任意のノードで、Grid_home/oui/binディレクトリから次のコマンドを実行します。remaining_nodes_listは、クラスタの一部として残すノードのカンマ区切りのリストです。

$ ./runInstaller -updateNodeList ORACLE_HOME=Grid_home "CLUSTER_NODES=
{remaining_nodes_list}" CRS=TRUE -silent

注意:

- 次のように、このコマンドをもう1回(ORACLE_HOME=ORACLE_HOMEで、CRS=TRUE -silentが構文から省略されている)実行する必要があります。

$ ./runInstaller -updateNodeList ORACLE_HOME=ORACLE_HOME
"CLUSTER_NODES={remaining_nodes_list}"

- Oracle Grid Infrastructureホームが共有ホームの場合は、この手順のコマンド例に-cfsオプションを追加し、クラスタ・ファイル・システムの完全なパス位置を指定します。

8. 指定したノードがクラスタから正常に削除されたことを確認するには、次のCVUコマンドを実行します。

$ cluvfy stage -post nodedel -n node_list [-verbose]

関連項目:
このCVUコマンドの詳細は、「cluvfy stage -post nodedel」を参照してください。

Windowsシステムでのクラスタ・ノードの追加および削除

この項では、Windowsシステムでのクラスタ・ノードの追加および削除について説明します。この項には次のトピックが含まれます:

- Windowsシステムでのクラスタへのノードの追加

- Windowsシステムでのクラスタ・ノードの削除

関連項目:
クラスタ全体の削除の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

Windowsシステムでのクラスタへのノードの追加

ノードを追加する前に、「クラスタ・ノードを追加するための必須手順」にリストされている前提条件を満たしておく必要があります。

この手順では、クラスタにノードを追加する方法について説明します。この手順では、次の項目を前提としています。

- node1およびnode2という2つのノードを持つクラスタが存在する

- node3という名前のノードを追加する

- Oracle Clusterwareがnode1およびnode2のローカル・ホームにインストールされており、Grid_homeは正常にインストールされたホームを表す

注意:
WindowsシステムでOracle DatabaseがOracle Database 10gリリース1(10.1)からアップグレードされている構成の場合は、クラスタ・ノードの追加に、この項で説明する手順を使用しないでください。

ノードを追加するには、次の手順を実行します。

1. クラスタおよびnode3の整合性を検証します。

C:\>cluvfy stage -pre nodeadd -n node3 [-fixup [-fixupdir fixup_dir]] [-verbose]

-fixupオプションと、検証が失敗した場合にクラスタまたはノードを修正するための指示がCVUによって出力されるディレクトリを指定できます。

2. node1でGrid_home\oui\binディレクトリに移動し、次のように、addNode.batスクリプトを実行します。

C:\>addNode.bat "CLUSTER_NEW_NODES={node3}"
"CLUSTER_NEW_VIRTUAL_HOSTNAMES={node3-vip}"

また、レスポンス・ファイルに例4-2に示すエントリを指し、次のように、addNode.batを実行することもできます。

C:\>addNode.bat -responseFile filename

例4-2 ノードを追加するためのレスポンス・ファイルのエントリ

CLUSTER_NEW_NODES={"node3"}
CLUSTER_NEW_VIRTUAL_HOSTNAMES={"node3-vip"}

コマンドラインの値は、常にレスポンス・ファイルの値に優先します。

関連項目:
コマンドライン・レスポンス・ファイルの構成方法の詳細は、『Oracle Universal InstallerおよびOpatchユーザーズ・ガイド』を参照してください。

3. 新規ノードで次のコマンドを実行します。

C:\>Grid_home\crs\config\gridconfig.bat

4. 次のコマンドを実行し、構成済のすべてのノード(既存のノードと追加したノードの両方)でOracle Clusterwareコンポーネントの整合性を検証します。

C:\>cluvfy stage -post crsinst -n all [-verbose]

この項のノードの追加手順を完了してから、必要に応じてOracle Real Application Clusters(Oracle RAC)コンポーネントを含むOracle Databaseを新規ノードに拡張し、新規ノードを既存のOracle RACデータベースのメンバーにすることも可能です。

関連項目:
Oracle RACを含むOracle Databaseの新規ノードへの拡張の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

Windowsシステムでのクラスタ・ノードの削除

この項では、Windowsシステムでクラスタ・ノードを削除する方法について説明します。この手順は、Oracle Clusterwareがnode1、node2およびnode3にインストールされており、クラスタからnode3を削除すると想定しています。

注意:

- Oracleでは、WindowsシステムでOracle Enterprise Managerを使用してノードを削除することはサポートしていません。

- ノードの追加手順または削除手順を完成したら、投票ディスクおよびOCRをバックアップすることをお薦めします。

- クラスタからノードを削除する前にノードからOracle RACデータベース・インスタンスを削除することができますが、この手順は必須ではありません。インスタンスを削除しない場合、インスタンスは構成されたままですが、実行されることはありません。クラスタからノードを削除しても、クラスタからノードの構成情報が削除されることはありません。残った構成情報がクラスタの操作を妨害することはありません。
関連項目: Oracle RACデータベース・インスタンスの削除の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

Windowsシステムでクラスタ・ノードを削除するには、次の手順を実行します。

1. ノードを削除する前に、ノードで実行中のOracle Clusterwareアプリケーションとサービスを無効にする必要があります。
削除するノードで、管理者グループのメンバーとして、次のようにrootcrs.pl -deconfigスクリプトを実行します。

C:\>Grid_home\perl\bin\perl -I$Grid_home\perl\lib -I$Grid_home\crs\install
Grid_home\crs\install\rootcrs.pl -deconfig -force

複数のノードを削除する場合、削除対象の各ノードでこのスクリプトを実行します。

2. 削除対象のノードで、次のコマンドを実行します。

C:\>Grid_home\bin\crsctl delete node -n node_to_be_deleted

3. ローカル・ホームを持つ場合のみ、削除対象のノードで次のコマンドを-localオプションで実行し、ノード・リストを更新します。

C:\>Grid_home\oui\bin\setup.exe -updateNodeList ORACLE_HOME=Grid_home "CLUSTER_NODES=
{node_to_be_deleted}" CRS=TRUE -local

4. 次のようにGrid_home\deinstallディレクトリにある削除ツールを実行し、Oracle Clusterwareホームを削除して、構成を解除します。

C:\>deinstall.bat

5. 削除対象でない任意のノードで、Grid_home\oui\binディレクトリから次のコマンドを実行します(remaining_nodes_listは、クラスタの一部として残すノードのカンマ区切りのリストです)。

C:\>setup.exe –updateNodeList ORACLE_HOME=Grid_home
"CLUSTER_NODES={remaining_nodes_list}" CRS=TRUE -silent

注意:

- 次のように、このコマンドをもう1回(ORACLE_HOME=ORACLE_HOMEで、CRS=TRUE -silentが構文から省略されている)実行する必要があります。

C:\>setup.exe -updateNodeList ORACLE_HOME=ORACLE_HOME
"CLUSTER_NODES={remaining_nodes_list}"

- Oracle Grid Infrastructureホームが共有ホームの場合は、この手順のコマンド例に-cfsオプションを追加し、クラスタ・ファイル・システムの完全なパス位置を指定します。

6. 指定したノードがクラスタから正常に削除されたことを確認するには、次のCVUコマンドを実行します。

C:\>cluvfy stage -post nodedel -n node_list [-verbose]

関連項目:
「cluvfy stage -post nodedel」

5 Oracle Clusterwareのクローニング

この章では、Oracle Grid Infrastructureホームをクローニングする方法およびクローニングされたホームを使用してクラスタを作成する方法について説明します。この章のクローニング手順を実行するには、サイレント・モードでスクリプトを使用します。クローニング手順は、LinuxおよびUNIXシステムに適用できます。この章の例ではLinuxおよびUNIXのコマンドを使用しますが、通常、クローニングの概念および手順はすべてのプラットフォームに適用されます。

注意:
この章は、次のように構成されたOracle Clusterware 11gリリース2(11.2)インストールをクローニングすることを前提としています。

- グリッド・ネーミング・サービス(GNS)なし

- Intelligent Platform Management Interface仕様(IPMI)なし

- 投票ディスクおよびOracle Cluster Registry(OCR)がOracle Automatic Storage Management(Oracle ASM)に格納されている

- 単一クライアント・アクセス名(SCAN)はDNSで解決される

内容は次のとおりです。

- Oracle Clusterwareのクローニングの概要

- Oracle Grid Infrastructureホームをクローニングするための準備

- Oracle Clusterwareのクローニングによるクラスタの作成

- クローニングを使用したクラスタへのノードの追加

- クローニング時に生成されたログ・ファイルの配置と表示

Oracle Clusterwareのクローニングの概要

クローニングとは、既存のOracle Clusterwareインストールを別の場所にコピーし、その後、コピーしたインストールを新しい環境で動作するよう更新するプロセスです。クローニング元のOracle Grid Infrastructureホームに適用済の個別パッチによる変更は、クローニング後も継承されます。クローニング中には、Oracle Grid Infrastructureホームのインストールで実行された操作を再実行するスクリプトを実行します。

クローニングには、正常にインストールされたOracle Grid Infrastructureホームを使用することが必要です。このホームを、Oracle Grid Infrastructureホームを拡張するスクリプト実装のベースにして、元のGridホームに基づくクラスタを作成します。

手動でのクローニング・スクリプトの作成では、入力を検証する対話形式のチェックを使用せずにスクリプトを準備するため、エラーが発生しやすくなる場合があります。ただし、数十または数百のクラスタに対して単一スクリプトを実行するような場合には、この最初の作業は意味があります。インストールするクラスタが1つのみの場合は、Oracle Universal Installer(OUI)またはOracle Enterprise ManagerのProvisioning Pack機能など、従来の自動化された対話形式のインストール方法を使用してください。

注意:
クローニングは、Provisioning Packの一部であるOracle Enterprise Managerクローニングの代替機能ではありません。Oracle Enterprise Managerによるクローニングでは、プロビジョニング・プロセスによってOracleホームの詳細が対話形式で確認されることで、クローニングが単純化されています。対話時の質問では、クローニングされた環境のデプロイ先、Oracle Databaseホームの名前、クラスタ内のノードのリストなどが確認されます。

Oracle Enterprise Manager Grid ControlのProvisioning Pack機能では、ノードおよびクラスタのプロビジョニングを自動化するフレームワークが提供されています。多数のクラスタを持つデータ・センターの場合、既存のクラスタに新規クラスタおよび新規ノードをプロビジョニングするためのクローニング手順を作成する作業は、その労力に見合った価値があります。

次のリストに、クローニングが有効ないくつかの状況を示します。

- クローニングにより、Oracle Grid Infrastructureホームを1回準備するだけで、多数のホストに同時にデプロイされます。非対話形式のプロセスとして、サイレント・モードでインストールを完了できます。グラフィカル・ユーザー・インタフェース(GUI)のコンソールを使用する必要がなく、必要に応じて、セキュア・シェル(SSH)・ターミナル・セッションからクローニングを実行できます。

- クローニングにより、すべてのパッチが適用されたインストール(本番、テスト、または開発用インストールのコピー)を1回の手順で作成できます。ベース・インストールを実行してソース・システムにすべてのパッチ・セットとパッチを適用した後は、クローニングにより、それらの個別の手順はすべて単一の手順で実行されます。これにより、クラスタの各ノードですべてのインストール・プロセスを通して行い、インストール、構成およびパッチ適用を個別の手順で実行するのとは、対照的な効果が得られます。

- クローニングによるOracle Clusterwareのインストールでは、非常に短時間で処理を完了できます。たとえば、3つ以上のノードを持つクラスタにOracle Grid Infrastructureホームをクローニングする場合、必要な時間は、Oracleソフトウェアのインストールにかかる数分間と各ノードにかかる数分間を合わせた時間(合計時間はroot.shスクリプトの実行にかかる時間とほぼ等しい)となります。

- クローニングでは、複数のクラスタで同一のOracle Clusterwareインストールを正確に繰り返すための確実な方法が提供されます。

クローニングされたインストールは、クローニング元のインストールと同じ動作をします。たとえば、クローニングされたOracle Grid Infrastructureホームは、OUIを使用して削除したり、OPatchを使用してパッチを適用することができます。また、クローニングされたOracle Grid Infrastructureホームを、別のクローニング操作のソースとして使用できます。コマンドラインのクローニング・スクリプトを使用して、テスト用、開発用または本番用のインストールをクローニングしたコピーを作成できます。

多くの場合、デフォルトのクローニング手順で十分です。さらに、カスタム・ポート割当ての指定や、カスタム設定の保存など、クローニングの様々な側面をカスタマイズすることもできます。

クローニング・プロセスでは、クローニング元のOracle Grid Infrastructureホームからクローニング先のOracle Grid Infrastructureホームにすべてのファイルをコピーします。Oracle Grid Infrastructureホームは、ローカル(非共有)ホームまたは共有ホームのどちらの場合でもクローニングできます。したがって、ソース・インスタンスで使用されているファイルの中で、クローニング元のOracle Grid Infrastructureホームのディレクトリ構造の外部に置かれているものがある場合、それはクローニング先にコピーされません。

ソースおよび宛先のバイナリ・ファイルのサイズは異なる場合がありますが、これはクローニング操作の一部としてこれらのファイルが再リンクされており、これら2つの位置のオペレーティング・システムのパッチ・レベルが異なっていることがあるためです。また、ソースからコピーされるいくつかのファイル、特にインスタンス化されているファイルは、クローニング操作の一部としてバックアップされるため、クローン・ホームのファイルの数は増加します。

Oracle Grid Infrastructureホームをクローニングするための準備

クローニング元のOracle Grid Infrastructureホームでクローニングを準備するには、インストール済のOracle Grid Infrastructureホームのコピーを作成し、別のノードでクローニング手順を実行する際に使用します。次の段階ごとの手順に従って、Oracle Grid Infrastructureホームのコピーを準備します。

- 手順1: Oracle Clusterwareのインストール

- 手順2: 実行中のソフトウェアの停止

- 手順3: Oracle Grid Infrastructureホームのコピーの作成

手順1: Oracle Clusterwareのインストール

『Oracle Grid Infrastructureインストレーション・ガイド』の詳細指示に従って、ソース・ノードで、次の手順を実行します。

1. Oracle Clusterware 11gリリース2(11.2)をインストールします。このインストールによって、Oracle Cluster Registry(OCR)および投票ディスクがOracle Automatic Storage Management (Oracle ASM)に配置されます。

注意:
クラスタ用のグリッド・インフラストラクチャをインストールして構成するか、Oracle Clusterwareソフトウェアのみをインストールしてください(ご使用のプラットフォーム固有の『Oracle Grid Infrastructureインストレーション・ガイド』を参照)。

クラスタ用のグリッド・インフラストラクチャをインストールして構成した場合は、クローニング手順を実行する前にOracle Clusterwareを停止する必要があります。ソフトウェアのみのインストールを実行する場合は、Oracle Clusterwareを停止する必要はありません。

2. 必要に応じて、適切なパッチ(グリッド・インフラストラクチャ・バンドル・パッチなど)をインストールします。

3. 必要に応じて、個別パッチを適用します。

関連項目:
Oracle Clusterwareのインストール手順については、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

手順2: 実行中のソフトウェアの停止

クローニング元のOracle Grid Infrastructureホームをコピーする前に、ノードで実行されているサービス、データベース、リスナー、アプリケーション、Oracle ClusterwareおよびOracle ASMインスタンスをすべて停止します。サーバー制御(SRVCTL)ユーティリティを使用してデータベースを停止してから、Oracle Clusterware制御(CRSCTL)ユーティリティを使用して残りのコンポーネントを停止することをお薦めします。

関連項目:

- CRSCTLの詳細は、付録E「CRSCTLユーティリティのリファレンス」を参照してください。

- SRVCTLの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

手順3: Oracle Grid Infrastructureホームのコピーの作成

インストールしたOracle Grid Infrastructureホームを作業ホームとして保持するために、クローニング元のOracle Grid Infrastructureホームの全体コピーを作成します。

ヒント:
コピーの作成時には、ファイル名にリリース番号を含めることをお薦めします。

次のいずれかの方法を使用して、Oracle Grid Infrastructureホームの圧縮コピーを作成します。

方法1: Oracle Grid Infrastructureホームのコピーを作成し、そのコピーから不要なファイルを削除する

1. ソース・ノードで、Oracle Grid Infrastructureホームのコピーを作成します。インストールしたOracle Grid Infrastructureホームを作業ホームとして保持するために、クローニング元のOracle Grid Infrastructureホームの全体コピーを作成し、そのコピーから不要なファイルを削除します。たとえば、Linuxシステムでは、rootユーザーとしてcpコマンドを実行します。

# cp -prf Grid_home copy_path

前述のコマンドは、Grid_homeのすべての内容(たとえば、/u01/app/grid/11.2.0)を新しい場所(たとえば、/home/grid/gridcopy)にコピーします。

2. コピーから不要なファイルを削除します。

Oracle Grid Infrastructureホームには、ソース・ノードにのみ関連するファイルが含まれているため、log、crs/init、crfおよびcdataディレクトリのグリッド・インフラストラクチャ・ホームのコピーから不要なファイルを削除できます。次に、LinuxおよびUNIXシステムでOracle Grid Infrastructureホームのコピーから不要なファイルを削除する場合に実行するコマンドの例を示します。

[root@node1 root]# cd copy_path
[root@node1 grid]# rm -rf crs/install/crsconfig_addparams
[root@node1 grid]# rm -rf host_name
[root@node1 grid]# rm -rf log/host_name
[root@node1 grid]# rm -rf gpnp/host_name
[root@node1 grid]# find gpnp -type f -exec rm -f {} \;
[root@node1 grid]# find cfgtoollogs -type f -exec rm -f {} \;
[root@node1 grid]# rm -rf crs/init/*
[root@node1 grid]# rm -rf cdata/*
[root@node1 grid]# rm -rf crf/*
[root@node1 grid]# rm -rf network/admin/*.ora
[root@node1 grid]# find . -name '*.ouibak' -exec rm {} \;
[root@node1 grid]# find . -name '*.ouibak.1' -exec rm {} \;
[root@node1 grid]# rm -rf root.sh*

3. LinuxおよびUNIXシステムではtarまたはgzipを使用して、前述のコピー済Oracle Grid Infrastructureホームの圧縮コピーを作成します。使用するツールによって、権限およびファイル・タイムスタンプが保持されることを確認してください。次に例を示します。
LinuxおよびUNIXシステムの場合:

[root@node1 root]# cd copy_path
[root@node1 grid]# tar -zcvpf /copy_path/gridHome.tgz .

前述の例で、cdコマンドは、この手順の最初の2つの手順で作成したOracle Grid Infrastructureのホームのコピー(不要なファイルは削除済み)に場所を変更し、tarコマンドはgridHome.tgzという名前のファイルを作成します。tarコマンドで、copy_pathは、Oracle Grid Infrastructureホームのコピーの場所を表します。

AIXまたはHPUXシステムの場合は、次のコマンドを発行します。

tar cpf - . | compress -fv > temp_dir/gridHome.tar.Z

Windowsシステムで、WinZipを使用してzipファイルを作成します。

方法2: -Xオプションを使用してOracle Grid Infrastructureホームの圧縮コピーを作成する

1. Oracle Grid Infrastructureホーム内の不要なファイルを示すファイルを作成します。たとえば、excludeFileListというファイルに、アスタリスク(*)のワイルドカードを使用して次のファイル名を示します。

Grid_home/host_name
Grid_home/log/host_name
Grid_home/gpnp/host_name
Grid_home/crs/init/*
Grid_home/cdata/*
Grid_home/crf/*
Grid_home/network/admin/*.ora
Grid_home/root.sh*
*.ouibak
*.ouibak1

2. tarコマンドまたはWinzipを使用して、Oracle Grid Infrastructureホームの圧縮コピーを作成します。たとえば、LinuxおよびUNIXシステムでは、次のコマンドを実行して、クローニング元のOracle Grid Infrastructureホームをアーカイブおよび圧縮します。

tar cpfX - excludeFileList Grid_home | compress -fv > temp_dir/gridHome.tar.Z

注意:
Oracle Grid Infrastructureホームをコピーおよび圧縮するために、jarユーティリティは使用しないでください。

Oracle Clusterwareのクローニングによるクラスタの作成

この項では、正常にインストールされたOracle Clusterware環境をクローニングし、それをクローニング先のクラスタ上のノードにコピーすることにより、クラスタを作成する方法を説明します。この項の手順では、Linux、UNIXおよびWindowsシステムでクローニングを使用する方法について説明します。クローニングでクラスタを正常に作成した後、OCRおよび投票ディスクは2つのクラスタ間で共有されません。

たとえば、クローニングを使用して、正常にインストールされたOracle Clusterware環境を複製し、クラスタを作成することができます。図5-1では、クローニング手順の最終結果を示しており、ここでは、ノード1上のOracle Grid Infrastructureホームがクラスタ2上のノード2およびノード3にクローニングされ、クラスタ2が新規の2ノード・クラスタとして作成されています。

図5-1 クローニングによるOracle Clusterware環境の作成

クローニングでクラスタを作成する手順は次のとおりです。

- 手順1: 新規クラスタ・ノードの準備

- 手順2: 宛先ノードでのOracle Grid Infrastructureホームのデプロイ

- 手順3: 各宛先ノードでのclone.plスクリプトの実行

- 手順4: 構成ウィザードの起動

手順1: 新規クラスタ・ノードの準備

各宛先ノードで、次のインストール前の手順を実行します。

- カーネル・パラメータの指定

- Oracle Clusterwareデバイス用のブロック・デバイスの構成

- ブロック・デバイスの権限が正しく設定されていることの確認

- /etc/hostsファイル内のすべての名前に対する短い非ドメイン修飾の名前の使用

- pingコマンドによる、インターコネクト・インタフェースが到達可能かどうかのテスト

- pingコマンドによる、クローニング・プロセスの開始時にVIPアドレスがアクティブでないことの検証(VIPアドレスのpingコマンドは失敗する必要があります)

- 次のOracle Automatic Storage Management Cluster File Systemチューニング可能ファイルをソース・ノードから各宛先ノードにコピーします。
LinuxおよびUNIXの場合: /etc/sysconfig/advmtunablesおよび/etc/sysconfig/acfstunables

AIXの場合: /etc/advmtunablesおよび/etc/acfstunables

Solarisの場合: /etc/advmtunablesおよび/etc/acfstunables

Windowsの場合: C:\windows\system32\drivers\advm\tunablesおよびC:\windows\system32\drivers\acfs\tunables

- ベンダーのクラスタウェアを実行しているAIXシステムおよびSolaris x86-64-bitシステムでクラスタにノードを追加する場合は、クラスタにノードを追加する前に、ノードでrootpre.shスクリプト(DVDからOracle Clusterwareをインストールした場合はマウント・ポイント、ソフトウェアをダウンロードした場合はtarファイルを解凍したディレクトリにあります)を実行する必要があります。

- CVUの実行によるハードウェアおよびオペレーティング・システム環境の検証

インストール前の全チェックリストは、ご使用のプラットフォーム固有のOracle Clusterwareインストレーション・ガイドを参照してください。

注意:
従来のインストール方法とは異なり、クローニング・プロセスでは、準備フェーズ中に入力が検証されません。(これと比較して、OUIを使用した従来のインストール方法では、インタビュー・フェーズ中に様々なチェックが実行されます。)したがって、ハードウェア設定または準備フェーズ中にミスをすると、クローニング・インストールは失敗します。

手順2: 宛先ノードでのOracle Grid Infrastructureホームのデプロイ

この項で説明しているクローニング手順を開始する前に、Oracle Grid Infrastructureホームのコピーを作成するための必須タスクを完了していることを確認してください(「Oracle Grid Infrastructureホームをクローニングするための準備」を参照)。

1. 各宛先ノードに、「手順3: Oracle Grid Infrastructureホームのコピーの作成」で作成したOracle Grid Infrastructureホームのコピーを次のようにデプロイします。
Oracle Grid Infrastructureホームが共有ホームでない場合は、Oracle Grid Infrastructureホームのコピーを宛先クラスタの各ノードにリストアします。ソース・ノードのOracle Grid Infrastructureホームで使用されているディレクトリ構造と同じディレクトリ構造を使用します。Oracle Grid Infrastructureホームが共有ホームの場合、この手順はスキップします。

たとえば、LinuxまたはUNIXシステムで、次のようなコマンドを実行します。

[root@node1 root]# mkdir -p location_of_the_copy_of_the_Grid_home
[root@node1 root]# cd location_of_the_copy_of_the_Grid_home
[root@node1 crs]# tar -zxvf /path_name/gridHome.tgz

この例で、path_nameはOracle Grid Infrastructureホームのインストール先のディレクトリ構造を表します。クローニング・プロセスでは、Gridホームの場所を変更できます。

Windowsシステムの宛先ノードで、Oracle Grid Infrastructureホームを解凍します。ディレクトリ構造は、Oracle Grid Infrastructureホームが存在するソース・ノードのディレクトリ構造と同じにします。

2. Oracle Grid Infrastructureホームから不要なファイルを削除していない場合は、「方法1: Oracle Grid Infrastructureホームのコピーを作成し、そのコピーから不要なファイルを削除する」の手順2を繰り返します。

3. 宛先ノードでOracle Inventory用のディレクトリを作成し、必要に応じてOracle Grid Infrastructureホームのすべてのファイルの所有権をOracle Grid Infrastructureインストール所有者およびOracle Inventory(oinstall権限)グループによって所有されるように変更します。次の例では、Oracle Grid Infrastructureインストール所有者がoracleで、Oracle Inventoryグループがoinstallの場合にLinuxシステムでこれを行うコマンドを示します。

[root@node1 crs]# mkdir /u01
[root@node1 crs]# chown oracle:oinstall /u01
[root@node1 crs]# mkdir -p /u01/app/oraInventory
[root@node1 crs]# mkdir -p /u01/app/11.2.0/grid

Gridホームで前述の最後のコマンドを実行すると、Oracleバイナリからsetuidおよびsetgidの情報が消去されます。また、次のバイナリからsetuidも消去されます。

Grid_home/bin/extjob
Grid_home/bin/jssu
Grid_home/bin/oradism

消去された情報をリストアするには、次のコマンドを実行します。

chmod u+s Grid_home/bin/oracle
chmod g+s Grid_home/bin/oracle
chmod u+s Grid_home/bin/extjob
chmod u+s Grid_home/bin/jssu
chmod u+s Grid_home/bin/oradism

4. 処理を続行する前に、ソースおよび宛先の両方のノードのGrid_homeディレクトリからすべてのOracleネットワーク・ファイルを削除することも重要です。たとえば、tnsnames.ora、listener.oraまたはsqlnet.oraファイルをすべて削除します。

関連項目:
「クローニング時に生成されたログ・ファイルの配置と表示」

手順3: 各宛先ノードでのclone.plスクリプトの実行

新しいOracle Clusterware環境を設定する場合、clone.plスクリプトではいくつかの設定値の指定が必要となります。変数の値を指定するには、clone.plスクリプトの実行時にコマンドライン上で入力値を指定するか、またはファイルを作成してそこでクローン変数に値を割り当てるかのいずれかの方法があります。次の説明では、これらの方法を示します。

注意:
clone.plを実行した後、スクリプトによりorainstRoot.shおよびroot.shを実行するプロンプトが表示されます。orainstRoot.shのみを実行し、「手順4: 構成ウィザードの起動」に進んでください。この構成ウィザードにより、root.shを実行するプロンプトが表示されます。

コマンドライン上でのclone.plスクリプトの入力値の指定

Oracle Grid Infrastructureホームが共有ホームでない場合は、各宛先ノードのGrid_home/clone/binディレクトリに移動して、clone.plスクリプトを実行します(これによって、Oracle Clusterwareの主要なクローニング・タスクが実行されます)。スクリプトを実行するには、複数のパラメータへの入力が必要です。表5-1で、clone.plスクリプトのパラメータについて説明します。

表5-1 clone.plスクリプトのパラメータ

パラメータ

説明

ORACLE_BASE=ORACLE_BASE

クローニング元のOracleベースの完全パス。無効なパスを指定すると、スクリプトは終了します。このパラメータは必須です。

ORACLE_HOME=GRID_HOME

クローニング元のグリッド・インフラストラクチャ・ホームの完全パス。無効なパスを指定すると、スクリプトは終了します。このパラメータは必須です。

ORACLE_HOME_NAME=Oracle_home_name(または)-defaultHomeName

クローニング元のホームのOracleホーム名。必要に応じて、-defaultHomeNameフラグを指定できます。このパラメータは必須ではありません。

INVENTORY_LOCATION=location_of_inventory

Oracleインベントリの場所。

-O'"CLUSTER_
NODES={node_
name,node_
name,...}"'

この新しいクラスタに含まれるノードの短縮名のカンマ区切りリスト。

-O'"LOCAL_NODE=node_name"'

clone.plを実行するノードの短縮名。

CRS=TRUE

このパラメータは、Oracle Universal Installerインベントリでこのプロパティを設定するために必要です。

OSDBA_GROUP=OSDBA_privileged_group

OSDBA権限グループとして使用するオペレーティング・システム・グループを指定します。デフォルト値を必要としない場合、このパラメータはオプションです。

OSASM_GROUP=OSASM_privileged_group

OSASM権限グループとして使用するオペレーティング・システム・グループを指定します。デフォルト値を必要としない場合、このパラメータはオプションです。

OSOPER_GROUP=OSOPER_privileged_group

OSOPER権限グループとして使用するオペレーティング・システム・グループを指定します。デフォルト値を必要としない場合、このパラメータはオプションです。

-debug

デバッグ・モードでclone.plスクリプトを実行するにはこのオプションを指定します。

-help

clone.plスクリプトのヘルプを表示するにはこのオプションを指定します。

たとえば、LinuxおよびUNIXシステムで次のように指定します。

$ perl clone.pl -silent ORACLE_BASE=/u01/app/oracle ORACLE_HOME=
/u01/app/11.2.0/grid ORACLE_HOME_NAME=OraHome1Grid
INVENTORY_LOCATION=/u01/app/oraInventory -O'"CLUSTER_NODES={node1, node2}"'
-O'"LOCAL_NODE=node1"' CRS=TRUE

Windowsシステムの場合:

注意:
Windowsでこのコマンドを実行する場合は、-Oオプションを使用しないでください。

C:\>perl clone.pl ORACLE_BASE=D:\u01\app\grid ORACLE_HOME=D:\u01\app\grid\11.2.0
ORACLE_HOME_NAME=OraHome1Grid "CLUSTER_NODES={node1, node2}"
"LOCAL_NODE=node1" CRS=TRUE

前述の例に示す様々なパラメータの詳細は、表5-1を参照してください。

Oracle Grid Infrastructureホームが共有ホームの場合は、この手順のコマンド例に-cfsオプションを追加し、クラスタ・ファイル・システムの完全なパス位置を指定します。

ファイル内でのclone.plスクリプトの入力値の指定

clone.plスクリプトは取得したパラメータの値に依存するため、括弧、一重引用符および二重引用符は正確に使用する必要があります。エラーの発生を回避するために、例5-1に示すstart.shスクリプトに類似したファイルを作成して、そこでclone.plスクリプトに対する環境変数およびクローニング・パラメータを指定できます。

例5-1は、clone.plスクリプトをコールするstart.shというサンプル・スクリプトからの抜粋を示しており、例はcrsclusterというクラスタ用に構成されています。Oracle Clusterwareをインストールしたオペレーティング・システム・ユーザーとしてスクリプトを実行します。

例5-1 Oracle Clusterwareをクローニングするstart.shスクリプトの抜粋

#!/bin/sh
ORACLE_BASE=/u01/app/oracle
GRID_HOME=/u01/app/11.2.0/grid
THIS_NODE=&rsquor;hostname -s&rsquor;

E01=ORACLE_BASE=${ORACLE_BASE}
E02=ORACLE_HOME=${GRID_HOME}
E03=ORACLE_HOME_NAME=OraGridHome1
E04=INVENTORY_LOCATION=${ORACLE_BASE}/oraInventory

#C00="-O'-debug'"
C01="-O'\"CLUSTER_NODES={node1,node2}\"'"
C02="-O'\"LOCAL_NODE=${THIS_NODE}\"'"

perl ${GRID_HOME}/clone/bin/clone.pl -silent $E01 $E02 $E03 $E04 $C01 $C02

start.shスクリプトでは、表5-2に示すように、いくつかの環境変数およびクローニング・パラメータが設定されます。表5-2に、環境変数E01、E02、E03、E04(例5-1では太字でしめされている)、およびC01およびC02を示します。

表5-2 clone.plスクリプトに渡される環境変数

記号

変数

説明

E01

ORACLE_BASE

Oracleベース・ディレクトリの場所。

E02

ORACLE_HOME

Oracle Grid Infrastructureホームの場所。このディレクトリの場所は存在している必要があり、Oracleオペレーティング・システム・グループのoinstallによって所有されている必要があります。

E03

ORACLE_HOME_NAME

Oracle Grid Infrastructureホームの名前。これは、Oracleインベントリに格納されます。

E04

INVENTORY_LOCATION

Oracleインベントリの場所。このディレクトリの場所は存在している必要があり、最初にOracleオペレーティング・システム・グループのoinstallによって所有されている必要があります。

C01

CLUSTER_NODES

クラスタ内のノードの短縮名のリスト。

C02

LOCAL_NODE

ローカル・ノードの短縮名。

手順4: 構成ウィザードの起動

構成ウィザードでは、crsconfig_paramsファイルを簡単に準備することができます。また、(rootcrs.plスクリプトをコールする)root.shスクリプトを実行するように求められ、Oracleバイナリの再リンクとクラスタ検証が実行されます。

次のように、構成ウィザードを起動します。

$ Oracle_home/crs/config/config.sh

オプションで、次のようにレスポンス・ファイルを指定して、構成ウィザードを暗黙的に実行できます。

$ Oracle_home/crs/config/config.sh -silent -responseFile file_name

関連項目:
レスポンス・ファイルの準備の詳細は、『Oracle Grid Infrastructureインストレーション・ガイドfor Linux』を参照してください。

GNSを使用する場合は、クローニングされたクラスタの実行後に、GNSをクラスタに追加することをお薦めします。srvctl add gnsコマンドを使用してGNSを追加します。

関連項目:
srvctl add gnsコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

クローニングを使用したクラスタへのノードの追加

また、クローニングを使用してクラスタにノードを追加することもできます。図5-2では、クローニング手順の最終結果を示しており、ここでは、ノード1上のOracle Grid Infrastructureホームが同じクラスタ上のノード2にクローニングされ、クラスタ2が2ノード・クラスタとして作成されています。クラスタへ新しく追加されたノードは、同じOCRおよび投票ディスクを共有します。

図5-2 クラスタにノードを追加するためのクローニング

図5-2を例とし、次の手順では、クローニングを使用してクラスタへノードを追加する方法を説明します。この手順では、ノード1はクローニングしたコピーを取得するソース・ノードで、ノード2はノード1のクローンをコピーする宛先ノードです。

1. 「手順1: 新規クラスタ・ノードの準備」で説明されているように、ノード2を準備します。

2. 「手順2: 宛先ノードでのOracle Grid Infrastructureホームのデプロイ」で説明されているように、ノード2でOracle Grid Infrastructureホームをデプロイします。

3. ノード2のGrid_home/clone/binディレクトリに格納されているclone.plスクリプトを実行します。

関連項目:
clone.plスクリプトで使用されるパラメータの詳細は、表5-1を参照してください。

次の例は、LinuxまたはUNIXシステムの場合です。

$ perl clone.pl ORACLE_HOME=/u01/app/11.2.0/grid ORACLE_HOME_NAME=OraHome1Grid
ORACLE_BASE=/u01/app/oracle -O'"CLUSTER_NODES={node1, node2}"'
-O'"LOCAL_NODE=node2"' CRS=TRUE
SHOW_ROOTSH_CONFIRMATION=false INVENTORY_LOCATION=/u01/app/oraInventory

前述のコマンドのnode_listは、クラスタ内のすべてのノードのカンマ区切りリストです。

次の例は、Windowsシステムの場合です。

注意:
Windowsでこのコマンドを実行する場合は、-Oオプションを使用しないでください。

C:\>perl clone.pl ORACLE_BASE=D:\u01\app\grid ORACLE_HOME=D:\u01\app\grid\11.2.0
ORACLE_HOME_NAME=OraHome1Grid '"CLUSTER_NODES={node1, node2}"'
'"LOCAL_NODE=node1"' CRS=TRUE

root.shの実行を求めるプロンプトが表示されたら、そのプロンプトを無視して、次の手順に進みます。

4. この手順はWindowsには適用されません。
ノード2の中央インベントリ・ディレクトリで、rootとしてorainstRoot.shスクリプトを実行します。このスクリプトは、/etc/oraInst.locディレクトリに中央インベントリの場所を移入します。次に例を示します。

[root@node2 root]# /opt/oracle/oraInventory/orainstRoot.sh

複数の宛先ノードで同時にスクリプトを実行することができます。

5. 次のように、ノード1のGrid_home/oui/binディレクトリに格納されているaddNode.sh(WindowsではaddNode.bat)スクリプトを実行します。

$ addNode.sh -silent -noCopy ORACLE_HOME=Grid_home "CLUSTER_NEW_NODES={node2}"
"CLUSTER_NEW_VIRTUAL_HOSTNAMES={node2-vip}" "CLUSTER_NEW_VIPS={node2-vip}"
CRS_ADDNODE=true CRS_DHCP_ENABLED=false

注意:

- ノード2ではclone.plスクリプトをすでに実行してあるため、この手順では、ノードでインベントリを更新し、ローカル・ノードでスクリプトをインスタンス化するのみです。

- addNode.shスクリプトで-noCopyオプションを使用する場合、パスワード・ファイルのコピーはノード2に存在しない可能性があり、この場合、ノード2に正しいパスワード・ファイルをコピーする必要があります。

- addNode.shスクリプトは、cluvfy stage -pre nodeadd検証を実行します。

6. 次の2つのファイルとgpnpディレクトリを、addnode.shを実行可能なノード1からノード2にコピーします。

Grid_home/crs/install/crsconfig_addparams
Grid_home/crs/install/crsconfig_params
Grid_home/gpnp

7. ノード2で、Grid_home/root.shスクリプトを実行します。

注意:
この例のクラスタのノードは2つのみです。クラスタに複数のノードを追加する場合、すべてのノードでroot.shを同時に実行することができます。

次の例はLinuxまたはUNIXシステム用の例です。ノード2で、次のコマンドを実行します。

[root@node2 root]# Grid_home/root.sh

root.shスクリプトにより、次のノード・アプリケーションが自動的に構成されます。

- グローバル・サービス・デーモン(GSD)

- Oracle Notification Service(ONS)

- Oracle Cluster Registry(OCR)の仮想IP(VIP)リソース

- 単一クライアント・アクセス名(SCAN)VIPおよびSCANリスナー

- Oracle ASM

Windowsでは、ノード2で次のコマンドを実行します。

C:\>Grid_home\crs\config\gridconfig.bat

8. ノード1のOracle_home/oui/binディレクトリに移動し、次の構文を使用してaddNode.shスクリプトを実行します。

$ ./addNode.sh -silent -noCopy "CLUSTER_NEW_NODES={node2}"

注意:
宛先ノードのOracleホームが完全にソフトウェアに移入されている場合のみ、-noCopyオプションを使用します。それ以外の場合は、addnode.shスクリプトの実行時に-noCopyオプションを省略し、宛先ノードにソフトウェアをコピーします。

9. rootとしてノード2でOracle_home/root.shスクリプトを実行します(この場合のOracle_homeはOracle RACホームです)。

10. rootとしてノード2でGrid_home/crs/install/rootcrs.plスクリプトを実行し、前の手順でroot.shを実行したときに生成された説明に従います。

11. ノード1で次のクラスタ検証ユーティリティ(CVU)・コマンドを実行します。

$ cluvfy stage -post nodeadd -n destination_node_name [-verbose]

関連項目:
このCVUコマンドの詳細は、「cluvfy stage [-pre | -post] nodeadd」を参照してください。

クローニング時に生成されたログ・ファイルの配置と表示

クローニング・スクリプトは、それぞれがログ・ファイルを生成できる複数のツールを実行します。clone.plスクリプトの実行が終了した後、これらのログ・ファイルを参照して、クローニング手順のステータスに関する詳細情報を入手することができます。表5-3では、クローニング時に生成される、診断に重要なログ・ファイルを示します。

注意:
表5-3のCentral_inventoryは、Oracle Inventoryディレクトリを表します。

表5-3 クローニングのログ・ファイルおよび説明

ログ・ファイルの名前および場所

説明

Central_inventory/logs/cloneActions/timestamp.log

クローニングのOUI部分で行われたアクションの詳細ログが含まれます。

Central_inventory/logs/oraInstall/timestamp.err

OUIの実行中に発生したエラーに関する情報が含まれます。

Central_inventory/logs/oraInstall/timestamp.out

その他の情報が含まれます。

表5-4は、様々なプラットフォーム用のOracle Inventoryディレクトリの場所を示しています。

表5-4 Oracleインベントリ・ディレクトリの場所の検索

システムの種類

Oracleインベントリ・ディレクトリの場所

LinuxおよびIBM AIXを除く、すべてのUNIXコンピュータ

/var/opt/oracle/oraInst.loc

IBM AIXおよびLinux

/etc/oraInst.loc

Windows

C:\Program Files\Oracle\Inventory

6 Oracle Clusterwareを使用したアプリケーションの高可用性の実現

クラスタ内でアプリケーション、プロセスまたはサーバーに障害が発生した場合、その影響をユーザーにまったく気付かれないようにすることはできないまでも、できるかぎり短時間に抑える必要があります。たとえば、サーバーでアプリケーションに障害が発生した場合、そのアプリケーションをクラスタ内の別のサーバーで再起動して、そのアプリケーションの使用に対する影響を最小限にするか、またはなくしてしまうことができることを意味します。同様に、クラスタ内のサーバーで障害が発生した場合、そのサーバーで実行されているすべてのアプリケーションおよびプロセスを別のサーバーにフェイルオーバーして、ユーザーへのサービスの提供を継続できる必要があります。Oracle Clusterwareは、カスタマイズ可能なアクション・スクリプトおよびアプリケーション・エージェント・プログラムを、アプリケーションとプロセスに割り当てられたリソース属性とともに使用してすべてのエンティティを管理することによって、高可用性を確保します。

この章では、Oracle Clusterwareを使用して、アプリケーションの起動、停止、監視、再起動および再配置を行う方法について説明します。Oracle Clusterwareは、Oracle Real Application Clusters(Oracle RAC)の基礎となるクラスタ・ソリューションです。Oracle RACデータベースを管理する場合と同じ機能および方針がアプリケーションの管理に適用されます。

内容は次のとおりです。

- Oracle Clusterwareリソースおよびエージェント

- Oracle Clusterwareを使用した高可用性の実現の概要

- リソースとしてのアプリケーションの登録

- リソースの管理

- Oracle Clusterwareによるリソースの自動再起動の管理

Oracle Clusterwareリソースおよびエージェント

この項では、アプリケーションの高可用性を確保するために、Oracle Clusterwareでリソースの監視および管理に使用されるフレームワークについて説明します。

この項には次のトピックが含まれます:

- リソース

- リソース・タイプ

- エージェント

- アクション・スクリプト

- エージェントの作成

- Oracle Clusterwareへのリソースの登録

リソース

Oracle Clusterwareでは、アプリケーションおよびプロセスはOracle Clusterwareに登録するリソースとして管理されます。アプリケーションを管理するためにOracle Clusterwareに登録するリソースの数は、アプリケーションによって異なります。1つのプロセスでのみ構成されるアプリケーションは、ほとんどの場合、1つのリソースでのみ表されます。複数のプロセスまたはコンポーネント上に構築されたより複雑なアプリケーションでは、複数のリソースが必要な場合があります。

Oracle Clusterwareのリソースとしてアプリケーションを登録する場合は、リソースの特徴を示すリソース属性を使用してOracle Clusterwareでのアプリケーションの管理方法を定義します。リソース属性の例としては、リソースのチェック頻度、障害が発生してから別のサーバーで起動が試行される(フェイルオーバー)までの間に同じサーバーでリソースの再起動が試行される回数などがあります。また、登録情報には、アクション・スクリプトへのパス、またはアプリケーションの起動、停止、チェックおよびクリーンアップを実行するためにOracle Clusterwareによってコールされるアプリケーション固有のアクション・プログラムも含まれています。

アクション・スクリプトは、Oracle Clusterwareで提供されている汎用スクリプト・エージェントがコールするシェル・スクリプト(Windowsのバッチ・スクリプト)です。アプリケーション固有のエージェントは、ほとんどの場合、Oracle Clusterwareで提供されているAPIを直接コールするCまたはC++プログラムです。

関連項目:
アクション・スクリプトの例は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

Oracle Clusterware 11gリリース2(11.2)では、リソースの管理にエージェント・プログラム(エージェント)を使用しており、アプリケーションを保護するスクリプトが使用可能になるように次の組込みエージェントが含まれています。

- scriptagent: このエージェント(Windowsではscriptagent.exe)は、シェル・スクリプトまたはバッチ・スクリプトを使用してアプリケーションを保護する場合に使用します。cluster_resourceとlocal_resourceの両方のリソース・タイプは、この・エージェントを使用するように構成されており、また、これらのタイプのリソースは、このエージェントを自動的に利用します。

- appagent: このエージェントは(Windowsではappagent.exe)、以前のバージョンのOracle Clusterwareで使用されたapplicationリソース・タイプのリソースを自動的に保護します。このエージェントを使用するために構成を行う必要はありません。以前のバージョンのOracle Clusterwareでの方法と同じ方法でアクション・スクリプトが起動されますが、applicationリソース・タイプに対してのみ使用する必要があります。

注意:
application以外のすべてのタイプのリソースに、scriptagentを使用することをお薦めします。Oracleでは、非推奨のapplicationリソース・タイプとの下位互換用にアプリケーション・エージェントが提供されています。

デフォルトでは、リソース・タイプを作成し、(AGENT_FILENAME属性を使用して)リソース・タイプの仕様の一部として異なるエージェントを指定してこの動作を上書きしないかぎり、applicationリソース・タイプ以外のすべてのリソースでスクリプト・エージェントが使用されます。

また、任意の方法でリソースを管理するために独自のエージェントを作成することもできます。

関連項目:
リソース・タイプの詳細は、「リソース・タイプ」を、カスタム・エージェントの作成の詳細は、「エージェントの作成」を参照してください。

リソース・タイプ

通常、すべてのリソースは一意ですが、共通属性を持つリソースもあります。Oracle Clusterwareでは、これらの類似リソースの編成にリソース・タイプが使用されます。リソース・タイプのメリットは次のとおりです。

- 必要なリソース属性のみの管理

- リソース・タイプに基づくすべてのリソースの管理

Oracle Clusterwareに登録するすべてのリソースには、特定のリソース・タイプが必要です。Oracle Clusterware制御(CRSCTL)ユーティリティを使用して、Oracle Clusterwareに含まれているリソース・タイプに加えて、カスタム・リソース・タイプを定義できます。含まれているリソース・タイプは次のとおりです。

- ローカル・リソース: タイプ名がlocal_resourceのローカル・リソースのインスタンスで、クラスタの各サーバーで実行されます。サーバーをクラスタに追加すると、Oracle Clusterwareではローカル・リソースが自動的に拡張され、インスタンスは新しいサーバーに関連付けられます。サーバーをクラスタから削除すると、Oracle Clusterwareでは、削除するサーバーで実行されていたローカル・リソースのインスタンスが自動的に削除されます。ローカル・リソースのインスタンスは、対応するサーバーに固定されており、あるサーバーから別のサーバーにフェイルオーバーされることはありません。

- クラスタ・リソース: タイプ名がcluster_resourceのクラスタ対応リソース・タイプで、クラスタ環境を認識し、カーディナリティおよびサーバー間のスイッチオーバーとフェイルオーバーの対象となります。

関連項目:

- CRSCTLを使用してリソース・タイプを追加する方法の詳細は、付録E「CRSCTLユーティリティのリファレンス」を参照してください。

- リソースの状態の詳細は、「リソースの状態」を参照してください。

注意:
以前のバージョンのOracle Clusterwareでは、applicationリソース・タイプのみがサポートされていました。このリソース・タイプはまだ存在しますが、下位互換性を保つ目的でのみです。Oracle Clusterware 11gリリース2(11.2)では、cluster_resourceリソース・タイプを使用して、アプリケーション・タイプのリソースを登録することをお薦めします。cluster_resourceリソース・タイプを使用してアプリケーション・タイプのリソースを登録しない場合は、管理情報について、それらのアプリケーションに対応するドキュメントを参照してください。

エージェント

アプリケーションがOracle Clusterwareにリソースとして登録されると、Oracle Clusterwareでそれらのアプリケーションが管理されます。Oracle Clusterwareでは、特定のリソースを起動、停止および監視できるアプリケーション固有のプリミティブにアクセスできます。Oracle Clusterwareでは、リソース固有のすべてのコマンドはエージェントと呼ばれるエンティティを介して実行されます。

エージェントは、リソースを管理するためのエージェント・フレームワークおよびユーザー・コードを含むプロセスです。エージェント・フレームワークは、アプリケーション固有のコードを組み込んで、カスタマイズされたアプリケーションを管理できるライブラリです。アプリケーションの起動、停止、状態のチェックなど、実際のアプリケーション管理機能のすべてをエージェントにプログラムします。これらの機能はエントリ・ポイントと呼ばれます。

Oracle Clusterwareにかわって、エージェント・フレームワークによりこれらのエントリ・ポイント機能が起動されます。エージェントの開発者は、これらのエントリ・ポイントを使用して、リソースの起動、停止および監視方法に関する、機能を特定のリソースに必要な機能を組み込むことができます。エージェントで複数のリソースを管理できます。

エージェントの開発者は、コードへのコールバックとして次のエントリ・ポイントを設定できます。

- START: リソースをオンラインにするエントリ・ポイントです。エージェント・フレームワークでは、Oracle Clusterwareからstartコマンドを受信するたびにこのエントリ・ポイントがコールされます。

- STOP: リソースを正常に停止するエントリ・ポイントです。エージェント・フレームワークでは、Oracle Clusterwareからstopコマンドを受信するたびにこのエントリ・ポイントがコールされます。

- CHECK: リソースの状態を監視するエントリ・ポイントです。エージェント・フレームワークでは、このエントリ・ポイントが定期的にコールされます。エージェント・フレームワークでは、このアクションで状態変更が検出されると、特定のリソースの状態における変更についてOracle Clusterwareに通知が行われます。

- CLEAN: リソースのクリーンアップが必要な場合に機能するエントリ・ポイントです。ユーザーがリソースを強制終了する必要がある場合に起動される操作で、正常な場合の操作ではありません。このコマンドによってリソース固有の環境がクリーンアップされ、リソースを再起動できます。

- ABORT: エージェント・フレームワークでは、他のエントリ・ポイントがハングした場合にABORTエントリ・ポイントがコールされ、進行中のアクションが中断されます。エージェントの開発者によって中断機能が指定されていない場合、エージェント・フレームワークによってエージェント・プログラムが終了されます。

START、STOP、CHECKおよびCLEANエントリ・ポイントは必須であり、エージェントの開発者はエージェントの作成時にこれらのエントリ・ポイントを指定する必要があります。エージェントの開発者には、C、C++、スクリプトの使用を含め、これらのエントリ・ポイントを実装するいくつかのオプションがあります。CまたはC++とスクリプト・タイプのエントリ・ポイントの両方を使用するエージェントを開発することもできます。エージェント・フレームワークの初期化時に、必須エントリ・ポイントのいずれかが指定されていない場合、エージェント・フレームワークではACTION_SCRIPTリソース属性が指すスクリプトが起動されます。

関連項目:
このリソース属性の詳細は、「ACTION_SCRIPT」を参照してください。

エージェント・フレームワークでは、各アプリケーションに対して常に1つのエントリ・ポイントのみが起動されます。エントリ・ポイントがハングした場合、エージェント・フレームワークによってABORTエントリ・ポイントがコールされ、現在の操作が中断されます。エージェント・フレームワークによってCHECKエントリ・ポイントが定期的に起動され、リソースの状態が確認されます。このエントリ・ポイントによって、リソースの状態として次のいずれかが戻されます。

- CLSAGFW_ONLINE: リソースが正常に起動されて現在動作中の状態である場合には、CHECKエントリ・ポイントによってONLINEが戻されます。リソースがこの状態である場合、エージェント・フレームワークで引き続き監視されます。この状態では、scriptagentの数値は0です。

- CLSAGFW_UNPLANNED_OFFLINE/CLSAGFW_PLANNED_OFFLINE: OFFLINE状態は、リソースが現在実行されていないことを示します。これら2つの状態では、scriptagentの数値はそれぞれ1および2です。
plannedおよびunplannedの2つのカテゴリによってリソースのOFFLINE状態が示されます。

リソースの状態がOracle Clusterwareを介してOFFLINEに遷移すると、CHECKエントリ・ポイントから戻される値にかかわらず、このリソースはオフライン(TARGET=OFFLINE)になるように意図されているとみなされます。ただし、Oracle以外のインタフェースを使用してリソースが停止されたなど、Oracle Clusterwareに関係なくリソースの状態が変更されたことをエージェントで検出した場合、この意図はエージェントからクラスタ・レディ・サービス・デーモン(crsd)に引き継がれる必要があります。この意図が次を決定する要因となります。

- リソースのTARGETリソース属性の値をそのままにしておくか、変更するか。PLANNED_OFFLINEは、リソースがそれまで実行されていた場合にのみTARGETリソース属性をOFFLINEに変更する必要があることを示します。リソースが実行されていなかった場合(STATE=OFFLINE、TARGET=OFFLINE)、リソースを起動するリクエストが着信すると、TARGETリソース属性の値はONLINEに変更されます。その後、エージェントにこの起動リクエストが送られ、エージェントはリソースの状態PLANNED_OFFLINEをOracle Clusterwareにレポートし、TARGETリソース属性の値はONLINEのままになります。TARGET属性はUNPLANNED_OFFLINEによって変更されません。

- リソースの状態をUNPLANNED_OFFLINEのままにしておくか、ローカルで再起動することによってリソースのリカバリを試行するか、クラスタ内の別のサーバーにフェイルオーバーするか。PLANNED_OFFLINE状態では、リソースはcrsdによってそのままにされますが、UNPLANNED_OFFLINE状態では、リソースのリカバリが求められます。

- CLSAGFW_UNKNOWN: リソースの現在の状態が判別できない場合は、CHECKエントリ・ポイントによってUNKNOWNが戻されます。この状態に対して、Oracle Clusterwareではフェイルオーバーまたはリソースの再起動は試行されません。リソースの以前の状態がONLINEまたはPARTIALのいずれかであった場合、エージェント・フレームワークでは引き続きリソースが監視されます。この状態では、scriptagentの数値は3です。

- CLSAGFW_PARTIAL: リソースが部分的にオンラインで、一部のサービスが使用可能であることが認識された場合は、CHECKエントリ・ポイントによってPARTIALが戻されます。Oracle Clusterwareでは、この状態は部分的にオンラインとみなされ、フェイルオーバーまたはリソースの再起動は試行されません。エージェント・フレームワークでは、この状態のリソースが引き続き監視されます。この状態では、scriptagentの数値は4です。

- CLSAGFW_FAILED: リソースが動作中の状態ではなく、一部のコンポーネントが失敗し、リソースを再起動するためにクリーンアップが必要であることが検出された場合は、CHECKエントリ・ポイントによってFAILEDが戻されます。この状態に対して、Oracle ClusterwareでCLEANアクションがコールされ、リソースがクリーンアップされます。CLEANアクションが終了したら、リソースの状態はOFFLINEになります。リソースのポリシーによっては、次に、Oracle Clusterwareでフェイルオーバーまたはリソースの再起動が試行される場合があります。エージェント・フレームワークで、障害が発生したリソースが監視されることはありません。この状態では、scriptagentの数値は5です。

エージェント・フレームワークでは、表6-1に示す状態のリソースが、CHECK_INTERVALまたはOFFLINE_CHECK_INTERVALリソース属性で指定される一定の間隔で暗黙的に監視されます。

関連項目:
これらのリソース属性の詳細は、「CHECK_INTERVAL」および「OFFLINE_CHECK_INTERVAL」を参照してください。

表6-1 エージェント・フレームワークの監視特性

状態

条件

頻度

ONLINE

常時

CHECK_INTERVAL

PARTIAL

常時

CHECK_INTERVAL

OFFLINE

OFFLINE_CHECK_INTERVALリソース属性の値が0より大きい場合のみ。

OFFLINE_CHECK_INTERVAL

UNKNOWN

監視されるのは、リソースが前述のいずれかの条件の結果として以前に監視されていた場合のみ。

CHECK_INTERVAL属性またはOFFLINE_CHECK_INTERVAL属性の任意の値

エージェントが起動されるたびに、エージェントが監視するすべてのリソースの状態はUNKNOWNに設定されます。エージェント・フレームワークでは、Oracle Clusterwareからの最初のプローブ・リクエストを受信すると、すべてのリソースに対してCHECKエントリ・ポイントが実行され、現在の状態が確認されます。

リソースのCHECKアクションが正常に完了すると、リソースの状態は前述の状態のいずれかに遷移します。次に、エージェント・フレームワークによって、Oracle Clusterwareから発行されるコマンドに基づいてリソースが起動されます。エージェント・フレームワークでは、すべてのアクションが完了するとCHECKアクションが起動され、リソースの現在の状態が確認されます。エージェント・フレームワークでは、リソースが表6-1に示す監視対象の状態のいずれかである場合、CHECKエントリ・ポイントが定期的に実行され、リソースの状態に変更がないかどうかが確認されます。

デフォルトでは、エージェント・フレームワークでオフラインのリソースは監視されません。ただし、OFFLINE_CHECK_INTERVAL属性の値が0より大きい場合、エージェント・フレームワークでオフラインのリソースが監視されます。

アクション・スクリプト

アクション・スクリプトは、リソースを開始、停止、確認またはクリーンアップする1つ以上のアクションを定義します。エージェント・フレームワークは、C/C++アクションがない場合に、これらのアクションを起動します。アクション・スクリプトを使用すると、C/C++エントリ・ポイントおよびスクリプト・エントリ・ポイントを含むエージェントを作成できます。すべてのアクションがアクション・スクリプトに定義されている場合、スクリプト・エージェントを使用して、アクション・スクリプトに定義されているアクションを起動できます。

アクション・スクリプトに定義されているアクションを起動する前に、エージェント・フレームワークは、必要なすべての属性をリソース・プロファイルから環境にエクスポートします。アクション・スクリプトは、stdout/stderrにメッセージを記録でき、エージェント・フレームワークは、エージェント・ログにこれらのメッセージを出力します。ただし、アクション・スクリプトは、stdout/stderrに出力されるメッセージに次のいずれかのタグを接頭辞として追加することで、特別なタグを使用して、進捗、警告またはエラーのメッセージをcrs*クライアント・ツールに送信できます。

CRS_WARNING
CRS_ERROR
CRS_PROGRESS

エージェント・フレームワークは、最終メッセージをcrs*クライアントに送信するときに、接頭辞として追加されたタグを削除します。

リソース属性は、接頭辞_CRS_を持つ環境変数としてアクション・スクリプト内からアクセス可能です。たとえば、START_TIMEOUT属性は、_CRS_START_TIMEOUTという環境変数になります。

関連項目:

- -envオプションを1つのstartアクションまたはstopオプションの属性値を上書きする方法として使用する場合の詳細は、ぞれぞれ「crsctl start resource」および「crsctl stop resource」を参照してください。

- エージェントのアクション・スクリプトの例は、例B-3を参照してください。

エージェントの作成

特定のアプリケーションのエージェント作成では、次の手順が実行されます。

1. スクリプト、CまたはC++のいずれかでエージェント・フレームワークのエントリ・ポイントを実装します。

2. エージェントの実行可能ファイルを作成します(CエージェントおよびC++エージェントの場合)。

3. エントリ・ポイントで必要なすべてのパラメータを収集し、新しいリソース・タイプを定義します。AGENT_FILENAME属性を、新しく作成した実行可能ファイルの絶対パスに設定します。

Oracle Clusterwareへのリソースの登録

crsctl add resourceコマンドを使用して、Oracle Clusterware 11gリリース2(11.2)にリソースを登録します。

注意:
CRS_REGISTERおよびCRS_PROFILEコマンドは、Oracle Clusterwareホームでも引き続き使用可能ですが、このリリースでは非推奨です。

アプリケーションをリソースとして登録するには、次の手順を実行します。

$ crsctl add resource resource_name -type resource_type [-file file_path] | [-attr "attribute_name='attribute_value', attribute_name='attribute_value', ..."]

リソースの作成対象のアプリケーションに基づいて、そのリソースの名前を選択します。たとえば、Apache Webサーバーのリソースを作成する場合は、このリソースの名前をmyApacheとします。

リソース・タイプの名前は-typeオプションの後に指定します。リソース属性は、-fileオプションで指定されたテキスト・ファイル、または-attrオプションの後の二重引用符("")で囲まれたリソース属性/値ペアのカンマ区切りのリストで指定できます。空白文字またはカンマで区切られた属性名およびカッコで囲まれた値は一重引用符('')で囲む必要があります。

属性ファイルの例を次に示します。

PLACEMENT=favored
HOSTING_MEMBERS=node1 node2 node3
RESTART_ATTEMPTS@CARDINALITYID(1)=0
RESTART_ATTEMPTS@CARDINALITYID(2)=0
FAILURE_THRESHOLD@CARDINALITYID(1)=2
FAILURE_THRESHOLD@CARDINALITYID(2)=4
FAILURE_INTERVAL@CARDINALITYID(1)=300
FAILURE_INTERVAL@CARDINALITYID(2)=500
CHECK_INTERVAL=2
CARDINALITY=2

-attrオプションの使用例を次に示します。

$ crsctl add resource resource_name -type resource_type] [-attr "PLACEMENT='favored', HOSTING_MEMBERS='node1 node2 node3', ..."]

関連項目:

- crsctl add resourceコマンドを使用した例は、「ユーザー定義のリソースの追加」を参照してください。

- crsctl add resourceコマンドの使用の詳細は、「crsctl add resource」を参照してください。

- リソース属性の詳細は、「リソース属性」を参照してください。

Oracle Clusterwareを使用した高可用性の実現の概要

Oracle Clusterwareでは、可用性が向上するリソースの構成方法に基づいてリソースが管理されます。Oracle Clusterwareで次の操作が実行されるようにリソースを構成できます。

- クラスタまたはノードの起動時のリソースの起動

- 障害が発生した場合のリソースの再起動

- 各サーバーへのリソースの再配置(他のサーバーを使用できる場合)

Oracle Clusterwareを使用してアプリケーションを管理するには、次の手順を実行します。

1. アクション・スクリプトを作成するか、既存のエージェントを使用します。

2. アプリケーションをOracle Clusterwareにリソースとして登録します。
単一のアプリケーションで複数のリソースを登録する必要がある場合、リソース間の関連する依存性の定義が必要な場合があります。

3. 適切な権限をリソースに割り当てます。

4. リソースを起動または停止します。

リソースで障害が発生すると、Oracle Clusterwareは、アプリケーションまたはプロセスをリソースとして登録したときに指定した属性値に基づいて、リソースの再起動を試行します。クラスタ内のサーバーで障害が発生した場合、障害が発生したサーバーで実行されるように指定されていたプロセスが別のサーバーで再起動されるようにリソースを構成できます。Oracle Clusterwareでは、様々なリソース属性に基づいて様々な構成可能な例がサポートされています。

リソースをOracle Clusterwareに登録すると、アプリケーション関連の情報およびリソース関連の情報がOracle Cluster Registry(OCR)に格納されます。この情報には、次のものが含まれます。

- アクション・スクリプトまたはアプリケーション固有のエージェントへのパス: これは、Oracle Clusterwareによってアプリケーションで実行されるstartアクション、stopアクション、checkアクションおよびcleanアクションを定義するスクリプトまたはアプリケーション固有のエージェントへの絶対パスです。

関連項目:
これらのアクションの詳細は、「エージェント」を参照してください。

- 権限: Oracle Clusterwareには、高可用性操作のために、アプリケーションのすべてのコンポーネントの制御に必要な権限(他のユーザーIDでプロセスを起動する権限を含む)があります。Oracle Clusterwareは、権限を持つユーザーとして実行し、正しい起動および停止プロセスでアプリケーションを制御する必要があります。

- リソース依存性: 操作の順序を示したり、クラスタ内のサーバーのリソース配置に影響するリソース間の関係を作成することができます。たとえば、他のリソースが実行されている場合、Oracle Clusterwareは別のリソースに対するhard起動依存性が定義されているリソースのみを起動できます。Oracle Clusterwareでは、停止対象のリソースに依存する他のリソースが実行されている場合、そのリソースは停止されません。ただし、crsctl stop resource -fコマンドを使用して、停止対象のリソースに依存するすべてのリソースを最初に停止し、そのリソースを強制終了することができます。

この項には次のトピックが含まれます:

- リソース属性

- リソースの状態

- リソース依存性

- リソースの配置

リソース属性

リソース属性は、Oracle Clusterwareで特定のリソース・タイプのリソースを管理する方法を定義します。各リソース・タイプには一意の属性セットがあります。一部のリソース属性はリソースの登録時に指定されますが、その他のリソース属性はOracle Clusterwareによって内部的に管理されます。

注意:
新しいリソース属性を定義できる場合でも、使用できる文字はUS-7 ASCIIのみです。

関連項目:
リソース属性の詳細は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

リソースの状態

クラスタ内のすべてのリソースは、いつでも特定の状態になっています。その状態は、特定のアクションまたはイベントによって変更される可能性があります。

表6-2に、予想されるリソースの状態を示します。

表6-2 予想されるリソースの状態

状態

説明

ONLINE

リソースは実行されています。

OFFLINE

リソースは実行されていません。

UNKNOWN

リソースの停止の試行に失敗しました。Oracle Clusterwareでは、この状態のリソースはアクティブに監視されません。アプリケーション固有のアクション(プロセスの停止など)を実行してリソースをオフラインにし、crsctl stop resourceコマンドを実行してリソースの状態をOFFLINEに再設定する必要があります。

INTERMEDIATE

次の2つのイベントのいずれかにより、リソースがINTERMEDIATE状態になる場合があります。

1. Oracle Clusterwareでリソースの状態を判別できませんが、リソースはオンラインになろうとしていたか、または最後に正確に認識されたときのリソースの状態はオンラインでした。通常、checkアクションを阻止する条件が適用されなくなるため、リソースは時間の経過とともにこの状態から遷移します。

2. リソースが部分的にオンラインになっています。たとえば、Oracle Database VIPリソースのホーム・サーバーがクラスタから削除された場合、Oracle Database VIPリソースは別のサーバーにフェイルオーバーされます。ただし、このVIPがホーム・サーバー以外のサーバーに存在する間、アプリケーションはこのVIPを使用してデータベースにアクセスすることはできません。同様に、Oracle Databaseインスタンスが起動されていても、オープンされていない場合も、リソースは部分的にオンラインになり、このリソースは実行されていますが、サービスを提供することはできません。

Oracle Clusterwareでは、INTERMEDIATE状態のリソースはアクティブに監視され、通常、ユーザーの介入は必要ありません。前述の理由1のためリソースがINTERMEDIATE状態になっている場合、Oracle Clusterwareは、リソースの状態が確立されるとすぐにリソースをINTERMEDIATE状態から遷移させます。

前述の理由2のためリソースがINTERMEDIATE状態になっている場合、リソースは、部分的にオンラインであるかぎり、この状態のままになります。たとえば、VIPのホーム・サーバーは、VIPがスイッチオーバーできるようにクラスタに再度参加する必要があります。データベース管理者は、データベース・インスタンスをオープンするコマンドを発行する必要があります。

ただし、いずれの場合も、Oracle Clusterwareでは、リソースは適切になるとすぐにINTERMEDIATE状態から自動的に遷移します。STATE_DETAILSリソース属性を使用して、リソースがINTERMEDIATE状態である理由を説明し、リソースをこの状態から遷移させるための解決策を提供します。

リソース依存性

リソースは他のリソースに依存するように構成でき、これによって、依存先リソースの特定の条件が満たされる場合にのみ、依存リソースを起動または停止できます。たとえば、Oracle Clusterwareでリソースを起動しようとする場合、初期リソースが依存するリソースは実行中で、同じ場所に存在する必要があります。Oracle Clusterwareでリソースをオンラインにすることができない場合は、初期(依存)リソースをオンラインにすることもできません。Oracle Clusterwareによってリソースが停止された場合またはリソースで障害が発生した場合は、依存リソースも停止されます。

一部のリソースでは、他のリソースより起動に必要な時間が長くなります。一部のリソースはサーバーが起動されるたびに起動する必要がありますが、その他のリソースは手動のstartアクションが必要です。これらのリソース固有の動作の例および他の多くの例は、各リソースを予測される動作および他のリソースとの関連から説明する必要があることを示しています。

リソースがOracleリソースに依存するように構成できます。ただし、リソースを作成する際、リソース名に接頭辞oraを使用しないでください。この接頭辞は、Oracleでのみ使用するために予約されています。

以前のバージョンのOracle Clusterwareには、REQUIRED_RESOURCESリソース属性およびOPTIONAL_RESOURCESリソース属性という2つの依存性仕様のみが含まれていました。REQUIRED_RESOURCESリソース属性は、リソースの起動依存性および停止依存性の両方に適用されます。

注意:
REQUIRED_RESOURCESおよびOPTIONAL_RESOURCESリソース属性はapplicationタイプのリソースの場合のみ引き続き使用可能です。これらを使用してOracle Clusterware 11gリリース2(11.2)のリソース依存性を定義することは非推奨です。

Oracle Clusterware 11gリリース(11.2)では、リソース依存性が起動および停止カテゴリに分割されています。この分割によって、リソースとリソース・タイプ間の起動依存性および停止依存性が向上され、拡張されます。

この項には次のトピックが含まれます:

- 起動依存性

- 停止依存性

起動依存性

Oracle Clusterwareでは、リソースの起動試行の評価が開始されると、そのリソースのプロファイルに含まれる起動依存性が考慮されます。START_DEPENDENCIESリソース属性を使用して、リソースの起動依存性を指定します。各依存性で修飾子を使用して、依存性をさらに詳細に構成できます。

関連項目:
リソース属性、修飾子および使用方法の詳細は、「START_DEPENDENCIES」を参照してください。

この項では、次の起動依存性について説明します。

- hard

- weak

- attraction

- pullup

- dispersion

hard

依存リソースを起動する前に別のリソースが実行されている必要がある場合は、そのリソースにhard起動依存性を定義します。たとえば、リソースBに対するhard起動依存性がリソースAに定義されている場合は、リソースAを起動する前にリソースBが実行されている必要があります。

注意:
hard起動依存性を持つリソースにはpullup起動依存性も定義することをお薦めします。

次の制約を使用して、hard起動依存性を構成できます。

- START_DEPENDENCIES=hard(global:resourceB)
デフォルトでは、リソースAおよびBを同じサーバーに配置する必要があります。global修飾子を使用してリソースを同じ場所に配置する必要がないように指定します。たとえば、リソースBに対するhard(global:resourceB)起動依存性がリソースAに定義されている場合は、リソースBがクラスタ内のノードで実行されていると、リソースAを起動できます。

- START_DEPENDENCIES=hard(intermediate:resourceB)
intermediate修飾子を使用すると、依存先リソースの状態がONLINEまたはINTERMEDIATEのいずれかの場合に依存リソースを起動できるように指定できます。

- START_DEPENDENCIES=hard(type:resourceB.type)
type修飾子を使用すると、hard起動依存性を特定のリソースに対して有効にするか、リソース・タイプに対して有効にするかを指定できます。たとえば、resourceB.typeタイプに対するhard起動依存性がリソースAに定義されている場合は、resourceB.typeタイプのリソースが実行されているとリソースAを起動できます。

- START_DEPENDENCIES=hard(resourceB, intermediate:resourceC, intermediate:global:type:resourceC.type)
修飾子を組み合せて、START_DEPENDENCIESリソース属性に複数のリソースを指定できます。

注意:
修飾子句は、カンマで区切ります。type修飾子句は必ずリストの最後の修飾子句である必要があり、type修飾子を必ずタイプの直前に指定する必要があります。

weak

リソースBに対するweak起動依存性がリソースAに定義されており、リソースBが実行されていない場合は、リソースAの起動を試行すると、リソースBの起動が試行されます。ただし、リソースBの起動の試行結果は、リソースAの起動結果に影響しません。

次の制約を使用して、weak起動依存性を構成できます。

- START_DEPENDENCIES=weak(global:resourceB)
デフォルトでは、リソースAおよびBは同じ場所に配置する必要があります。global修飾子を使用してリソースを同じ場所に配置する必要がないように指定します。たとえば、リソースBに対するweak(global:resourceB)起動依存性がリソースAに定義されている場合は、リソースBがクラスタ内のノードで実行されていると、リソースAを起動できます。

- START_DEPENDENCIES=weak(concurrent:resourceB)
concurrent修飾子を使用すると、リソースBが先に起動するのを待機するのではなく、リソースAおよびリソースBが同時に起動できるように指定できます。

- START_DEPENDENCIES=weak(type:resourceB.type)
type修飾子を使用すると、resourceB.typeなど、特定のリソース・タイプのリソースに対して依存性を有効にすることを指定できます。

attraction

リソースBに対するattraction依存性がリソースAに定義されている場合、Oracle ClusterwareはリソースBをホスティングしているサーバーにリソースAを配置します。この場合のリソースAのような依存リソースは、依存リソースでattraction依存性が定義されている依存先リソースが実行されているサーバーで実行される傾向があります。Oracle Clusterwareは、依存リソースが誘引されるリソースのサーバーに依存リソースを配置します。

次の制約を使用して、attraction起動依存性を構成できます。

- START_DEPENDENCIES=attraction(intermediate:resourceB)
intermediate修飾子を使用すると、INTERMEDIATE状態になっているリソースにリソースが誘引されるかどうかを指定できます。

- START_DEPENDENCIES=attraction(type:resourceB.type)
type修飾子を使用すると、特定のリソース・タイプに対して依存性を有効にするかどうかを指定できます。依存リソースは特定のタイプのリソースを最も多くホスティングしているサーバーに誘引されます。

注意:
以前のバージョンのOracle Clusterwareでは、現在非推奨のOPTIONAL_RESOURCES属性を使用してattraction依存性が表現されています。

pullup

リソースBが起動するたびにリソースAを自動的に起動するには、pullup起動依存性を使用します。この依存性は、リソースAが実行されていない場合にのみリソースAに影響します。他の依存性の場合と同様に、pullupによって、依存リソースがすべてのサーバーで起動することがあります。リソースAがリソースBに依存し、リソースBが失敗した後リカバリした場合に、リソースAが再起動されるように、hard停止依存性がある場合は必ずpullup依存性を使用します。

注意:
hard起動依存性を持つリソースにはpullup起動依存性も定義することをお薦めします。

次の制約を使用して、pullup起動依存性を構成できます。

- START_DEPENDENCIES=pullup(intermediate:resourceB)
intermediate修飾子を使用すると、リソースBがONLINE状態またはINTERMEDIATE状態のいずれかの場合にリソースAを起動できるように指定できます。

複数のリソースに対するpullup依存性がリソースAに定義されている場合、リソースAが依存するすべてのリソースが起動されたときにのみリソースAが起動されます。

- START_DEPENDENCIES=pullup:always(resourceB)
always修飾子を使用して、リソースAが依存するリソースのTARGET属性の値がONLINE またはOFFLINE のいずれであっても、Oracle ClusterwareでリソースAを起動するかどうかを指定できます。デフォルトでは、always修飾子を使用せず、依存先リソースのTARGET属性の値がONLINEの場合にのみpullupによってリソースが起動されます。

- START_DEPENDENCIES=pullup(type:resourceB.type)
type修飾子を使用すると、特定のリソース・タイプに対して依存性を有効にするように指定できます。

dispersion

リソースにdispersion起動依存性を指定すると、Oracle Clusterwareは、このリソースでdispersionが定義されているリソースが最も少ないサーバーでこのリソースを起動します。dispersionを使用するリソースでも、リソースを分散する十分なサーバーがない場合、同じサーバーで実行されることがあります。

次の修飾子を使用して、dispersion起動依存性を構成できます。

- START_DEPENDENCIES=dispersion(intermedite:resourceB)
intermediate修飾子を使用すると、リソースBがONLINE状態またはINTERMEDIATE状態のいずれであっても、Oracle ClusterwareによってリソースAが分散されるように指定できます。

- START_DEPENDENCIES=dispersion:active(resourceB)
通常、dispersionはリソースの起動時にのみ適用されます。リソースの起動時に十分なサーバーがないために、相互に分散するリソースが同じサーバーで起動される場合、サーバーがクラスタに追加されてもリソースが実行されていれば、Oracle Clusterwareはそのリソースを変更しません。active修飾子を指定する場合、Oracle Clusterwareは、新しいサーバーがクラスタに追加されると、リソースに対してdispersionを再適用します。

停止依存性

Oracle Clusterwareでは、リソースが停止される(リソースの状態がONLINEから他の状態に変更される)たびに、リソース間の停止依存性が考慮されます。

hard

リソースBに対するhard停止依存性がリソースAに定義されている場合は、リソースBの実行が停止されるときにリソースAも停止される必要があります。2つのリソースは、構成方法に応じて、起動または別のサーバーへの再配置を試行する場合があります。hard停止依存性を持つリソースにはhard起動依存性も定義することをお薦めします。

次の修飾子を使用して、hard停止依存性を構成できます。

- STOP_DEPENDENCIES=hard(intermedite:resourceB)
intermediate修飾子を使用すると、リソースAをオンラインのままにするために、リソースBをONLINEまたはINTERMEDIATE状態のいずれかにする必要があるかどうかを指定できます。

- STOP_DEPENDENCIES=hard(global:resourceB)
global修飾子を使用すると、リソースAをオンラインのままにするために、リソースBが同じサーバーまたはクラスタ内の任意のサーバーに存在する必要があるかどうかを指定できます。この制約が指定されていない場合、リソースAおよびBは同じサーバーで実行されている必要があります。この条件が満たされなくなると、リソースAはOracle Clusterwareによって停止されます。

- STOP_DEPENDENCIES=hard(shutdown:resourceB)
crsctl stop crsコマンドまたはcrsctl stop clusterコマンドのどちらかを使用してOracle Clusterwareスタックを停止する場合にのみshutdown修飾子を使用してリソースを停止します。

関連項目:
修飾子の詳細は、「STOP_DEPENDENCIES」を参照してください。

リソース状態のリカバリに対するリソース依存性の影響

リソースの実行を続行する計画である場合に、リソースが実行されている状態から実行されていない状態に遷移する場合、この遷移はリソース障害と呼ばれます。この時点で、Oracle Clusterwareでは、リソース状態のリカバリ手順(リソースの高可用性ポリシーおよびその時点のエンティティの状態に応じて、リソースのローカルでの再起動、別のサーバーへの再配置または依存リソースの停止が試行される)が適用されます。

複数のリソースが相互に依存している場合、そのいずれかの障害が原因で他のリソースにも障害が発生することがあります。ほとんどの場合、障害が検出される順序を制御または予測することは困難です。たとえば、リソースAがリソースBに依存する場合でも、Oracle Clusterwareでは、リソースBの障害がリソースAの障害よりも後で検出されることがあります。

このように、障害の順序が予測可能でない場合、Oracle Clusterwareでは依存リソースの再起動がパラレルで試行される可能性があり、これによって、依存先リソースが不適切な順序で再起動されるため、最終的に一部のリソースの再起動に失敗します。

この場合、hard停止依存性およびpullup依存性のいずれかまたはその両方が使用されていると、Oracle Clusterwareでは依存リソースのローカルでの再起動が再試行されます。たとえば、リソースAにリソースBに対するhard停止依存性またはpullup依存性のいずれかあるいはその両方が定義されている場合、リソースBで障害が発生したためにリソースAでも障害が発生すると、Oracle Clusterwareではその両方のリソースの再起動が同時に試行される可能性があります。リソースAの再起動の試行に失敗した場合、Oracle Clusterwareでは、リソースBが正常に再起動されるとすぐにリソースAの再起動が試行されます。

リソースの配置

起動試行の評価の一部としてOracle Clusterwareで最初に決定される必要があるのは、リソースを起動(または配置)する場所です。コール元がターゲットのサーバーを名前で指定する場合、これは容易に決定されます。ただし、ターゲットのサーバーが指定されない場合、Oracle Clusterwareでは、リソースの構成およびクラスタの現在の状態で配置に最適なサーバーの検索が試行されます。

Oracle Clusterwareでは、最初にリソースの配置ポリシーが考慮され、ポリシーに適合しないサーバーは除外されます。Oracle Clusterwareでは、リソースのPLACEMENTリソース属性の値に応じた特定の順序で残りのサーバーがソートされます。

関連項目:
PLACEMENTリソース属性の詳細は、「アプリケーションの配置ポリシー」を参照してください。

これが考慮された結果、Oracle Clusterwareによってリソースを起動できる候補サーバーのリストが最大2つ作成されます。一方のリストには優先サーバーが含まれ、もう一方のリストには配置可能なサーバーが含まれます。リソースのPLACEMENTリソース属性の値がbalancedまたはrestrictedに設定されている場合、優先サーバーのリストは空になります。リソースの配置ポリシーによって、リソースを実行するサーバーが決定します。Oracle Clusterwareでは、優先リストにサーバーが示される場合、配置可能なサーバーよりも優先サーバーが考慮されます。

次に、リソースの依存性がある場合は、Oracle Clusterwareで考慮されてリソースの配置場所が判断されます。attraction起動依存性およびdispersion起動依存性は、一部の依存性修飾子と同様にリソースの配置決定に影響を及ぼします。Oracle Clusterwareによってこれらの配置ヒントが適用され、前述の2つのリストでサーバーがさらに順序付けられます。Oracle Clusterwareでは、リソースの配置ポリシーの影響と依存性の影響とを区別するために、サーバーの各リストが別々に処理されることに注意してください。

最後に、Oracle Clusterwareでは、優先サーバーがリストされている場合はそのリストから最初のサーバーが選択されます。Oracle Clusterwareでは、優先サーバーのリストにサーバーが示されていない場合、配置可能なサーバーがリストされていれば、その配置可能なサーバーのリストから最初のサーバーが選択されます。どちらのリストにもサーバーがない場合、Oracle Clusterwareではリソース配置エラーが生成されます。

注意:
Oracle Clusterwareで起動を試行しているリソースに関連する配置ポリシーまたはリソースの依存性のいずれも配置の決定に影響を及ぼしません。

リソースとしてのアプリケーションの登録

この項では、アプリケーションをOracle Clusterwareのリソースとして登録する手順の例を示します。この手順では、Apache WebサーバーをOracle Clusterwareにリソースとして追加する方法を示します。

この項の例では、Oracle ClusterwareおよびOracle Clusterwareで管理されるアプリケーションを所有するユーザーまたはグループに対する完全な管理権限がOracle Clusterware管理者に付与されていることを前提とします。登録処理が完了すると、オペレーティング・システム・ユーザーのかわりにOracle Clusterwareでアプリケーションを起動できます。

Oracle Clusterwareでは、登録されたリソースの所有者とユーザーは区別されます。リソースの所有者は、エージェントが実行されるオペレーティング・システム・ユーザーです。ユーザーおよび所有者の権限は、リソースのACLリソース属性によって定義されます。リソースを変更できるのは、rootのみです。

関連項目:
「ロール別管理」

注意:

- 接頭辞にcrs_を持つOracle Clusterwareコマンドは、このリソースでは非推奨です。これらのコマンドは、CRSCTLコマンドによって置換されます。CRSCTLコマンドのリストおよび対応するcrs_コマンドは、付録E「CRSCTLユーティリティのリファレンス」を参照してください。

- My Oracle Supportで指示された場合を除き、接頭辞oraを持つ名前のリソースで(Oracleリソースであるため)CRSCTLコマンドを使用しないでください。
Oracleリソースを構成するには、サーバー制御ユーティリティ(SRVCTL)を使用します。SRVCTLによって、すべての構成可能なオプションが提供されます。

この項には次のトピックが含まれます:

- Oracle Clusterwareで管理されるアプリケーションVIPの作成

- ユーザー定義のリソースの追加

- Oracle Enterprise Managerを使用したリソースの追加

- リソース権限の変更

- アプリケーションの配置ポリシー

- アプリケーションおよびアプリケーション・リソースの登録解除

Oracle Clusterwareで管理されるアプリケーションVIPの作成

アプリケーションのクライアントがネットワークを介してアプリケーションにアクセスし、アプリケーションの配置ポリシーによって別のノードへのフェイルオーバーが可能である場合は、アプリケーションが依存する仮想インターネット・プロトコル・アドレス(VIP)を登録する必要があります。アプリケーションVIPは、Oracle Clusterwareによって管理されるクラスタ・リソースです(Oracle ClusterwareではアプリケーションVIP用の標準VIPエージェントが提供されます)。システムで、クラスタにデプロイされたすべてのVIPの動作の一貫性が保持されるように、新しいアプリケーションVIPはこのVIPタイプに基づく必要があります。

Oracle Clusterwareで管理する他のリソースを追加できるように、VIPを追加することはできますが、Grid_home/bin/appvipcfgスクリプトを使用してアプリケーションVIPを作成または削除することをお薦めします。

アプリケーションVIPを作成するには、次の構文を使用します。

appvipcfg create -network=network_number -ip=ip_address -vipname=vip_name
-user=user_name [-group=group_name] [-failback=0 | 1]

アプリケーションVIPを削除するには、次の構文を使用します。

appvipcfg delete -vipname=vip_name

ここで、network_numberはネットワークの番号、ip_addressはIPアドレス、vip_nameはVIPの名前、user_nameはOracle Databaseをインストールしたユーザーの名前、group_nameはグループの名前です。-failbackオプションのデフォルト値は0です。オプションを1に設定すると、VIP(および、VIPに依存するすべてのリソース)は、元のノードが再び使用可能になると、元のノードにフェイルバックします。

たとえば、rootとして次のコマンドを実行します。

# Grid_home/bin/appvipcfg create -network=1 -ip=148.87.58.196 -vipname=appsVIP -user=root

スクリプトには、ネットワーク番号(デフォルトは1)、IPアドレス、VIPリソースの名前およびアプリケーションVIPリソースを所有するユーザーのみが必要です。VIP関連の操作にはroot権限が必要であるため、通常、VIPリソースはrootが所有します。

アプリケーションVIPを削除するには、deleteオプションで同じスクリプトを使用します。このオプションはVIPの名前をパラメータとして受け入れます。次に例を示します。

# Grid_home/bin/appvipcfg delete -vipname=appsVIP

この構成スクリプトを使用してアプリケーションVIPを作成したら、次のコマンドを使用してVIPプロファイルを表示できます。

Grid_home/bin/crsctl status res appsVIP -p

Grid_home/bin/crsctl modify resコマンドを使用して次のパラメータの検証と、必要に応じて変更を行います。

関連項目:
CRSCTLコマンドの使用の詳細は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

appvipcfgスクリプトでは、デフォルトのora.vipネットワーク・リソース(ora.net1.network)がデフォルトとして使用されると想定されます。また、デフォルトのapp.appvip_net1.typeもそのために使用されると想定されます。

Oracle Databaseインストール所有者として、VIPリソースを起動します。

$ crsctl start resource appsVIP

Oracle Enterprise ManagerによるアプリケーションVIPの追加

Oracle Enterprise Managerを使用してアプリケーションVIPを追加するには、次の手順を実行します。

1. Oracle Enterprise Manager Database Controlにログインします。

2. 「クラスタ」タブをクリックします。

3. 「管理」をクリックします。

4. 「リソースの管理」をクリックします。

5. クラスタ管理者のユーザー名およびパスワードを入力して、「リソースの管理」ページを表示します。

6. 「アプリケーションVIPの追加」をクリックします。

7. 「名前」フィールドにVIPの名前を入力します。

8. 「ネットワーク番号」フィールドにネットワークの番号を入力します。

9. 「インターネット・プロトコル・アドレス」フィールドにVIPのIPアドレスを入力します。

10. 「プライマリ・ユーザー」フィールドにrootと入力します。Oracle Enterprise Managerは、ログイン時に使用するユーザー名をデフォルト値とします。

11. VIPをすぐに起動する場合は、「作成後にリソースを開始」を選択します。

12. 「続行」をクリックして「確認: VIPリソースの追加」ページを表示します。

13. クラスタの資格証明としてrootおよびルート・パスワードを入力します。

14. 「続行」をクリックしてアプリケーションVIPを作成します。

ユーザー定義のリソースの追加

Oracle Clusterwareにはいつでもリソースを追加できます。ただし、別のリソースに依存しているリソースを追加する場合は、最初にそのリソースが依存しているリソースを追加します。

この項の例では、クラスタへのリソースの追加を簡単にするために、アクション・スクリプトmyApache.scrが各ノードの/opt/cluster/scriptsディレクトリに存在していると想定しています。また、アプリケーションをホスティングするためにサーバー・プールが作成されたと想定しています。このサーバー・プールは汎用のサブプールではありませんが、かわりに、最上位のサーバー・プールでアプリケーションをホスティングするために使用されます。

関連項目:
アクション・スクリプトの例については、「サード・パーティ製アプリケーションのアクション・スクリプトの例」を参照してください。

注意:
スクリプトのメンテナンスを軽減するために、Oracle Automatic Storage Management Cluster File System (Oracle ACFS)などの共有ストレージを使用してアクション・スクリプトを格納することをお薦めします。

この項には次のトピックが含まれます:

- デプロイメント・スキームの決定

- 特定のサーバー・プールへのリソースの追加

- サーバー固有のデプロイメントを使用したリソースの追加

デプロイメント・スキームの決定

アプリケーションの管理者またはポリシー管理を使用するかどうかを決定する必要があります。管理者管理は、クラスタ構成が変更される可能性が低い、小規模な2ノード構成に使用します。ポリシー管理は、クラスタが3つ以上のノードで構成されている場合に、より動的な構成に使用します。たとえば、リソースがノード1およびノード2のみで実行されている場合、これらのノードにのみ必要なファイルが存在するため、管理者管理がより適切である可能性があります。

Oracle Clusterwareでは、匿名サーバーで構成され、必要なプール・サイズに厳密に基づく、アクセス制御されたサーバー・プールでのアプリケーションのデプロイメントがサポートされています。この場合、管理者定義のクラスタ・ポリシーを使用して、必要なサイズおよび重要度のレベルで、サーバー割当てを制御する必要があります。または、厳密なサーバー割当てまたは優先サーバー割当てを使用することもでき、この場合、リソースは具体的な名前が指定されたサーバーで実行されます。これは、以前のリリースのOracle Clusterwareで使用可能な既存のモデル(現在の管理者管理)を表します。

概念上、両方のデプロイメント・スキームで開発およびデプロイされたアプリケーションをホスティングするクラスタは、サーバーの、論理的に分割された2つのグループと考えることができます。一方のサーバー・グループはサーバー・プールに使用され、ロールの分離およびサーバーの容量制御が可能になります。もう一方のサーバー・グループでは、クラスタ内の名前付きのサーバーに基づく固定割当てが想定されます。

いずれかのデプロイメント・スキームを使用してアプリケーションを管理するには、クラスタにリソースを追加する前にサーバー・プールを作成する必要があります。Genericという名前の組込みサーバー・プールは、管理者ベース管理のアプリケーションによって使用されるサーバーを常に所有します。汎用サーバー・プールは論理的な分割で、異なる管理スキームを使用してクラスタの2つの部分を分割するために使用できます。

サード・パーティの開発者がこのモデルを使用してアプリケーションをデプロイするには、サーバー・プールを使用する必要があります。名前付きのサーバーに基づく、既存のアプリケーション開発およびデプロイメント・モデルを利用するには、汎用サブプール(汎用プールが親であるサーバー・プールで、サーバー・プール属性のPARENT_POOLSで定義される)を使用する必要があります。親として汎用を使用するサブプールを作成し、サーバーをサブプール定義に名前で列挙することによって、名前付きのサーバーが、汎用内に存在すること、および名前付きのサーバー・モデルを使用するアプリケーション専用に使用されることがアプリケーションで保証されます。

特定のサーバー・プールへのリソースの追加

ポリシー・ベースのデプロイメント・スキームを使用して、特定のサーバー・プールにApache Webサーバーをリソースとして追加するには、Apacheサーバーを実行するユーザーとして次のコマンドを実行します。Apacheサーバーの場合、これは通常、rootユーザーです。

$ crsctl add resource myApache -type cluster_resource
-attr "ACTION_SCRIPT=/opt/cluster/scripts/myapache.scr, PLACEMENT=restricted,
SERVER_POOLS=server_pool_list,CHECK_INTERVAL=30,RESTART_ATTEMPTS=2,
START_DEPENDENCIES=hard(appsvip),STOP_DEPENDENCIES=hard(appsvip)"

関連項目:
「サード・パーティ製アプリケーションのアクション・スクリプトの例」

前述の例では、クラスタに追加されるリソースの名前はmyApacheです。

注意:
リソース名の先頭をピリオドまたはoraという文字列にすることはできません。

属性値は一重引用符('')で囲むことに注意してください。リソースを次のように構成します。

- このリソースはcluster_resourceタイプです。

- ACTION_SCRIPT=/opt/cluster/scripts/myapache.scr: 必要なアクション・スクリプトへのパスです。

- PLACEMENT=restricted

関連項目:
PLACEMENTリソース属性の詳細は、「アプリケーションの配置ポリシー」を参照してください。

- SERVER_POOLS=server_pool_list: このリソースは、空白区切りリストで指定されているサーバー・プールでのみ実行できます。

- CHECK_INTERVAL=30: Oracle Clusterwareによって、リソースのステータスの確認のために30秒ごとにリソースがチェックされます。

- RESTART_ATTEMPTS=2: Oracle Clusterwareによって、リソースが別のノードにフェイルオーバーされる前に、リソースの再起動が2回試行されます。

- START_DEPENDENCIES=hard(appsvip): このリソースには、appsvipリソースに対するhard起動依存性が定義されています。myApacheを起動するには、appsvipリソースがオンライン状態である必要があります。

- STOP_DEPENDENCIES=hard(appsvip): このリソースには、appsvipリソースに対するhard停止依存性が定義されています。appsvipリソースがオフラインになると、myApacheリソースは停止します。

サーバー固有のデプロイメントを使用したリソースの追加

名前付きのサーバー・デプロイメントを使用するリソースとしてApache Webサーバーを追加する場合、定義上、汎用サーバー・プールのサブプールであるサーバー・プールにリソースが追加されるとみなされます。汎用サブプールを表すサーバー・プールはcrsctl add serverpoolコマンドを使用して作成されます。これらのサーバー・プールでは、汎用サーバー・プールはPARENT_POOLSサーバー・プール属性で親として定義されます。また、SERVER_NAMESパラメータにはサーバー名のリストが含められ、それぞれのプールに割り当てる必要があるサーバーが指定されます。次に例を示します。

$ crsctl add serverpool myApache_sp -attr "PARENT_POOLS=Generic, SERVER_NAMES=host36 host37"

このサブプールが作成されると、前述の例のようにリソースを追加できます。

$ crsctl add resource myApache -type cluster_resource
-attr "ACTION_SCRIPT=/opt/cluster/scripts/myapache.scr, PLACEMENT='restricted',
SERVER_POOLS=myApache_sp, CHECK_INTERVAL='30', RESTART_ATTEMPTS='2',
START_DEPENDENCIES='hard(appsvip)', STOP_DEPENDENCIES='hard(appsvip)'"

注意:
リソース名の先頭をピリオドまたはoraという文字列にすることはできません。

また、サーバー固有のデプロイメントを使用してリソースを追加する場合、SERVER_POOLSリソース・パラメータにリストされたサーバー・プールは、汎用サーバー・プールの下位プールである必要があることに注意してください。

関連項目:
「ポリシー・ベースのクラスタおよび容量の管理」

Oracle Enterprise Managerを使用したリソースの追加

Oracle Enterprise Managerを使用してOracle Clusterwareにリソースを追加するには、次の手順を実行します。

1. Oracle Enterprise Manager Database Controlにログインします。

2. 「クラスタ」タブをクリックします。

3. 「管理」をクリックします。

4. 「リソースの追加」をクリックします。

5. クラスタ管理者のユーザー名およびパスワードを入力して、「リソースの追加」ページを表示します。

6. 「名前」フィールドにリソースの名前を入力します。

注意:
リソース名の先頭をピリオドまたはoraという文字列にすることはできません。

7. 「リソース・タイプ」ドロップダウン・リストからcluster_resourceまたはlocal_resourceのいずれかを選択します。

8. 必要に応じて、「説明」フィールドにリソースの説明を入力します。

9. リソースをすぐに起動する場合は、「作成後にリソースを開始」を選択します。

10. 「配置」セクションのオプションのパラメータは、Oracle Clusterwareによってリソースが配置されるクラスタ内の場所を定義します。

関連項目:
配置の詳細は、「アプリケーションの配置ポリシー」を参照してください。

この項の属性は、付録B「Oracle Clusterwareのリソース・リファレンス」で説明されている属性に対応しています。

11. 「アクション・プログラム」セクションの「アクション・プログラム」ドロップダウン・リストから、リソースを管理するためにOracle Clusterwareでアクション・スクリプトをコールするか、エージェント・ファイルをコールするか、またはその両方をコールするかを選択します。
また、ドロップダウン・リストでの選択に応じて、スクリプト、ファイルまたはその両方へのパスを指定する必要があります。

「アクション・スクリプト」を選択した場合、「新規アクション・スクリプトの作成」をクリックし、Oracle Enterprise Managerアクション・スクリプト・テンプレートを使用してリソース用のアクション・スクリプトを作成することができます(作成済でない場合)。

12. これ以上のリソースの構成を行うには、「属性」をクリックします。このページでは、開始属性、停止属性、ステータス属性、オフライン監視および定義した属性を構成できます。

13. 「拡張設定」をクリックし、より詳細なリソース属性の構成を有効にします。

14. 「依存性」をクリックして、リソース間の起動および停止の依存性を構成します。

関連項目:
依存性の詳細は、「リソース依存性」を参照してください。

15. リソースの構成が終了したら、「発行」をクリックします。

リソース権限の変更

Oracle Clusterwareでは、リソースを追加したユーザーの権限に基づいてリソースが管理されます。最初にリソースを追加したユーザーがリソースを所有し、リソースはリソースの所有者として実行されます。特定のリソースはrootとして管理する必要があります。root以外のユーザーが、rootとして実行する必要があるリソースを追加する場合は、次のように、rootがリソースを管理するように権限をrootとして変更する必要があります。

1. rootとして次のコマンドを実行して、指定したリソースの権限をrootに変更します。

# crsctl setperm resource resource_name –o root

2. Oracle ClusterwareをインストールしたユーザーとしてOracle Databaseインストール所有者(次の例ではoracle)を有効にして、次のスクリプトを実行します。

$ crsctl setperm resource resource_name –u user:oracle:r-x

3. リソースを起動するには、次のスクリプトを実行します。

$ crsctl start resource resource_name

アプリケーションの配置ポリシー

リソースは、配置ポリシー、リソース起動依存性およびサーバーでのアクション・スクリプトの可用性に従って、任意のサーバーで実行できます。

PLACEMENTリソース属性を使用して、リソースを起動するサーバーをOracle Clusterwareで選択する方法、およびサーバーの障害発生後にリソースを再配置する場所を指定します。HOSTING_MEMBERSおよびSERVER_POOLS属性を使用してリソースのホスティングに適切なサーバーを指定し、PLACEMENT属性を使用してリソースの配置をさらに調整します。

関連項目:
HOSTING_MEMBERSおよびSERVER_POOLSリソース属性の詳細は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

PLACEMENTリソース属性の値を使用して、クラスタへのリソース追加時またはサーバーの障害発生時にOracle Clusterwareでリソースを配置する方法を指定します。HOSTING_MEMBERSまたはSERVER_POOLS属性のいずれかとともに使用すると、Oracle Clusterwareでクラスタにリソースを配置する方法を構成できます。PLACEMENT属性の値は次のとおりです。

- balanced: Oracle Clusterwareによって、配置に任意のオンライン・サーバーが使用されます。負荷が低いサーバーは負荷が大きいサーバーより優先されます。サーバーの負荷を測定する場合、Oracle Clusterwareでは、そのサーバーでONLINE状態になっているリソースのLOADリソース属性が使用されます。現行のサーバー負荷を測定する場合、Oracle Clusterwareでは、LOADの合計値が使用されます。

- favored: 値がSERVER_POOLSまたはHOSTING_MEMBERSリソース属性のいずれかに割り当てられている場合、いずれかの属性のメンバー・リストに属しているサーバーがOracle Clusterwareで最初に考慮されます。サーバーを使用できない場合、リソースは、Oracle Clusterwareによってその他の使用可能なサーバーに配置されます。SERVER_POOLSとHOSTING_MEMBERSの両方の属性に値がある場合、SERVER_POOLSは、HOSTING_MEMBERSの値によって示される優先順位内のサーバーに選択肢を制限します。

- restricted: Oracle Clusterwareでは、SEVER_POOLSリソース属性に示されているサーバー・プールに属しているサーバー、またはHOSTING_MEMBERSリソース属性に示されているサーバーのみがリソースの配置の対象として考慮されます。値を指定できるのは、これらのリソース属性のいずれか1つにのみであり、そうしないとエラーが発生します。

関連項目:
詳細は、「SERVER_POOLS」を参照してください。

アプリケーションおよびアプリケーション・リソースの登録解除

リソースを登録解除するには、crsctl delete resourceコマンドを使用します。アプリケーションまたはリソースがONLINEであるか、または別のリソースで必要とされている場合は、-forceオプションを使用しないかぎり、そのアプリケーションまたはリソースを登録解除することはできません。次の例では、Apache Webサーバー・アプリケーションを登録解除します。

$ crsctl delete resource myApache

Oracle Clusterwareでリソースが管理されない場合は、クリーンアップ手順としてcrsctl delete resourceコマンドを実行します。不要なリソースは登録解除することをお薦めします。

リソースの管理

この項には次のトピックが含まれます:

- アプリケーション・リソースの登録

- アプリケーション・リソースの起動

- アプリケーションおよびアプリケーション・リソースの再配置

- アプリケーションおよびアプリケーション・リソースの停止

- クラスタウェア・アプリケーションおよびアプリケーション・リソースのステータス情報の表示

アプリケーション・リソースの登録

Oracle Clusterwareで管理する各アプリケーションはリソースとしてOCRに格納されます。crsctl add resourceコマンドを使用して、アプリケーションをOCRに登録します。たとえば、前述の例のApache Webサーバー・アプリケーションを登録するには次のコマンドを入力します。

$ crsctl add resource myApache -type cluster_resource
-attr "ACTION_SCRIPT=/opt/cluster/scripts/myapache.scr, PLACEMENT=restricted,
SERVER_POOLS=server_pool_list,CHECK_INTERVAL=30,RESTART_ATTEMPTS=2,
START_DEPENDENCIES=hard(appsvip),STOP_DEPENDENCIES=hard(appsvip)"

リソースを変更した場合は、crsctl modify resourceコマンドを実行してOCRを更新します。

アプリケーション・リソースの起動

crsctl start resourceおよびcrsctl stop resourceコマンドを使用して、リソースを起動および停止します。Oracle Clusterwareの外部でリソースを手動で起動または停止すると、リソースのステータスを無効にできます。また、Oracle Clusterwareによって、手動で停止操作を実行したリソースの再起動が試行される場合もあります。

Oracle Clusterwareに登録されているアプリケーション・リソースを起動するには、crsctl start resourceコマンドを使用します。次に例を示します。

$ crsctl start resource myApache

関連項目:
CRSCTLコマンド出力の使用方法と例は、付録E「CRSCTLユーティリティのリファレンス」を参照してください。

このコマンドは、アクション・プログラムがコールされるたびにそのアクション・プログラムから成功または失敗の通知を受け取るために待機します。Oracle Clusterwareでは、障害しきい値を超えたために停止したアプリケーション・リソースを起動できます。起動する前に、crsctl add resourceを使用してリソースを登録する必要があります。

crsctl start resourceコマンドをリソースで実行すると、リソースのTARGET値がONLINEに設定されます。Oracle Clusterwareは、startアクションを指定してアクション・プログラムを実行し、TARGETと一致するように状態の変更を試行します。

クラスタ・サーバーでリソースを起動中にそのサーバーで障害が発生した場合、crsctl status resourceコマンドを使用して、クラスタ上のリソースの状態をチェックします。

アプリケーションおよびアプリケーション・リソースの再配置

crsctl relocate resourceコマンドを使用して、アプリケーションおよびアプリケーション・リソースを再配置します。たとえば、rac2というサーバーにApache Webサーバー・アプリケーションを再配置するには、次のコマンドを実行します。

# crsctl relocate resource myApache -n rac2

アクション・プログラムがコールされるたびに、crsctl relocate resourceコマンドがSCRIPT_TIMEOUTリソース属性の値に指定された期間待機して、アクション・プログラムから成功または失敗の通知を受け取ります。再配置の試行は、次の場合に失敗します。

- アプリケーションに、初期サーバー上で実行される必須リソースが存在する。

- 指定したリソースが必要なアプリケーションが、初期サーバー上で実行される。

アプリケーションおよびその必須リソースを再配置するには、crsctl relocate resourceコマンドで-fオプションを使用します。Oracle Clusterwareは、状態に関係なく、アプリケーションに必要なすべてのリソースを再配置または起動します。

アプリケーションおよびアプリケーション・リソースの停止

crsctl stop resourceコマンドを使用してアプリケーション・リソースを停止します。コマンドによってリソースのTARGET値はOFFLINEに設定されます。Oracle Clusterwareは、常にリソースの状態をターゲットの状態に一致させようとするため、Oracle Clusterwareのサブシステムによって、アプリケーションが停止されます。次の例では、Apache Webサーバーを停止します。

# crsctl stop resource myApache

このリソースに対するhard停止依存性が別のリソースに定義されている場合、強制(-f)オプションを使用しないかぎり、このリソースを停止することはできません。他のリソースが依存しているリソース上でcrsctl stop resource resource_name -fコマンドを使用し、それらの依存リソースが実行されている場合は、停止するリソースに依存するリソースがOracle Clusterwareによって停止されます。

クラスタウェア・アプリケーションおよびアプリケーション・リソースのステータス情報の表示

クラスタ・サーバー上のアプリケーションおよびリソースのステータス情報を表示するには、crsctl status resourceコマンドを使用します。次の例では、Apache Webサーバー・アプリケーションのステータス情報を表示します。

# crsctl status resource myApache

NAME=myApache
TYPE=cluster_resource
TARGET=ONLINE
STATE=ONLINE on server010

このコマンドは、他にも次の情報を返します。

- リソースが再起動された回数

- 障害間隔内にリソースで障害が発生した回数

- リソースの再起動可能回数または障害発生許容回数の最大数

- リソースのターゲット状態および通常のステータスの情報

特定のリソースの詳細を表示するには、crsctl status resource resource_nameコマンドで-fオプションを使用します。

次のコマンドを入力して、すべてのアプリケーションおよびリソースの情報を表形式で表示します。

# crsctl status resource

関連項目:
CRSCTLコマンドの詳細は、付録E「CRSCTLユーティリティのリファレンス」を参照してください。

Oracle Clusterwareによるリソースの自動再起動の管理

いくつかのリソース属性を設定することによって、Oracle Clusterwareが自動的にリソースを再起動しないようにできます。また、Oracle Clusterwareによるリソースの再起動カウンタの管理を制御することもできます。さらに、Oracle Clusterwareがリソースで実行するstart、stopおよびcheckアクションのタイムアウト値をカスタマイズすることもできます。

この項には次のトピックが含まれます:

- 自動再起動の防止

- リソースの再起動試行カウンタの自動管理

自動再起動の防止

サーバーを再起動すると、Oracle Clusterwareによって、サーバーの起動直後に実行されるリソースの起動が試行されます。ただし、リソースが依存するシステム・コンポーネント(ボリューム・マネージャ、ファイル・システムなど)が実行されていない場合は、リソースの起動が失敗する可能性があります。これは特に、リソースが依存するシステム・コンポーネントをOracle Clusterwareが管理しない場合に該当します。自動再起動を管理するには、AUTO_STARTリソース属性を使用して、サーバーの再起動時にOracle Clusterwareによって自動的にリソースが起動されるかどうかを指定します。

注意:
リソースのAUTO_STARTリソース属性の値にかかわらず、起動対象のリソースに対するhard起動依存性またはweak起動依存性が別のリソースに定義されている場合、または別のリソースに対するpullup起動依存性が起動対象のリソースに定義されている場合は、そのリソースを起動できます。

関連項目:

- 詳細は、「起動依存性」を参照してください。

- AUTO_STARTリソース属性の詳細は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

リソースの再起動試行カウンタの自動管理

リソースで障害が発生すると、リソースで障害が発生した回数に関係なく、RESTART_ATTEMPTSリソース属性に指定された回数だけOracle Clusterwareによってリソースの再起動が試行されます。crsdプロセスは、内部カウンタを保持して、リソースがOracle Clusterwareによって再起動される回数を追跡します。Oracle Clusterwareがリソースの再起動を試行した回数はRESTART_COUNTリソース属性に反映されます。Oracle Clusterwareでは、リソースの安定性に基づいて再起動試行カウンタが自動的に管理されます。UPTIME_THRESHOLDリソース属性は、リソースがオンラインである必要がある時間を決定し、その時間が経過すると、RESTART_COUNT属性は0にリセットされます。また、RESTART_COUNTリソース属性は、リソースがユーザーによって再配置または再起動された場合、あるいはリソースが別のサーバーにフェイルオーバーした場合にも、0にリセットされます。

A クラスタ検証ユーティリティのリファレンス

クラスタ検証ユーティリティ(CVU)は、インストール、パッチ更新、またはその他のシステム変更を行う前に、システム・チェックを実行します。CVUを使用すると、必要なシステム構成やインストール前の手順を確実に行えるようになり、Oracle Grid InfrastructureやOracle Real Application Clusters(Oracle RAC)のインストール、更新またはパッチ操作を正常に完了できます。

Oracle Clusterware 11gリリース2(11.2)では、Oracle Universal InstallerがCVUと完全に統合され、多くのCVU前提条件チェックが自動化されています。Oracle Universal Installerを実行すると、すべての前提条件チェックとこれに関連付けられたfixupスクリプトが実行されます。

関連項目:

- CVUを管理するサーバー制御ユーティリティ(SRVCTL)の使用の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

- CVUを手動でインストールする方法については、『Oracle Grid Infrastructureインストレーション・ガイド』および『Oracle Real Application Clustersインストレーション・ガイド』を参照してください。

注意:
次のOracle Technology Networkを確認して、CVUの最新バージョンをダウンロードしてください。
http://www.oracle.com/technology/index.html

この付録では、CVUについて説明します。内容は次のとおりです。

- クラスタ検証ユーティリティについて

- 概要

- 使用上の注意

- 特別な項目

- クラスタ検証ユーティリティのコマンド・リファレンス

- CVUのトラブルシューティングおよび診断出力

クラスタ検証ユーティリティについて

この項では、CVUの使用に関連する項目について説明します。

- 概要

- 使用上の注意

- 特別な項目

概要

CVUは、操作のフェーズまたはステージで主なクラスタ・コンポーネントを検証できます。コンポーネントは、ディスクの空き領域などの基本的なコンポーネントの場合と、Oracle Clusterwareの整合性チェックなどの複雑なコンポーネントの場合があります。たとえば、CVUは、Oracle Clusterwareレイヤー全体の複数のOracle Clusterwareサブコンポーネントを検証できます。また、CVUは、ディスク領域、メモリー、プロセスおよびその他の重要なクラスタ・コンポーネントをチェックできます。ステージにはデータベースのインストールなどがあり、CVUはこれらのステージで、システムがOracle Real Application Clusters(Oracle RAC)のインストールのための基準を満たしているかどうかを検証できます。その他のステージには、完全に稼働しているクラスタ設定を使用したハードウェアの初期設定やシステム要件の設定などが含まれます。

表A-1に、CVUで実行できる検証を示します。

表A-1 CVUの様々な検証の実行

実行する検証

使用するCVUのコマンド

システム要件の検証

cluvfy comp sys

Oracle ACFSの検証

cluvfy stage [-pre | -post] cfs

記憶域の検証

- cluvfy comp cfs

- cluvfy comp space

- cluvfy comp ssa

- cluvfy stage [-pre | -post] acfscfg

ネットワークの検証

cluvfy stage -post hwos

接続性の検証

- cluvfy comp nodecon

- cluvfy comp nodereach

クラスタ時刻同期化サービスの検証

cluvfy comp clocksync

ユーザーおよび権限の検証

cluvfy comp admprv

ノードの比較および検証

cluvfy comp peer

インストールの検証

- cluvfy stage -pre dbcfg

- cluvfy stage -pre dbinst

- cluvfy stage [-pre | -post] crsinst

- cluvfy stage [-pre | -post] hacfg

- cluvfy stage [-pre | -post] nodeadd

削除の検証

cluvfy stage -post nodedel

クラスタの整合性の検証

cluvfy comp clu

Oracle ClusterwareおよびOracle ASMコンポーネントの検証

- cluvfy comp acfs

- cluvfy comp asm

- cluvfy comp clumgr

- cluvfy comp crs

- cluvfy comp dhcp

- cluvfy comp dns

- cluvfy comp gns

- cluvfy comp gpnp

- cluvfy comp ha

- cluvfy comp nodeapp

- cluvfy comp ocr

- cluvfy comp ohasd

- cluvfy comp olr

- cluvfy comp scan

- cluvfy comp software

- cluvfy comp vdisk

使用上の注意

この項には次のトピックが含まれます:

- インストール要件

- 使用方法

- CVUの構成ファイル

- 権限およびセキュリティ

- CVUヘルプの使用

インストール要件

CVUのインストール要件を次に示します。

- CVUを実行するノード上には、CVUソフトウェア用に30MB以上の空き領域が必要です。

- 各ノード上に、空き領域が25MB以上の作業ディレクトリが必要です。作業ディレクトリのデフォルトの場所は、LinuxおよびUNIXシステムの場合は/tmpで、Windowsシステムの場合はTEMP環境変数に指定されている値の場所です。CV_DESTLOC環境変数を設定すると、別の場所を指定できます。
CVUを使用する際、ユーティリティは、必要な情報をCVUの作業ディレクトリにコピーしようとします。各ノードでの作業ディレクトリの存在が確認されます。見つからない場合は、作成が試行されます。クラスタ内のすべてのノード上にCVUの作業ディレクトリが存在するか、またはCVUを実行しているユーザーに対して各ノード上にディレクトリを作成するための適切な権限が付与されているかを確認します。

- ローカル・ノード上のJava 1.4.1。

使用方法

CVUには、Oracleソフトウェアをインストールする前に使用するruncluvfy.sh(Windowsではruncluvfy.bat)と、cluvfy(Windowsではcluvfy.bat)の2つのスクリプトが含まれており、これらはGrid_home/binディレクトリに格納されています。runcluvfy.shスクリプトには一時変数の定義が含まれており、これによって、Oracle Grid InfrastructureまたはOracle Databaseをインストールする前の実行が可能になります。Oracle Grid Infrastructureのインストール後には、cluvfyコマンドを使用して前提条件をチェックし、その他のシステム準備状態チェックを実行します。

注意:
Oracle Universal Installerは、Oracleソフトウェアのインストール時に、cluvfyを実行してすべての前提条件をチェックします。

Oracleソフトウェアをインストールする前に、次のようにソフトウェア・インストール・メディアのマウントポイント・パスからruncluvfy.shを実行してください。

cd /mountpoint
./runcluvfy.sh options

前述の例で、options変数は選択したCVUコマンド・オプションを表します。次に例を示します。

$ cd /mnt/dvdrom
$ ./runcluvfy.sh comp nodereach -n node1,node2 -verbose

CVUコマンドを入力すると、テストのサマリーが表示されます。インストール前には、CVUコマンドに-verbose引数を使用して詳細な出力を取得することをお薦めします。-verbose引数を指定すると、個々のチェックの詳細な出力が生成されます。適用可能な場合は、各ノードの結果が表レイアウトで表示されます。

cluvfyコマンドを使用して、CVUコマンドライン・ツールを実行します。cluvfyを使用しても、クラスタ環境またはインストールされたソフトウェアに悪影響を及ぼすことはありません。cluvfyコマンドは、Oracle Clusterwareのインストール前を含む任意のタイミングで実行できます。実際には、CVUは、ハードウェアおよびオペレーティング・システムが稼働するとすぐに使用できるように設計されています。ノード上のOracle Clusterwareを必要とするコマンドを実行したときにそのノード上にOracle Clusterwareがまだインストールされていない場合には、CVUはエラーをレポートします。

CVUコマンドとともに使用するノード・リストは、ドメインを含まないホスト名のカンマ区切りのリストである必要があります。CVUがノード・リストを処理する際にはドメインは無視されます。ドメイン情報を削除した後、CVUのコマンド・エントリに重複するノード・エントリがある場合には、CVUは重複するノード・エントリを削除します。サポートされている場合、-n allオプションを使用して、特定のOracle RACのインストール環境に含まれるすべてのクラスタ・ノードを検証できます。

ネットワーク接続の検証では、CVUコマンドラインでインタフェースを指定しない場合、CVUによって、すべての使用可能なネットワーク・インタフェースが検出されます。記憶域のアクセス性の検証では、コマンドラインで特定の記憶域のIDを指定しない場合、CVUはサポートされるすべての記憶域タイプの共有記憶域を検出します。使用可能な場合、Oracle ClusterwareのホームもCVUにより検出されます。

CVUの構成ファイル

CVUの構成ファイルを使用して、CVUの実行のための特定の入力を定義できます。構成ファイルのパスは、Grid_home/cv/admin/cvu_config(Windowsプラットフォームの場合はStaging_area\clusterware\stage\cvu\cv\admin)です。このファイルをテキスト・エディタを使用して変更できます。CVUへの入力は、キー・エントリの形式で定義されています。CVUの構成ファイルを変更する場合、次の規則に従う必要があります。

- キー・エントリの構文はname=valueです。

- 各キー・エントリおよびキーに割り当てられた値は、1つのみのプロパティを定義します。

- シャープ記号(#)で始まる行はコメント行であり、無視されます。

- name=valueという構文に従っていない行は無視されます。

CVUによってサポートされるキーのリストを次に示します。

- CV_NODE_ALL: 設定すると、Oracle Clusterwareがインストールされておらずコマンドラインで-n allオプションが使用された場合に選択する必要があるノードのリストが指定されます。デフォルトでは、このエントリはコメント・アウトされています。

- CV_ORACLE_RELEASE: 検証を実行する必要がある特定のOracleリリース(10gR1、10gR2、11gR1または11gR2)を指定します。これを設定すると、-r releaseオプションが適用される場合であっても、このオプションを使用する必要がなくなります。デフォルト値は11gR2です。

- CV_RAW_CHECK_ENABLED: TRUEに設定すると、LinuxおよびUnixシステム上の共有ディスクのアクセス性チェックが有効になります。この共有ディスクのアクセス性チェックには、すべてのノード上にcvuqdisk RPMパッケージ・マネージャ(rpm)がインストールされていることが必要です。デフォルトでは、このキーはTRUEに設定されており、共有ディスクのチェックが有効になっています。

- CV_ASSUME_DISTID: このプロパティは、CVUが特定のプラットフォームまたは配布を検出またはサポートできない場合に使用されます。CVUが無効になる可能性があるため、このプロパティを変更することはお薦めしません。

- CV_XCHK_FOR_SSH_ENABLED: TRUEに設定すると、sshを使用してユーザー等価関係を検証するためのX-Windowsチェックが有効になります。デフォルトでは、このエントリはコメント・アウトされており、X-Windowsチェックは無効になっています。

- ORACLE_SRVM_REMOTECOPY: 設定すると、scpまたはrcpコマンドの位置を指定してCVUのデフォルト値が上書きされます。デフォルトでは、このエントリはコメント・アウトされており、CVUは/usr/bin/scpおよび/usr/sbin/rcpを使用します。

- ORACLE_SRVM_REMOTESHELL: 設定すると、ssh/rshコマンドの位置を指定してCVUのデフォルト値が上書きされます。デフォルトでは、このエントリはコメント・アウトされており、ツールは/usr/sbin/sshおよび/usr/sbin/rshを使用します。

- CV_ASSUME_CL_VERSION: デフォルトで、コマンドライン解析機能は、コマンドライン構文の使用方法の表示および構文の検証にcrs activeversionを使用します。このプロパティを使用して、コマンドライン構文の表示および検証用にcrs activeversion以外のバージョンを渡します。デフォルトでは、このエントリはコメント・アウトされています。

CVUは構成ファイルに定義されたキー・エントリを検出できない場合、CVUはキーの名前に一致する環境変数を検索します。環境変数が設定されている場合、CVUはその値を使用し、環境変数が設定されていない場合、CVUはこのエンティティのデフォルト値を使用します。

権限およびセキュリティ

CVUでは、現行のユーザーがインストールされたOracleソフトウェアを所有しているユーザー(oracleなど)であると想定されます。CVUコマンドのほとんどは、rootユーザーである必要はありません。

CVUヘルプの使用

cluvfyコマンドには、入力されたコマンドライン引数に基づいて使用方法を表示する状況依存ヘルプがあります。たとえば、cluvfyと入力すると、ステージおよびコンポーネントの構文について説明する、一般的な使用方法を示す高水準のテキストがCVUにより表示されます。状況依存ヘルプのコマンドのリストを次に示します。

- cluvfy -help: CVUは、CVUコマンドの詳細情報を表示します。

- cluvfy -version: CVUは、Oracle Clusterwareのバージョンを表示します。

- cluvfy comp -list: CVUは、チェック可能なコンポーネントのリストと、ユーティリティが各コンポーネントをチェックする方法についての簡単な説明を表示します。

- cluvfy comp -help: CVUは、それぞれの有効なコンポーネントをチェックするための詳細な構文を表示します。

- cluvfy stage -list: CVUは、有効なステージのリストを表示します。

- cluvfy stage -help: CVUは、それぞれの有効なステージをチェックするための詳細な構文を表示します。

また、任意のCVUコマンドに-helpオプションを使用することもできます。たとえば、cluvfy stage -pre nodeadd -helpを実行すると、この特定のコマンドに関する詳細情報が戻されます。

無効なCVUコマンドを入力すると、CVUによって、そのコマンドの正しい使用方法が表示されます。たとえば、cluvfy stage -pre dbinstと入力すると、dbinstステージの事前チェック・コマンドの正しい構文がCVUにより表示されます。CVUコマンドの詳細を表示するには、cluvfy -helpと入力します。

特別な項目

この項には次のトピックが含まれます:

- 修正スクリプトの生成

- CVUを使用した、インストールの前提条件を満たしているかどうかの確認

- Oracle Database 10gリリース1または2でのCVUの使用

- 開始基準および終了基準

- 冗長モードおよびUNKNOWN出力

- CVUのノード・リストのショートカット

修正スクリプトの生成

特定のCVUコマンドで-fixupフラグを指定すると、インストール前にfixupスクリプトを生成できます。また、Oracle Universal Installerでは、インストール中にfixupスクリプトを生成することもできます。その後、インストーラによって、個々のターミナル・セッションでrootとしてスクリプトを実行するように要求されます。fixupスクリプトをコマンドラインから生成した場合は、生成したスクリプトをrootとして実行できます。スクリプトを実行すると、カーネルの値が最低限必要な値に引き上げられ、必要に応じて、他のオペレーティング・システムの構成が実行されます。

デフォルトでは、修正スクリプトはLinuxおよびUNIXシステムの/tmpディレクトリ、およびWindowsシステムのTEMP環境変数に指定されている場所に生成されます。修正スクリプトの生成場所として別の場所を指定するには、cluvfy stage -pre crsinstコマンドを使用できます。次に例を示します。

cluvfy stage -pre crsinst -n node1 -fixup -fixupdir /db11202/fixit.sh

CVUを使用した、インストールの前提条件を満たしているかどうかの確認

CVUを使用して、インストールに関するシステムの前提条件が満たされているかどうかを確認できます。既存のOracleソフトウェア・インストールがあるシステムにOracle 11gリリース2(11.2)ソフトウェアをインストールする場合に、このオプションを使用します。このオプションを使用する際には、次の点に注意してください。

- インストールの実行に使用する予定のユーザー・アカウントでCVUを実行する必要があります。CVUはrootでは実行できず、また、インストールを実行するユーザー以外のユーザーでCVUを実行すると、インストールまたはその他の構成チェックに対してユーザーおよびグループの構成の正確さが保証されません。

- クラスタ全体のステータスのチェックを完了するには、その前にすべてのクラスタ・ノードでSSHを構成する必要があります。インストーラを使用してSSHの構成を実行するか、またはユーザー自身がクラスタ内のすべてのノード間でSSHの構成を実行できます。CVUを使用して、SSH接続を構成する修正スクリプトを生成することもできます。

- CVUでは完了しておく必要があるインストール前の手順を検出することができますが、インストール前のタスクは実行できません。

完了しているインストール前の手順、および実行する必要のあるインストール前の手順を確認するには、次の構文を使用します。必要に応じて、-fixupを指定してコマンドを実行し、カーネルの構成タスクを実行するfixupスクリプトを生成します。

$ ./runcluvfy.sh stage -pre crsinst -fixup -n node_list

前述の構文例のnode_list変数には、クラスタ内のノードの名前をカンマで区切って指定します。Windowsの場合、カンマで区切られたノードのリストは二重引用符("")で囲む必要があります。

たとえば、マウントポイントが/mnt/dvdrom/で、ノードがnode1、node2およびnode3のクラスタの場合は、次のようにコマンドを入力します。

$ cd /mnt/dvdrom/
$ ./runcluvfy.sh stage -pre crsinst -fixup -n node1,node2,node3

CVUのレポートを確認して、必要に応じて追加の手順を実行します。

関連項目:
製品のインストールの詳細は、ご使用のプラットフォーム固有のインストレーション・ガイドを参照してください。

Oracle Database 10gリリース1または2でのCVUの使用

Oracle Database 11gリリース2(11.2)メディアのCVUを使用すると、Oracle Database 10gリリース1(10.1)以降のインストールのためのシステム要件をチェックできます。CVUを使用してOracle Clusterwareのインストールをチェックするには、標準のCVUシステム・チェック・コマンドに、コマンド-r release_codeフラグを追加します。

たとえば、メディアのマウントポイントが/mnt/dvdrom/で、クラスタ・ノードがnode1、node2およびnode3であるシステムで、Oracle Clusterwareバージョン10.2のインストール前に検証チェックを実行するには、次のようにコマンドを入力します。

$ cd /mnt/dvdrom
$ ./runcluvfy.sh stage -pre crsinst -n node1,node2,node3 -r 10gR2

注意:
チェックするリリース・バージョンを指定しなかった場合、CVUは、11gリリース2(11.2)の要件についてチェックします。

開始基準および終了基準

ステージを検証する際に、CVUは、開始基準および終了基準を使用します。各ステージに開始基準が設定されており、そのステージを開始する前に実行される特定の検証タスクのセットが定義されています。このチェックを行うと、そのステージのOracle Clusterwareの前提条件を満たさないかぎり、Oracle Clusterwareのインストールなどのステージを開始できません。

ステージの終了基準は、ステージの完了後に実行する必要がある検証タスクの別のセットを定義します。事後チェックによって、ステージのアクティビティが確実に完了します。事後チェックでは、後続のステージに伝播する前にステージ固有の問題が識別されます。

冗長モードおよびUNKNOWN出力

デフォルトでは、CVUによるレポートは非冗長モードでテストのサマリーのみがレポートされますが、-verbose引数を使用すると詳細な出力を取得できます。-verbose引数を指定すると、個別のチェックの詳細な出力が生成され、適用可能な場合には各ノードの結果が表レイアウトで表示されます。

cluvfyコマンドが特定のノードについてUNKNOWNと応答した場合、これは、チェックの合格または失敗をCVUが判別できないためです。この原因は、そのノードに対する到達可能性がないか、またはユーザー等価関係が存在しないことです。また、CVUによるチェックの実行時にそのノード上で発生していたシステムの問題が原因の場合もあります。

UNKNOWNという結果について考えられる原因のリストを次に示します。

- ノードが停止している

- Grid_home/binまたはOracle homeディレクトリにCVUが必要とする実行可能ファイルが存在しない

- CVUを実行したユーザー・アカウントに対して、ノード上の一般的なオペレーティング・システム実行可能ファイルを実行する権限が付与されていない

- オペレーティング・システム・パッチまたは必要なパッケージがノードに適用されていない

- ノードでのプロセス数またはオープン・ファイル数が最大数を超えているか、または共有メモリーやセマフォなどのIPCセグメントに問題がある

CVUのノード・リストのショートカット

CVUにクラスタのすべてのノードのリストを提供するには、-n allと入力します。CVUは、次の順序でノード・リストの取得を試行します。

1. ベンダーのクラスタウェアが使用可能な場合、CVUは、lsnodesユーティリティを使用して、構成されているすべてのノードをベンダーのクラスタウェアから選択します。

2. Oracle Clusterwareがインストールされている場合、CVUは、olsnodesユーティリティを使用して、構成されているすべてのノードをOracle Clusterwareから選択します。

3. ベンダーのクラスタウェアおよびOracle Clusterwareのいずれもインストールされていない場合、CVUは、構成ファイルでCV_NODE_ALLキーの値を検索します。

4. ベンダーのクラスタウェアおよびOracle Clusterwareのいずれもインストールされておらず、構成ファイルにCV_NODE_ALLというキーが存在しない場合、CVUは、環境変数CV_NODE_ALLの値を検索します。この変数が設定されていない場合、CVUはエラーをレポートします。

環境変数を設定してその変数をCVUコマンドに使用すると、部分的なノード・リストを提供できます。たとえば、LinuxまたはUNIXのシステム上で次のように入力できます。

setenv MYNODES node1,node3,node5
cluvfy comp nodecon -n $MYNODES [-verbose]

クラスタ検証ユーティリティのコマンド・リファレンス

この項では、次のCVUコマンドについて説明します。

- cluvfy comp acfs

- cluvfy comp admprv

- cluvfy comp asm

- cluvfy comp cfs

- cluvfy comp clocksync

- cluvfy comp clu

- cluvfy comp clumgr

- cluvfy comp crs

- cluvfy comp dhcp

- cluvfy comp dns

- cluvfy comp freespace

- cluvfy comp gns

- cluvfy comp gpnp

- cluvfy comp ha

- cluvfy comp healthcheck

- cluvfy comp nodeapp

- cluvfy comp nodecon

- cluvfy comp nodereach

- cluvfy comp ocr

- cluvfy comp ohasd

- cluvfy comp olr

- cluvfy comp peer

- cluvfy comp scan

- cluvfy comp software

- cluvfy comp space

- cluvfy comp ssa

- cluvfy comp sys

- cluvfy comp vdisk

- cluvfy stage [-pre | -post] acfscfg

- cluvfy stage [-pre | -post] cfs

- cluvfy stage [-pre | -post] crsinst

- cluvfy stage -pre dbcfg

- cluvfy stage -pre dbinst

- cluvfy stage [-pre | -post] hacfg

- cluvfy stage -post hwos

- cluvfy stage [-pre | -post] nodeadd

- cluvfy stage -post nodedel

cluvfy comp acfs

クラスタ内のすべてのノード上でOracle ASM クラスタ・ファイル・システムの整合性をチェックするには、cluvfy comp acfsコンポーネント検証コマンドを使用します。

構文

cluvfy comp acfs [-n [node_list] | [all]] [-f file_system] [-verbose]

パラメータ

表A-2 cluvfy comp acfsコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-f file_system

チェックするファイル・システムの名前です。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp admprv

Oracle ClusterwareおよびOracle RACソフトウェアのインストール、およびOracle RACデータベースの作成またはOracle RACデータベース構成の変更を行う場合のユーザー・アカウントと管理権限を検証するには、cluvfy comp admprvコマンドを使用します。

構文

cluvfy comp admprv [-n node_list]
{ -o user_equiv [-sshonly] |
-o crs_inst [-orainv orainventory_group] |
-o db_inst [-osdba osdba_group] [-fixup [-fixupdir fixup_dir]] |
-o db_config -d oracle_home [-fixup [-fixupdir fixup_dir]] }
[-verbose]

パラメータ

表A-3 cluvfy comp admprvコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-o user_equiv [-sshonly]

ノード間のユーザー等価関係をチェックします。LinuxおよびUNIXのプラットフォーム上では、このコマンドはまずsshを使用してユーザー等価関係を検証し、sshによるチェックが失敗した場合、次にrshを使用します。

sshのみを使用して等価関係を検証するには、-sshonlyオプションを使用します。

-o crs_inst

Oracle Clusterwareをインストールするための管理権限をチェックします。

-orainv orainventory_group

Oracle Inventoryグループの名前です。このオプションを指定しない場合、CVUは、oinstallをインベントリ・グループとして使用します。

-o db_inst

Oracle RACをインストールするための管理権限をチェックします。

-osdba osdba_group

OSDBAグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

-o db_config

Oracle RACデータベースを作成または構成するための管理権限をチェックします。

-d oracle_home

Oracle softwareをインストールするディレクトリです。

-fixup [-fixupdir fixup_dir]

検証が失敗した場合に、可能であればCVUでfixupの指示を生成することを指定します。CVUでfixupの指示を生成する特定のディレクトリを指定するには、-fixupdirオプションを使用します。ディレクトリを指定しない場合、CVUは、作業ディレクトリを使用します。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- デフォルトでは、等価関係のチェックでは、Xフォワードを無効にしているかどうか、環境変数DISPLAYを適切に設定しているかどうかなど、X-Windows構成の検証は行われません。
ユーザー等価関係のチェックでX-Windowsについて検証するには、cluvfy comp admprv -o user_equivコマンドを実行する前にCV_HOME/cv/admin/cvu_configディレクトリに存在する構成ファイルでCV_XCHK_FOR_SSH_ENABLEDキーをTRUEに設定します。

例

例1: すべてのノードのユーザー等価関係の検証

次のコマンドを実行すると、すべてのノードのユーザー等価関係を検証できます。

cluvfy comp admprv -n all -o user_equiv -verbose

例2: Oracle Clusterwareのインストールに必要な権限の検証

次のコマンドを実行すると、Oracle Clusterwareのインストールに必要な権限が、ノードracnode1およびracnode2で構成されているかどうかを検証できます。

cluvfy comp admprv -n racnode1,racnode2 -o crs_inst -verbose

例3: Oracle RACデータベースの管理権限の検証

次のコマンドを実行すると、C:\app\oracle\product\11.2.0\dbhome_1 Oracleホーム・ディレクトリを使用しているOracle RACデータベースの作成または変更に必要な権限を検証し、その権限を構成するスクリプトを生成できます。

cluvfy comp admprv -n all -o db_config -d C:\app\oracle\product\11.2.0\dbhome_1 -fixup -verbose

cluvfy comp asm

クラスタ内のすべてのノード上でOracle Automatic Storage Management(Oracle ASM)の整合性をチェックするには、cluvfy comp asmコンポーネント検証コマンドを使用します。このチェックでは、指定ノードのASMインスタンスが同じOracleホームから実行されていること、およびasmlibが存在する場合は、これが有効なバージョンであり、所有権を持つことが確認されます。

構文

cluvfy comp asm [-n node_list | all ] [-verbose]

パラメータ

表A-4 cluvfy comp asmコマンドのパラメータ

パラメータ

説明

-n node_list | all

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

例

すべてのノードのOracle ASMの整合性の検証

クラスタのすべてのノードのOracle ASMの整合性を検証するには、次のコマンドを使用します。

cluvfy comp asm –n all

このコマンドを実行すると、次のような出力が生成されます。

Verifying ASM Integrity

Task ASM Integrity check started...

Starting check to see fi ASM is running on all cluster nodes...

ASM Running check passed. ASM is running on all specified nodes

Starting Disk Groups check to see if at least one Disk Group configured...
Disk Group Check passed. At least one Disk Group configured

Task ASM Integrity check passed...

Verification of ASM Integrity was successful.

cluvfy comp cfs

-fオプションで指定するクラスタ化ファイル・システム(Windows用のOCFSまたはOCFS2)の整合性をチェックするには、cluvfy comp cfsコンポーネント検証コマンドを使用します。CVUは、ノード・リスト内のノードのファイル・システムの共有をチェックします。

構文

cluvfy comp cfs [-n node_list] -f file_system [-verbose]

パラメータ

表A-5 cluvfy comp cfsコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-f file_system

ファイル・システムの名前です。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- このチェックは、OCFS2バージョン1.2.1以上でサポートされています。

例

すべてのノードでのクラスタ・ファイル・システムの整合性の検証

すべてのノード上のクラスタ・ファイル・システム/oradbshareの整合性を検証するには、次のコマンドを使用します。

cluvfy comp cfs -f /oradbshare –n all -verbose

cluvfy comp clocksync

ノード・リストのすべてのノード間のクロック同期を実行するには、cluvfy comp clocksyncコンポーネント検証コマンドを使用します。CVUは、時刻同期サービス(Oracleクラスタ時刻同期化サービス(CTSS)またはネットワーク・タイム・プロトコル(NTP))が実行されていること、各ノードがクロック同期用に同じ参照サーバーを使用していること、および各ノードの時間オフセットが許容範囲内であることを検証します。

構文

cluvfy comp clocksync [-noctss] [-n node_list [all]] [-verbose]

パラメータ

表A-6 cluvfy comp clocksyncコマンドのパラメータ

パラメータ

説明

-noctss

このオプションを指定した場合、CVUは、CTSSに対してチェックを実行しません。かわりに、CVUはNTPなどのプラットフォーム固有の時刻同期サービスをチェックします。

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp clu

ノード・リスト内のすべてのノード上でクラスタの整合性をチェックするには、cluvfy comp cluコンポーネント検証コマンドを使用します。

構文

cluvfy comp clu [-n node_list] [-verbose]

パラメータ

表A-7 cluvfy comp cluコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

例

クラスタの整合性の検証

すべてのノードのクラスタの整合性を検証するには、次のコマンドを使用します。

cluvfy comp clu -n all

このコマンドを実行すると、次のような出力が生成されます。

Verifying cluster integrity

Checking cluster integrity...

Cluster integrity check passed

Verification of cluster integrity was successful.

cluvfy comp clumgr

ノード・リスト内のすべてのノード上でCluster ManagerサブコンポーネントまたはOracleクラスタ同期サービス(CSS)の整合性をチェックするには、cluvfy comp clumgrコンポーネント検証コマンドを使用します。

構文

cluvfy comp clumgr [-n node_list] [-verbose]

パラメータ

表A-8 cluvfy comp clumgrコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp crs

指定したノードのクラスタ・レディ・サービス(CRS)デーモンの整合性を確認するには、cluvfy comp crsコンポーネント検証コマンドを実行します。

構文

cluvfy comp crs [-n node_list] [-verbose]

パラメータ

表A-9 cluvfy comp crsコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp dhcp

Oracle Database 11gリリース2(11.2.0.2)以降では、ネットワークにDHCPサーバーが存在すること、および必要なIPアドレス数を提供可能かどうかを検証するには、cluvfy comp dhcpコンポーネント検証コマンドを使用します。この検証では、DHCPサーバーの応答時間も検証します。このコマンドは、rootで実行する必要があります。

構文

# cluvfy comp dhcp -clustername cluster_name [-vipresname vip_resource_name]
[-port dhcp_port] [-n node_list] [-verbose]

パラメータ

表A-10 cluvfy comp dhcpコマンドのパラメータ

パラメータ

説明

-clustername cluster_name

DHCPの整合性を確認するクラスタの名前です。

-vipresname vip_resource_name

VIPリソースの名前です。

-port dhcp_port

DHCPがリスニングするポートです。デフォルトのポートは67です。

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

このコマンドを実行する前に、ネットワーク・リソースがオフラインであることを確認します。必要に応じて、srvctl stop nodeappsコマンドを使用してネットワーク・リソースをオフラインにします。

関連項目:
srvctl stop nodeappsコマンドの詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

cluvfy comp dns

Oracle Database 11gリリース2 (11.2.0.2)以降では、cluvfy comp dnsコンポーネント検証コマンドを使用してグリッド・ネーミング・サービス(GNS)サブドメインの委譲がドメイン名サービス(DNS)サーバーで適切に設定されているかを検証します。

クラスタの1つのノードでcluvfy comp dns -serverを実行します。クラスタの各ノードでcluvfy comp dns -clientを実行し、クラスタのDNSサーバー設定を検証します。

構文

cluvfy comp dns -server -domain gns_sub_domain -vipaddress gns_vip_address] [-port dns_port]
[-verbose]

cluvfy comp dns -client -domain gns_sub_domain -vip gns_vip [-port dns_port]
[-last] [-verbose]

パラメータ

表A-11 cluvfy comp dnsコマンドのパラメータ

パラメータ

説明

-server

-domainオプションに指定したドメインでリスニングするテストDNSサーバーを起動します。

-client

指定したアドレスで起動されるテストDNSサーバーへの接続を検証します。DNSサーバーの起動時に指定した情報と同じ内容を指定する必要があります。

-domain gns_sub_domain

GNSのサブドメイン名です。

-vipaddress gns_vip_address

{IP_name | IP_address}/net_mask/interface_nameの形式のGNS仮想IPアドレスです。IP_name(IPアドレスに解決される名前)またはIP_address(IPアドレス)のいずれかを指定できます。名前またはアドレスの後に、net_mask(IPアドレスのサブネット・マスク)、およびinterface_name(IPアドレスを開始するインタフェース)が続きます。

-vip gns_vip

GNSの仮想IPアドレスであり、IPアドレスに解決される名前またはドット区切りの10進数数字のIPアドレスのいずれかです。

-port dns_port

DNSがリスニングするポートです。デフォルトのポートは53です。

-last

すべての検証が完了すると、テストDNSサーバーに終了リクエストを送信します。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- このコマンドはWindowsオペレーティング・システムではサポートされません。

- 最後のノードで-lastオプションを指定してcluvfy comp dns -serverインスタンスを終了します。

- ポート番号が1024より小さい場合、CVUをrootとして実行する必要があります。

- GNS Oracle Clusterwareリソースがオンラインのときは、このチェックを実行しないでください。

cluvfy comp freespace

Oracle Clusterwareホームの記憶域で利用できる空き領域をチェックして、合計領域の5%以上が利用できることを確認するには、cluvfy comp freespaceコンポーネント検証コマンドを使用します。たとえば、記憶域の合計が10GBの場合、このチェックで500MB以上が空いていることを確認します。

構文

cluvfy comp freespace [-n node_list | all]

-nオプションを含める場合、コマンドを実行するノード名のカンマ区切りのリストを入力します。または、-nの後にallを指定して、クラスタ内のすべてのノードをチェックします。

cluvfy comp gns

クラスタ上のOracleグリッド・ネーミング・サービス(GNS)の整合性を検証するには、cluvfy comp gnsコンポーネント検証コマンドを使用します。

構文

cluvfy comp gns -precrsinst -domain gns_domain -vip gns_vip [-n node_list]
[-verbose]

cluvfy comp gns -postcrsinst [-verbose]

パラメータ

表A-12 cluvfy comp gnsコマンドのパラメータ

パラメータ

説明

-precrsinst

Oracle Clusterwareのインストール前に、GNSドメイン名とGNS VIPをチェックします。

-domain gns_domain

GNSのサブ・ドメイン名です。

-vip gns_vip

GNSの仮想IPアドレスです。

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-postcrsinst

クラスタのすべてのノードのGNSの整合性を確認します。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp gpnp

クラスタ内のすべてのノード上でグリッド・プラグ・アンド・プレイの整合性をチェックするには、cluvfy comp gpnpコンポーネント検証コマンドを使用します。

構文

cluvfy comp gpnp [-n node_list] [-verbose]

パラメータ

表A-13 cluvfy comp gpnpコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp ha

ローカル・ノード上でOracle Restartの整合性をチェックするには、cluvfy comp haコンポーネント検証コマンドを使用します。

構文

cluvfy comp ha [-verbose]

-verboseオプションを指定すると、CVUは詳細な出力を表示します。

cluvfy comp healthcheck

Oracle ClusterwareおよびOracle Databaseインストールをチェックして、必須要件およびベスト・プラクティス・ガイドラインへの適合性を調べたり正しく動作していることを確認するには、cluvfy comp healthcheckコンポーネント検証コマンドを使用します。

構文

cluvfy comp healthcheck [-collect {cluster|database}] [-db db_unique_name]
[-bestpractice|-mandatory] [-deviations] [-html] [-save [-savedir directory_path]]

パラメータ

表A-14 cluvfy comp healthcheckコマンドのパラメータ

パラメータ

説明

-collect {cluster|database}

Oracle Clusterware (cluster)またはOracle Database (database)のチェックを実行することを指定するには、-collectを使用します。healthcheckオプションで-collectフラグを使用しない場合、CVUではOracle ClusterwareとOracle Databaseの両方のチェックが実行されます。

-db db_unique_name

-dbフラグの後に入力する特定のデータベースでのチェックを指定するには、-dbを使用します。

CVUでは、JDBCを使用してcvusysユーザーとしてデータベースに接続し、様々なデータベース・パラメータが検証されます。このため、-dbフラグで指定したデータベースに対してCVUによるチェックを実行する場合は、まずそのデータベースにcvusysユーザーを作成し、そのユーザーにCVU固有のロールcvusappを付与する必要があります。cvusappロールのメンバーに、システム表に対するselect権限を付与する必要もあります。

CVU_home/cv/adminディレクトリのcvusys.sqlスクリプトを使用して、このユーザーを簡単に作成できます。このSQLスクリプトは、CVUにより検証するすべてのデータベースでcvusysユーザーを作成します。

-dbフラグを使用し、一意のデータベース名を指定しない場合、CVUではクラスタのすべてのOracle Databaseが検出されます。これらのデータベースでベスト・プラクティス・チェックを実行するには、各データベースでcvusysユーザーを作成し、ベスト・プラクティス・チェックを実行するのに必要なcvusappロールとselect権限をこのユーザーに付与する必要があります。

[-bestpractice|-mandatory
[-deviations]]

ベスト・プラクティスのチェックを指定するためには-bestpracticeフラグを使用し、必須のチェックを指定するためには-mandatoryフラグを使用します。ベスト・プラクティスの推奨事項または必須要件からの差異のみを確認することを指定するには、-deviationsフラグを追加します。-bestpracticeまたは-mandatoryのいずれかのフラグを指定できますが、両方のフラグを指定することはできません。-bestpracticeまたは-mandatoryのいずれも指定しない場合は、CVUによってベスト・プラクティスと必須要件の両方が表示されます。

-html

-htmlフラグは、詳細なレポートをHTML形式で生成するために使用します。

-htmlフラグを指定し、CVUによって認識されるブラウザがシステムで使用可能な場合は、チェックの完了時にCVUによってそのブラウザが起動され、レポートがブラウザに表示されます。

-htmlフラグを指定しない場合、CVUによって詳細なレポートがテキスト・ファイルで生成されます。

-save [-savedir directory_path]

-saveまたは-save -savedirフラグは、cvuchecdkreport_timestamp.txtおよびcvucheckreport_timestamp.htmという検証レポート(timestampは検証レポートの日時)を保存するために使用します。

cluvfy comp nodeapp

指定したすべてのノード上でノード・アプリケーション(VIP、NETWORK、ONSおよびGSD)の存在をチェックするには、コンポーネント・コマンドcluvfy comp nodeappを使用します。

構文

cluvfy comp nodeapp [-n node_list] [-verbose]

パラメータ

表A-15 cluvfy comp nodeappコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy comp nodecon

ノード・リストに指定されたノード間の接続性をチェックするには、cluvfy comp nodeconコンポーネント検証コマンドを使用します。インタフェース・リストを指定した場合、CVUは、指定したインタフェースのみを使用して接続性をチェックします。

構文

cluvfy comp nodecon -n node_list [-i interface_list] [-verbose]

パラメータ

表A-16 cluvfy comp nodeconコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

-i interface_list

インタフェース名のカンマ区切りリストです。このオプションを指定しない場合、CVUは、使用可能なインタフェースを検出し、いずれかのインタフェースを使用して接続性をチェックします。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- このコマンドを冗長モードで実行して、インタフェース、IPアドレスおよびサブネット間のマッピングを識別できます。

- CVUを使用して次の操作を実行するには、-iオプションを指定せず、-nにallを設定してnodeconコマンドを使用します。

- クラスタ・ノード上で使用可能なすべてのネットワーク・インタフェースの検出

- インタフェースの対応するIPアドレスおよびサブネットの確認

- VIPとしての使用に適したインタフェースのリストおよびプライベート・インターコネクトのインタフェースのリストの取得

- これらのインタフェースを介したすべてのノード間の接続性の検証

例

例1: 特定のネットワーク・インタフェースを介したノード間の接続性の検証

次のコマンドを実行すると、インタフェースeth0を介してnode1およびnode3のノード間の接続性を検証できます。

cluvfy comp nodecon -n node1,node3 –i eth0 -verbose

例2: 使用可能なすべてのネットワーク・インタフェースの検出およびそれらのネットワーク・インタフェースを介したノード間の接続性の検証

クラスタ・ノード上で使用可能なすべてのネットワーク・インタフェースを検出するには、次のコマンドを使用します。これで、CVUによって、インタフェースの対応するIPアドレスおよびサブネットが確認されます。次に、この情報を使用して、VIPとしての使用に適したインタフェースのリストおよびプライベート・インターコネクトのインタフェースのリストがCVUにより取得されます。最後に、これらのインタフェースを介したクラスタ内のすべてのノード間の接続性がCVUにより検証されます。

cluvfy comp nodecon -n all -verbose

cluvfy comp nodereach

指定したノードのソース・ノードからの到達可能性をチェックするには、cluvfy comp nodereachコンポーネント検証コマンドを使用します。

構文

cluvfy comp nodereach -n node_list [-srcnode node] [-verbose]

パラメータ

表A-17 cluvfy comp nodereachコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

-srcnode node

CVUが到達可能性テストを実行するソース・ノードの名前です。ソース・ノードを指定しない場合、コマンドを実行するノードがソース・ノードとして使用されます。

-verbose

CVUは詳細な出力を表示します。

例

クラスタのノード間のネットワーク接続性の検証

ローカル・ノードからnode3にネットワーク経由で到達可能かどうかを検証するには、次のコマンドを使用します。

cluvfy comp nodereach -n node3

このコマンドを実行すると、次のような出力が生成されます。

Verifying node reachability

Checking node reachability...
Node reachability check passed from node ”node1”

Verification of node reachability was successful.

cluvfy comp ocr

指定したすべてのノード上でOracle Cluster Registry(OCR)の整合性をチェックするには、cluvfy comp ocrコンポーネント検証コマンドを使用します。

構文

cluvfy comp ocr [-n node_list] [-verbose]

パラメータ

表A-18 cluvfy comp ocrコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

このコマンドは、OCRの内容の整合性を検証しません。OCRの内容を検証するには、OCRCHECKユーティリティを使用する必要があります。

例

ローカル・ノードでのOCRの整合性の検証

ローカル・ノードでのOCRの整合性を検証するには、次のコマンドを実行します。

cluvfy comp ocr

このコマンドを実行すると、次のような出力が生成されます。

Verifying OCR integrity

Checking OCR integrity...

Checking the absence of a non-clustered configurationl...
All nodes free of non-clustered, local-only configurations

ASM Running check passed. ASM is running on all specified nodes

Checking OCR config file ”/etc/oracle/ocr.loc”...

OCR config file ”/etc/oracle/ocr.loc” check successful

Disk group for ocr location ”+DATA” available on all the nodes

NOTE:
This check does not verify the integrity of the OCR contents. Execute &rsquor;ocrcheck' as a privileged user to verify the contents of OCR.

OCR integrity check passed

Verification of OCR integrity was successful.

cluvfy comp ohasd

Oracle高可用性サービス・デーモンの整合性をチェックするには、cluvfy comp ohasdコンポーネント検証コマンドを使用します。

構文

cluvfy comp ohasd [-n node_list] [-verbose]

パラメータ

表A-19 cluvfy comp ohasdコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

例

クラスタのすべてのノード上のOracle高可用性サービス・デーモンの整合性の検証

Oracle高可用性サービス・デーモンがクラスタのすべてのノードで正常に動作しているかどうかを検証するには、次のコマンドを使用します。

cluvfy comp ohasd -n all -verbose

このコマンドを実行すると、次のような出力が生成されます。

Verifying OHASD integrity

Checking OHASD integrity...
ohasd is running on node ”node1”
ohasd is running on node ”node2”
ohasd is running on node ”node3”
ohasd is running on node ”node4”

OHASD integrity check passed

Verification of OHASD integrity was successful.

cluvfy comp olr

ローカル・ノード上でOracle Local Registry(OLR)の整合性をチェックするには、cluvfy comp olrコンポーネント検証コマンドを使用します。

構文

cluvfy comp olr [-verbose]

-verboseオプションを指定すると、CVUは詳細な出力を表示します。

使用上の注意

このコマンドは、OLRの内容の整合性を検証しません。OCRの内容を検証するには、ocrcheck -localコマンドを使用する必要があります。

例

ノードのOLRの整合性の検証

現行のノードでOLRの整合性を検証するには、次のコマンドを実行します。

cluvfy comp olr -verbose

このコマンドを実行すると、次のような出力が生成されます。

Verifying OLR integrity

Checking OLR integrity...

Checking OLR config file...

OLR config file check successful

Checking OLR file attributes...

OLR file check successful

WARNING:
This check does not verify the integrity of the OLR contents. Execute &rsquor;ocrcheck -local' as a privileged user to verify the contents of OLR.

OLR integrity check passed

Verification of OLR integrity was successful.

cluvfy comp peer

参照ノードに対する指定ノードの互換性およびプロパティをチェックするには、cluvfy comp peerコンポーネント検証コマンドを使用します。デフォルトのユーザー・グループ名以外の互換性、および異なるリリースのOracleソフトウェアの互換性をチェックできます。このコマンドは、ユーザーとグループの値、カーネル設定およびインストール済オペレーティング・システム・パッケージの他、メモリー、スワップ領域などの物理的な属性を比較します。

構文

cluvfy comp peer -n node_list [-refnode node]
[-r {10gR1 | 10gR2 | 11gR1 | 11gR2}] [-orainv orainventory_group]
[-osdba osdba_group] [-verbose]

パラメータ

表A-20 cluvfy comp peerコマンドのパラメータ

パラメータ

説明

-refnode

他のノードとの互換性をチェックするための参照ノードとしてCVUが使用するノードです。このオプションを指定しない場合、CVUは、ノード・リスト内のすべてのノードについての値をレポートします。

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

-r {10gR1 | 10gR2 | 11gR1 |
11gR2}

Oracle ClusterwareまたはOracle RACのインストール要件に合わせて、CVUがチェックするソフトウェア・リリースを指定します。このオプションを指定しない場合、CVUは、Oracle ClusterwareまたはOracle Database 11gリリース2(11.2)を想定します。

-orainv orainventory_group

Oracle Inventoryグループの名前です。このオプションを指定しない場合、CVUは、oinstallをインベントリ・グループとして使用します。

注意: このパラメータは、Windowsシステムでは使用できません。

-osdba osdba_group

OSDBAグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

注意: このパラメータは、Windowsシステムでは使用できません。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

-refnodeオプションによるピアの比較では、他のノードと参照ノードのシステム・プロパティが比較されます。値が一致しない(値が参照ノードの値と等しくない)場合、CVUはその比較に参照ノードからの偏差としてフラグを付けます。グループまたはユーザーが参照ノードおよびその他のノードに存在しない場合、CVUは参照ノードからの偏差がないため、この比較を'passed'とレポートします。同様に、参照ノードよりも総メモリー量が多いノードの比較結果を'failed'とレポートします。

例

選択したクラスタ・ノードの構成の比較

次のコマンドを実行すると、Oracle Database 11gリリース2(11.2)から様々なノードに対して事前選択された複数のプロパティの値が表示されます。

cluvfy comp peer -n node1,node2,node4,node7 -verbose

cluvfy comp scan

単一クライアント・アクセス名(SCAN)構成をチェックするには、cluvfy comp scanコンポーネント検証コマンドを使用します。

構文

cluvfy comp scan [-verbose]

-verboseオプションを指定すると、CVUは詳細な出力を表示します。

例

SCAN構成の検証

SCANおよびSCANリスナーが構成されていて、クラスタのすべてのノードで動作することを検証するには、次のコマンドを使用します。

cluvfy comp scan

このコマンドを実行すると、次のような出力が生成されます。

Verifying scan

Checking Single Client Access Name (SCAN)...

Checking TCP connectivity to SCAN Listeners...
TCP connectivity to SCAN Listeners exists on all cluster nodes

Checking name resolution setup for ”node1.example.com”...

Verification of SCAN VIP and Listener setup passed

Verification of scan was successful.

cluvfy comp software

Oracleソフトウェアでインストールされるファイルおよび属性をチェックするには、cluvfy comp softwareコンポーネント検証コマンドを使用します。

構文

cluvfy comp software [-n node_list] [-d oracle_home]
[-r {10gR1 | 10gR2 | 11gR1 | 11gR2}] [-verbose]

パラメータ

表A-21 cluvfy comp softwareコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-d oracle_home

Oracle Databaseソフトウェアをインストールするディレクトリです。このオプションを指定しない場合、Gridホームにインストールされるファイルが検証されます。

-r {10gR1 | 10gR2 | 11gR1 |
11gR2}

Oracle ClusterwareまたはOracle RACのインストール要件に合わせて、CVUがチェックするソフトウェア・リリースを指定します。このオプションを指定しない場合、CVUは、Oracle ClusterwareまたはOracle Database 11gリリース2(11.2)を想定します。

-verbose

CVUは詳細な出力を表示します。

例

Oracle Clusterwareホーム・ディレクトリのクラスタのすべてのノードの上のソフトウェア構成の確認

Oracle Clusterware 11gリリース2のインストール済ファイルが正しく構成されていることを検証するには、次のようなコマンドを使用します。

cluvfy comp software -n all -verbose

このコマンドを実行すると、次のような出力が生成されます。

Verifying software

Check: Software

1021 files verified

Software check passed

Verification of software was successful.

cluvfy comp space

指定したすべてのノードに対して、-lオプションで指定した場所のディスクの空き領域をチェックするには、cluvfy comp spaceコンポーネント検証コマンドを使用します。

構文

cluvfy comp space [-n node_list] -l storage_location
-z disk_space {B | K | M | G} [-verbose]

パラメータ

表A-22 cluvfy comp spaceコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-l storage_location

チェックする記憶域の場所へのディレクトリ・パスです。

-z disk_space {B|K|M|G}

必要なディスク領域で、単位はバイト(B)、キロバイト(K)、メガバイト(M)またはギガバイト(G)です。数値とバイト単位を示す文字の間に空白を入れないでください(2Gなど)。整数のみを使用してください。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

spaceコンポーネントは、ブロック・デバイスおよびRAWデバイスをサポートしていません。

関連項目:
動作保証されている記憶域オプションの最新情報については、My Oracle Supportの動作保証についてのサイトを参照してください。
https://support.oracle.com

例

すべてのノードでの使用可能な空き領域の検証

次のコマンドを実行すると、各ノードの/home/dbadmin/productsディレクトリに5GBの空き領域があるかどうかを検証できます。

cluvfy comp space -n all -l /home/dbadmin/products –z 5G -verbose

cluvfy comp ssa

指定された記憶域の場所の共有を検出してチェックするには、cluvfy comp ssaコンポーネント検証コマンドを使用します。CVUは、ノード・リスト内のノードの共有をチェックします。

構文

cluvfy comp ssa [-n node_list] [-s storageID_list]
[-t {software | data | ocr_vdisk}] [-verbose]

パラメータ

表A-23 cluvfy comp ssaコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-s storageID_list

記憶域IDのカンマ区切りリストです(たとえば、/dev/sda,/dev/sdb)。

-sオプションを指定しない場合、CVUは、サポートされている記憶域タイプを検出し、各記憶域タイプの共有をチェックします。

-t {software | data |
ocr_vdisk}

記憶域デバイスで格納されるOracleファイルのタイプです。

-tオプションを指定しない場合、CVUは、dataファイル・タイプを検出またはチェックします。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

- 現行のリリースのcluvfyには、共有記憶域アクセス性のチェックに関して、Linuxに対する次のような制限があります。

- 現在、NAS記憶域およびOCFS2(バージョン1.2.1以上)がサポートされています。

関連項目:
NASマウント・オプションの詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- NASの共有性チェックの場合、cluvfyコマンドを実行するには、指定されたパスに対する書込み権限が必要です。cluvfyのユーザーに書込み権限が付与されていない場合、cluvfyはそのパスがnot sharedであるとレポートします。

- CVUを使用してLinuxシステム上のSCSIディスクの検出および共有記憶域のアクセス性のチェックを実行するには、CVUQDISKパッケージが必要です。CVUの使用を試行したときにOracle RAC環境のいずれかのノード上にCVUQDISKパッケージがインストールされていない場合、CVUでエラーが発生します。CVUQDISKパッケージのインストール方法の詳細は、「Red Hat Linuxでの共有ディスクの検出」を参照してください。

例

例1: システム上で使用可能なすべての共有記憶域システムの検出

システム上で使用可能なすべての共有記憶域システムを検出するには、次のコマンドを実行します。

cluvfy comp ssa -n all -verbose

例2: 特定の記憶域の場所のアクセス性の検証

次のようなコマンドを実行すると、クラスタ・ノード全体のデータ・ファイルを格納する/dev/sdaなどの特定の記憶域の場所のアクセス性を検証できます。

cluvfy comp ssa -n all -s /dev/sda,/dev/sdb,/dev/sdc

このコマンドを実行すると、次のような出力が生成されます。

Verifying shared storage acessibility

Checking shared storage accessibility...

”/dev/sda” is shared
”/dev/sdb” is shared
”/dev/sdc” is shared

Shared storage check was successful on nodes ”node1,node2,node3,node4”

Verification of shared storage accessibility was successful.

cluvfy comp sys

指定したすべてのノード上で指定した製品のシステム最小要件が満たされているかどうかをチェックするには、cluvfy comp sysコンポーネント検証コマンドを使用します。

構文

cluvfy comp sys [-n node_list] -p {crs | ha | database}
[-r {10gR1 | 10gR2 | 11gR1 | 11gR2}] [-osdba osdba_group]
[-orainv orainventory_group] [-fixup [-fixupdir fixup_dir]] [-verbose]

パラメータ

表A-24 cluvfy comp sysコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-p {crs | ha | database}

CVUがOracle Clusterware、Oracle Restart(HA)またはOracle RACに関するシステム要件をチェックするかどうかを指定します。

-r {10gR1 | 10gR2 | 11gR1 |
11gR2}

Oracle ClusterwareまたはOracle RACのインストール要件に合わせて、CVUがチェックするOracle Databaseのリリースを指定します。このオプションを指定しない場合、CVUは、Oracle Database 11gリリース2(11.2)であると想定します。

-osdba osdba_group

OSDBAグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

-orainv orainventory_group

Oracle Inventoryグループの名前です。このオプションを指定しない場合、CVUは、oinstallをインベントリ・グループとして使用します。

-fixup [-fixupdir fixup_dir]

検証が失敗した場合に、可能であればCVUでfixupの指示を生成することを指定します。CVUでfixupの指示を生成する特定のディレクトリを指定するには、-fixupdirオプションを使用します。ディレクトリを指定しない場合、CVUは、作業ディレクトリを使用します。

-verbose

CVUは詳細な出力を表示します。

例

Oracle Clusterwareのインストールのシステム要件の確認

クラスタ・ノードnode1、node2およびnode3上にOracle Clusterware 11gリリース2をインストールするためのシステム要件を検証するには、次のコマンドを実行します。

cluvfy comp sys -n node1,node2,node3 -p crs -verbose

cluvfy comp vdisk

指定したすべてのノードの投票ディスクの投票ディスク構成およびudevの設定を確認するには、cluvfy comp vdiskコンポーネント検証コマンドを使用します。

関連項目:
udevの設定の詳細は、『Oracle Grid Infrastructureインストレーション・ガイドfor Linux』を参照してください。

構文

cluvfy comp vdisk [-n node_list] [-verbose]

パラメータ

表A-25 cluvfy comp vdiskコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

このオプションを指定しない場合、CVUは、ローカル・ノードのみをチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage [-pre | -post] acfscfg

Oracle ASMクラスタ・ファイル・システム(Oracle ACFS)を構成する前にクラスタ・ノードが正しく設定されているかどうかを検証するには、cluvfy stage -pre acfscfgコマンドを使用します。

Oracle ACFSを構成した後に既存のクラスタをチェックするには、cluvfy stage -post acfscfgコマンドを使用します。

構文

cluvfy stage -pre acfscfg -n node_list [-asmdev asm_device_list] [-verbose]

cluvfy stage -post acfscfg -n node_list [-verbose]

パラメータ

表A-26 cluvfy stage [-pre | -post] acfscfgコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

-asmdev asm_device_list

Oracle ASMで使用する予定のデバイスのリストです。このオプションを指定しない場合、CVUは、内部のオペレーティング・システムに依存した値(たとえばLinuxシステムの場合は/dev/raw/*)を使用します。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage [-pre | -post] cfs

OCFS2またはWindows用のOCFSを設定する前にクラスタ・ノードが正しく設定されているかどうかを検証するには、cluvfy stage -pre cfsステージ検証コマンドを使用します。

OCFS2またはWindows用のOCFSを設定した後に指定ノードで適切なチェックを実行するには、cluvfy stage -post cfsステージ検証コマンドを使用します。

関連項目:
サポートされた共有記憶域タイプのリストについては、ご使用のプラットフォームの『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

構文

cluvfy stage -pre cfs -n node_list -s storageID_list [-verbose]

cluvfy stage -post cfs -n node_list -f file_system [-verbose]

パラメータ

表A-27 cluvfy stage [-pre | -post] cfsコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

-s storageID_list

チェックする記憶域の場所のカンマ区切りリストです。

-verbose

CVUは詳細な出力を表示します。

例

例1: OCFS2の構成前に特定の共有デバイスが正しく構成されているかどうかのチェック

OCFS2の設定前に共有デバイスが正しく構成されているかどうかをチェックするには、次のようなコマンドを使用します。/dev/sdd5をシステムの共有デバイスの名前に置き換えます。

cluvfy stage -pre cfs -n node1,node2,node3,node4 -s /dev/sdd5

例2: Windowsファイル・システム用のOCFSが正しく構成されているかどうかのチェック

Windows用のOCFSの構成が正常に完了したかどうか、およびすべてのノードがこの新しいファイル・システムにアクセスできるかどうかをチェックするには、次のようなコマンドを使用します。E:\ocfs\db1は、クラスタのWindowsファイル・システム用のOCFSの場所に置き換えます。

cluvfy stage -post cfs -n all -f E:\ocfs\db1

cluvfy stage [-pre | -post] crsinst

Oracle Clusterwareをインストールする前に、指定ノードをチェックするには、cluvfy stage -pre crsinstコマンドを使用します。-cおよび-qオプションを指定すると、OCRおよび投票ディスクに対する追加のチェックが実行されます。

Oracle Clusterwareをインストールした後に、指定ノードをチェックするには、cluvfy stage -post crsinstコマンドを使用します。

構文

cluvfy stage -pre crsinst -n node_list [-r {10gR1 | 10gR2 | 11gR1 | 11gR2}]
[-c ocr_location_list] [-q voting_disk_list] [-osdba osdba_group]
[-orainv orainventory_group] [-asm [-asmgrp asmadmin_group] [-asmdev asm_device_list]]
[-crshome Grid_home] [-fixup [-fixupdir fixup_dir]
[-networks network_list]
[-verbose]]

cluvfy stage -post crsinst -n node_list [-verbose]

パラメータ

表A-28 cluvfy stage [-pre | -post] crsinstコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

-r {10gR1 | 10gR2 | 11gR1 |
11gR2}

Oracle Clusterwareのインストール要件に合わせて、CVUがチェックするOracle Clusterwareのリリースを指定します。このオプションを指定しない場合、CVUは、Oracle Clusterware 11gリリース2(11.2)を想定します。

-c ocr_location_list

CVUがすべてのノードの可用性を検証する、OCRの場所またはファイルのディレクトリ・パスのカンマ区切りリストです。このオプションを指定しない場合、OCRの場所はチェックされません。

-q voting_disk_list

CVUがすべてのノードの可用性を検証する、投票ディスクのディレクトリ・パスのカンマ区切りリストです。このオプションを指定しない場合、投票ディスクの場所はチェックされません。

-osdba osdba_group

OSDBAグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

-orainv orainventory_group

Oracle Inventoryグループの名前です。このオプションを指定しない場合、CVUは、oinstallをインベントリ・グループとして使用します。

-asm

Oracle ASMがOracle Clusterwareファイルの格納に使用されることを示します。

-asmgrp asmadmin_group

OSASMグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

-asm -asmdev asm_device_list

CVUがすべてのノードの可用性を検証する、Oracle ASMで使用する予定のデバイスのリストです。

このオプションを指定しない場合、CVUは、内部のオペレーティング・システムに依存した値を使用します。

-crshome Grid_home

Oracle Grid InfrastructureまたはOracle Clusterwareホーム・ディレクトリの場所です。このオプションを指定しない場合、提供されたファイル・システムの場所で、Oracle Clusterwareインストール用に十分な空き領域があるかどうかがチェックされます。

-fixup [-fixupdir fixup_dir]

検証が失敗した場合に、可能であればCVUでfixupの指示を生成することを指定します。CVUでfixupの指示を生成する特定のディレクトリを指定するには、-fixupdirオプションを使用します。ディレクトリを指定しない場合、CVUは、作業ディレクトリを使用します。

-networks network_list

"if_name" [:subnet_id [:public | :cluster_interconnect]]の形式のネットワークのカンマ区切りリストのネットワーク・パラメータを検証します。

- ネットワーク・インタフェース名(if_name)を指定する場合、eth*のようにワイルドカード文字としてアスタリスク(*)を使用し、インタフェースを照合することができます。

- subnet_id変数のネットワーク・インタフェースのサブネット番号を指定し、ネットワーク・インタフェースのタイプを選択します。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage -pre dbcfg

Oracle RACデータベースを構成する前に指定したノードをチェックして、システムがデータベースの作成またはデータベースの構成の変更を行うためのすべての基準を満たしているかどうかを検証するには、cluvfy stage -pre dbcfgコマンドを使用します。

構文

cluvfy stage -pre dbcfg -n node_list -d Oracle_home [-fixup [-fixupdir fixup_dir]]
[-verbose]

パラメータ

表A-29 cluvfy stage -pre dbcfgコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

-d Oracle_home

チェックされているデータベースのOracleホーム・ディレクトリの場所です。

-fixup [-fixupdir fixup_dir]

検証が失敗した場合に、可能であればCVUでfixupの指示を生成することを指定します。CVUでfixupの指示を生成する特定のディレクトリを指定するには、-fixupdirオプションを使用します。ディレクトリを指定しない場合、CVUは、作業ディレクトリを使用します。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage -pre dbinst

Oracle RACデータベースのインストールまたは作成の前に指定したノードをチェックして、システムがOracle RACデータベースのインストールまたは作成のすべての基準を満たしているかどうかを検証するには、cluvfy stage -pre dbinstコマンドを使用します。

構文

cluvfy stage -pre dbinst -n node_list [-r {10gR1 | 10gR2 | 11gR1 | 11gR2}]
[-osdba osdba_group] [-d Oracle_home] [-fixup [-fixupdir fixup_dir] [-verbose]

パラメータ

表A-30 cluvfy stage -pre dbinstコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

-r {10gR1 | 10gR2 | 11gR1 | 11gR2}

Oracle RACのインストール要件に合わせて、CVUがチェックするOracle Databaseのリリースを指定します。このオプションを指定しない場合、CVUは、Oracle Database 11gリリース2(11.2)であると想定します。

-osdba osdba_group

OSDBAグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

-d Oracle_home

Oracle RACのインストールおよびOracle RACデータベースの作成を行うOracleホーム・ディレクトリの場所です。このオプションを指定した場合、指定した場所にデータベース・インストール用に十分な空きディスク領域があるかどうかがチェックされます。

-fixup [-fixupdir fixup_dir]

検証が失敗した場合に、可能であればCVUでfixupの指示を生成することを指定します。CVUでfixupの指示を生成する特定のディレクトリを指定するには、-fixupdirオプションを使用します。ディレクトリを指定しない場合、CVUは、作業ディレクトリを使用します。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage [-pre | -post] hacfg

Oracle Restartを構成する前にローカル・ノードをチェックするには、cluvfy stage -pre hacfgコマンドを使用します。

Oracle Restartを構成した後にローカル・ノードをチェックするには、cluvfy stage -post hacfgコマンドを使用します。

構文

cluvfy stage -pre hacfg [-osdba osdba_group] [-orainv orainventory_group]
[-fixup [-fixupdir fixup_dir]] [-verbose]

cluvfy stage -post hacfg [-verbose]

パラメータ

表A-31 cluvfy stage [-pre | -post] hacfgコマンドのパラメータ

パラメータ

説明

-osdba osdba_group

OSDBAグループの名前です。このオプションを指定しない場合、CVUは、dbaをOSDBAグループとして使用します。

-orainv orainventory_group

Oracle Inventoryグループの名前です。このオプションを指定しない場合、CVUは、oinstallをインベントリ・グループとして使用します。

-fixup [-fixupdir fixup_dir]

検証が失敗した場合に、可能であればCVUでfixupの指示を生成することを指定します。CVUでfixupの指示を生成する特定のディレクトリを指定するには、-fixupdirオプションを使用します。ディレクトリを指定しない場合、CVUは、作業ディレクトリを使用します。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage -post hwos

Oracleソフトウェアをインストールする前にクラスタ内の指定したノードでネットワークおよび記憶域の検証を実行するには、cluvfy stage -post hwosステージ検証コマンドを使用します。また、このコマンドは、サポートされる記憶域タイプをチェックし、共有に関して各記憶域タイプをチェックします。

構文

cluvfy stage -post hwos -n node_list [-s storageID_list] [-verbose]

パラメータ

表A-32 cluvfy stage -post hwosコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

-s storageID_list

サポートされている記憶域タイプの共有用の記憶域の場所のカンマ区切りリストをチェックします。

-sオプションを指定しない場合、CVUは、サポートされている記憶域タイプを検出し、各記憶域タイプの共有をチェックします。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage [-pre | -post] nodeadd

指定したノードを既存のクラスタに追加する前に、そのノードが正しく構成されているかどうかを検証する場合、および指定したノードを追加する前にクラスタの整合性を検証する場合は、cluvfy stage -pre nodeaddコマンドを使用します。

このコマンドは、追加するノードのシステム構成(オペレーティング・システムのバージョン、ソフトウェア・パッチ、パッケージ、カーネル・パラメータなど)が既存のクラスタ・ノードと互換性があること、およびクラスタウェアが既存のノードで正常に動作していることを検証します。既存のクラスタの任意のノードでこのコマンドを実行します。

指定したノードがネットワーク、共有記憶域およびクラスタウェアのレベルでクラスタに正常に追加されていることを検証するには、cluvfy stage -post nodeaddコマンドを使用します。

構文

cluvfy stage -pre nodeadd -n node_list [-vip vip_list]
[-fixup [-fixupdir fixup_dir]] [-verbose]

cluvfy stage -post nodeadd -n node_list [-verbose]

パラメータ

表A-33 cluvfy stage [-pre | -post] nodeaddコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。これらは、クラスタに追加するノード、または追加されたノードです。

-v vip_list

新規ノードで使用される仮想IPアドレスのカンマ区切りリストです。

-fixup [-fixupdir fixup_dir]

検証が失敗した場合に、可能であればCVUでfixupの指示を生成することを指定します。CVUでfixupの指示を生成する特定のディレクトリを指定するには、-fixupdirオプションを使用します。ディレクトリを指定しない場合、CVUは、作業ディレクトリを使用します。

-verbose

CVUは詳細な出力を表示します。

cluvfy stage -post nodedel

特定のノードがクラスタから正常に削除されていることを確認するには、cluvfy stage -post nodedelコマンドを使用します。通常、このコマンドは、ノード固有のインタフェース構成の詳細が削除されたこと、ノードがクラスタ構成の一部ではなくなったこと、および適切なOracle ASMクリーンアップが実行されたことを検証します。

構文

cluvfy stage -post nodedel -n node_list [-verbose]

パラメータ

表A-34 cluvfy stage -post nodedelコマンドのパラメータ

パラメータ

説明

-n node_list

検証を行う非ドメイン修飾ノード名のカンマ区切りリストです。allを指定した場合、CVUは、クラスタ内のすべてのノードをチェックします。

-verbose

CVUは詳細な出力を表示します。

使用上の注意

cluvfy stage -post nodedelの検証に失敗した場合、ノードの削除手順を繰り返します。

関連項目:
第4章「クラスタ・ノードの追加および削除」

CVUのトラブルシューティングおよび診断出力

この項では、次のCVUのトラブルシューティングに関する項目について説明します。

- トレースの有効化

- クラスタ検証ユーティリティの既知の問題

トレースの有効化

環境変数SRVM_TRACEをtrueに設定することによって、トレースを有効にできます。たとえば、tcshでは、setenv SRVM_TRACE trueなどのエントリを使用するとトレースが有効になります。

デフォルトでは、CVUのトレース・ファイルは、CV_HOME/cv/logディレクトリに作成されます。ログ・ファイルは自動的にローテーションされ、最新のログ・ファイルの名前はcvutrace.log.0になります。必要に応じて不要なログ・ファイルを削除またはアーカイブしてディスク領域を解放する必要があります。

トレースを有効にしないかぎり、CVUはトレース・ファイルを生成しません。トレース・ファイルのデフォルト以外の場所を使用するには、CV_TRACELOC環境変数に適切なトレース・ディレクトリの絶対パスを設定します。

クラスタ検証ユーティリティの既知の問題

この項では、次に示すクラスタ検証ユーティリティ(CVU)の既知の制限について説明します。

- クラスタ検証ユーティリティによってサポートされるデータベースのバージョン

- Linuxの共有記憶域アクセス性(ssa)チェックのレポートの制限

- Red Hat Linuxでの共有ディスクの検出

クラスタ検証ユーティリティによってサポートされるデータベースのバージョン

現行のリリースのCVUでは、Oracle Database 10g以上、Oracle RACおよびOracle Clusterwareのみがサポートされており、CVUには下位互換性がありません。CVUは、Oracle Database 10gより前のOracle Database製品をチェックまたは検証することはできません。

Linuxの共有記憶域アクセス性(ssa)チェックのレポートの制限

現行のリリースのcluvfyには、共有記憶域アクセス性のチェックに関して、Linuxに対する次のような制限があります。

- OCFS2(バージョン1.2.1以上)がサポートされています。

- NASの共有性チェックの場合、cluvfyコマンドを実行するには、指定されたパスに対する書込み権限が必要です。cluvfyコマンドを実行するユーザーに書込み権限が付与されていない場合、cluvfyはそのパスがnot sharedであるとレポートします。

Red Hat Linuxでの共有ディスクの検出

CVUを使用してRed Hat Linux 4.0(以上)およびSUSE Linux Enterprise Server上のSCSIディスクの検出および共有記憶域のアクセス性のチェックを実行する場合、CVUQDISKパッケージが必要です。CVUの使用を試行したときにOracle RAC環境のいずれかのノード上にCVUQDISKパッケージがインストールされていない場合、CVUでエラーが発生します。

CVUQDISKパッケージをインストールするには、次の手順を実行します。

1. rootユーザーとしてログインします。

2. パッケージcvuqdisk-1.0.6-1.rpm(またはこれ以上のバージョン)をローカル・ディレクトリにコピーします。このrpmは、Oracle Clusterwareのインストール・メディアの最上位ディレクトリのrpmサブディレクトリ内にあります。たとえば、cvuqdisk-1.0.6-1.rpmは、/mountpoint/clusterware/rpm/というディレクトリにあり、この場合のmountpointはディレクトリが配置されているディスクのマウント・ポイントです。

# cp /mount_point/clusterware/rpm/cvuqdisk-1.0.6-1.rpm /u01/oradba

3. CVUQDISK_GRP環境変数を、CVUQDISKパッケージ・バイナリを所有する必要があるオペレーティング・システム・グループに設定します。CVUQDISK_GRPが設定されていない場合、デフォルトで、oinstallグループが所有者グループになります。

# set CVUQDISK_GRP=oinstall

4. コマンドrpm -q cvuqdiskを実行して、以前のバージョンのCVUQDISKパッケージがインストールされているかどうかを判別します。以前のバージョンのCVUQDISKパッケージが検出された場合、コマンドrpm -e cvuqdisk previous_versionを実行してこのパッケージを削除します(この場合のprevious_versionは、以前のバージョンのCVUQDISKの識別子です)。

# rpm -q cvuqdisk
cvuqdisk-1.0.2-1
# rpm -e cvuqdisk-1.0.2-1

5. コマンドrpm -iv cvuqdisk-1.0.6-1.rpmを実行して、最新のCVUQDISKパッケージをインストールします。

# cd /u01/oradba
# rpm -iv cvuqdisk-1.0.6-1.rpm

B Oracle Clusterwareのリソース・リファレンス

この付録は、Oracle Clusterwareのリソースに対するリファレンスです。ここには、すべてのリソース属性の説明と使用例、およびアクション・スクリプトの詳細な説明および例が示されています。

内容は次のとおりです。

- リソース属性

- サード・パーティ製アプリケーションのアクション・スクリプトの例

リソース属性

この項では、アプリケーションをOracle Clusterwareのリソースとして登録する際に使用する属性について説明します。この属性は、次に示すように、crsctl add resourceコマンドで使用します。

$ crsctl add resource resource_name -type resource_type
{[-attr "attribute_name='attribute_value', attribute_name='attribute_value'
, ..."] | [-file file_name]}

属性/値ペアは、-attrフラグの後にカンマ区切りのリストとして指定し、各属性の値は一重引用符('')で囲みます。一部のリソース属性は、構成できない読取り専用の属性です。

または、属性/値ペアを含むテキスト・ファイルを作成できます。次に例を示します。

PLACEMENT=favored
HOSTING_MEMBERS=node1 node2 node3
RESTART_ATTEMPTS@CARDINALITYID(1)=0
RESTART_ATTEMPTS@CARDINALITYID(2)=0
FAILURE_THRESHOLD@CARDINALITYID(1)=2
FAILURE_THRESHOLD@CARDINALITYID(2)=4
FAILURE_INTERVAL@CARDINALITYID(1)=300
FAILURE_INTERVAL@CARDINALITYID(2)=500
CHECK_INTERVAL=2
CARDINALITY=2

この項には次のトピックが含まれます:

- 構成可能なリソース属性

- 読取り専用のリソース属性

構成可能なリソース属性

この項では、アプリケーションをOracle Clusterwareのリソースとして登録する際に構成可能な次のリソース属性について説明します。

注意:
すべての属性の値は小文字で指定する必要があります。属性名はすべて大文字で指定する必要があります。

- ACL

- ACTION_SCRIPT

- ACTIVE_PLACEMENT

- AGENT_FILENAME

- AUTO_START

- CARDINALITY

- CHECK_INTERVAL

- DEGREE

- DESCRIPTION

- ENABLED

- FAILURE_INTERVAL

- FAILURE_THRESHOLD

- HOSTING_MEMBERS

- LOAD

- NAME

- OFFLINE_CHECK_INTERVAL

- PLACEMENT

- RESTART_ATTEMPTS

- SCRIPT_TIMEOUT

- SERVER_POOLS

- START_DEPENDENCIES

- START_TIMEOUT

- STOP_DEPENDENCIES

- STOP_TIMEOUT

- TYPE

- UPTIME_THRESHOLD

ACL

リソースの所有者、および様々なオペレーティング・システムのユーザーとグループに付与するアクセス権限を定義します。リソースの所有者には、所有者になるオペレーティング・システム・ユーザーとその権限を定義します。これは、リソースの作成時に構成するオプションの属性です。この属性を構成しない場合、リソースを作成するプロセスのIDに基づいて値が決定されます。リソースの既存の権限に基づいて変更が許可される場合には、属性の値を変更できます。

注意:
owner、pgrp、userおよびgroupを含むすべてのオペレーティング・システムのユーザー名およびユーザー・グループは、クラスタ内のすべてのサーバー上に登録される必要があります。

文字列は次のように指定します。

- owner: リソースを所有するオペレーティング・システム・ユーザーで、このユーザーの下でアクション・スクリプトまたはアプリケーション固有のエージェントが実行され、続いて所有者の権限を指定します。

- pgrp: リソース所有者のプライマリ・グループであるオペレーティング・システム・グループです。続いてプライマリ・グループのメンバーの権限を指定します。

- other: 所有者でもプライマリ・グループのメンバーでもないオペレーティング・システム・ユーザー

- r: リソース、その状態および構成を表示する権限のみを付与する読取りオプション

- w: リソースの属性を変更する権限およびリソースを削除する権限を付与する書込みオプション

- x: リソースを開始、停止および再配置する権限を付与する実行オプション

デフォルトでは、リソースを作成するクライアントのIDはownerです。また、デフォルトでは、root、およびownerに指定されたユーザーは完全な権限を持ちます。ACL属性に次の行を追加することで、必要なオペレーティング・システム・ユーザーおよびオペレーティング・システム・グループに権限を付与できます。

user:user_name:rwx
group:group_name:rwx

使用例

ACL=owner:user_1:rwx,pgrp:osdba:rwx,other::r-

前述の例では、リソースの所有者はuser_1で、プライマリ・グループはosdbaです。他のユーザーはリソースを表示することしかできませんが、ユーザーuser_1は、osdbaグループと同様すべての権限を持ちます。

ACTION_SCRIPT

アクション・スクリプトのパスおよびファイル名を含む絶対ファイル名。AGENT_FILENAME属性に指定されたエージェントが、ACTION_SCRIPT属性に指定されたスクリプトをコールします。

使用例

ACTION_SCRIPT=fully_qualified_path_to_action_script

ACTIVE_PLACEMENT

1に設定すると、Oracle Clusterwareは、この属性を使用してクラスタ・サーバーの追加または再起動時にリソースの配置を再評価します。PLACEMENT=favoredのリソースの場合、Oracle Clusterwareは、favoredのサーバーがクラスタに追加されているときにリソースがfavored以外のサーバーで実行されていると、実行中のリソースを再配置することがあります。

使用例

ACTIVE_PLACEMENT=1

AGENT_FILENAME

リソース・タイプがそのリソースを管理するために使用するエージェント・プログラムの完全修飾されたファイル名。すべてのリソース・タイプに、そのリソースを管理するためのエージェント・プログラムが必要です。この属性に値を指定するか、またはベースになるリソース・タイプから値を継承することで、リソース・タイプはエージェント・プログラムを使用できます。Oracle Clusterware 11gリリース2(11.2)には、applicationおよびscriptagentの2つのスクリプト・エージェントが含まれています。Oracle Clusterwareは、非推奨のapplicationリソース・タイプのリソースに対してapplicationスクリプト・エージェントを使用します。この属性のデフォルト値はscriptagentです。

使用例

AGENT_FILENAME=%Grid_home%/bin/application

AUTO_START

クラスタ・サーバーの再起動後、Oracle Clusterwareによってリソースを自動的に起動するかどうかを示します。AUTO_STARTの有効な値は次のとおりです。

- always: サーバーが停止したときのリソースの状態に関係なく、サーバーの再起動時にリソースを再起動します。

- restore: サーバーが停止したときと同じ状態にリソースをリストアします。サーバーが停止する前にTARGETの値がONLINEだった場合、Oracle Clusterwareはリソースの再起動を試行します。

- never: サーバーが停止したときのリソースの状態に関係なく、Oracle Clusterwareはリソースを再起動しません。

CARDINALITY

リソースを同時に実行できるサーバーの数。これが、リソース・カーディナリティの上限になります。

使用例

CARDINALITY=1

CHECK_INTERVAL

checkアクションの実行を繰り返す時間間隔(秒単位)。間隔を短くするとより頻繁にチェックできますが、スクリプト・エージェントを使用するとリソースの消費も増大します。リソースの消費を低減するには、アプリケーション固有のエージェントを使用します。

使用例

CHECK_INTERVAL=60

DEGREE

単一サーバー上で実行可能なクラスタ・リソースのインスタンスの数。

使用例

DEGREE=1

DESCRIPTION

追加するリソースの説明を入力します。

使用例

DESCRIPTION=Apache Web server

ENABLED

Oracle Clusterwareは、この属性を使用してリソースの状態を管理します。Oracle Clusterwareは、直接的にも、別のリソースへの依存性による場合にも無効(ENABLED=0)になっているリソースの管理は試行しません。無効になっているリソースを起動することはできませんが、停止することはできます。

Oracle Clusterwareは、無効なリソースをアクティブに監視せず、つまり、Oracle Clusterwareは無効なリソースの状態をチェックしません。ただし、Oracle Clusterwareは起動時に、無効なリソースの状態について問合せを行います。

使用例

ENABLED=1

FAILURE_INTERVAL

リソースがFAILURE_THRESHOLD属性で指定した障害の回数を超えた場合にOracle Clusterwareがリソースを停止するまでの間隔(秒単位)。値が0(ゼロ)の場合、障害の追跡は無効になります。

使用例

FAILURE_INTERVAL=30

FAILURE_THRESHOLD

リソースに指定されたFAILURE_INTERVAL内で検出される障害の数で、この値を超えると、Oracle Clusterwareがリソースを使用不可としてマーク付けし、そのリソースの監視を停止します。指定した回数の障害がリソースで発生すると、Oracle Clusterwareはそのリソースを停止します。値が0(ゼロ)の場合、障害の追跡は無効になります。最大値は20です。

使用例

FAILURE_THRESHOLD=3

HOSTING_MEMBERS

リソースのホスティングが可能なクラスタ・サーバーの名前のリストで、空白で区切って順序付けします。この属性は、管理者管理型を使用し、PLACEMENT属性の値がfavoredまたはrestrictedに設定されている場合にのみ指定する必要があります。アプリケーションをOracle Clusterwareリソースとして登録する際は、かわりにSERVER_POOLS属性を使用します。

注意:
applicationタイプのリソースの場合、Oracle Clusterwareは、汎用サーバー・プールのHOSTING_MEMBERS属性に示されたサーバーを配置の対象とします。

関連項目:

- 汎用サーバー・プールの詳細は、「サーバー・プールの理解」を参照してください。

- この属性の詳細は、「LOAD」を参照してください。

- この属性の詳細は、「PLACEMENT」を参照してください。

候補ノード名のリストを取得するには、olsnodesコマンドを実行して、使用しているサーバー名のリストを表示します。

使用例

HOSTING_MEMBERS=server1 server2 server3

LOAD

Oracle Clusterwareは、PLACEMENT属性の値とともにこの属性の値を解析します。PLACEMENTの値がbalancedの場合は、LOADの値によってリソースの最適な配置場所が決定されます。これは、リソースの1つのインスタンスが消費するサーバー容量を、他のリソースとの相対値として数量的に示す負以外の数値です。Oracle Clusterwareは、実行中のリソースによる負荷の合計が最小のサーバーにリソースの配置を試行します。

使用例

LOAD=1

NAME

リソースの名前を示す英数字の文字列で、大/小文字が区別されます。ネーミング規則として、名前の先頭を英数字の接頭辞(myApacheなど)にし、末尾をリソースについて説明する識別子にすることをお薦めします。リソース名には、プラットフォームでサポートされているすべての文字(感嘆符(!)およびチルダ(~)を除く)を使用できます。リソース名の先頭をピリオド(.)またはoraという文字列にすることはできません。

使用例

NAME=myApache

OFFLINE_CHECK_INTERVAL

リソースのオフライン監視を制御します。値は、リソースの状態がOFFLINEの場合に、Oracle Clusterwareがそのリソースを監視する時間間隔(秒単位)を表します。値が0の場合、監視は無効になります。

使用例

OFFLINE_CHECK_INTERVAL=30

PLACEMENT

Oracle Clusterwareがリソースを起動するクラスタ・サーバーを選択する方法を指定します。有効な値は、balanced、favoredまたはrestrictedです。

PLACEMENT属性をfavoredまたはrestrictedに設定した場合は、SERVER_POOLSおよびHOSTING_MEMBERS属性にも値を割り当てる必要があります。PLACEMENT属性の値をbalancedに設定した場合は、HOSTING_MEMBERS属性を指定する必要はありません。

関連項目:

- PLACEMENT属性の詳細は、「アプリケーションの配置ポリシー」を参照してください。

- この属性の詳細は、「HOSTING_MEMBERS」を参照してください。

- この属性の詳細は、「SERVER_POOLS」を参照してください。

使用例

PLACEMENT=favored

RESTART_ATTEMPTS

Oracle Clusterwareが、リソースの再配置を試行する前に、リソースの現行のサーバー上でリソースの再起動を試行する回数。1の値を指定した場合、Oracle Clusterwareはサーバー上でリソースの再起動を1回のみ試行します。2回失敗すると、Oracle Clusterwareの再配置が試行されます。0の値を指定した場合、再起動は試行されませんが、Oracle Clusterwareは常時、別のサーバーへのリソースのフェイルオーバーを試行します。

使用例

RESTART_ATTEMPTS=2

SCRIPT_TIMEOUT

アクションを実行する最大時間(秒単位)。アクション・スクリプトが指定された時間内に完了しなかった場合、Oracle Clusterwareはエラー・メッセージを戻します。このタイムアウトは、すべてのアクション(start、stop、checkおよびclean)に適用されます。

使用例

SCRIPT_TIMEOUT=45

SERVER_POOLS

特定のリソースが属すことのできるサーバー・プールのリストで、空白で区切って指定します。リソースがクラスタ内の任意のサーバー上で動作できる場合は、デフォルト値の*を使用し、リソースがcluster_resourceタイプ以外の場合は、SERVER_POOLS属性のデフォルト値は空白です。この属性の値に*を指定できるのはクラスタ管理者のみです。

- 次に示すように、SERVER_POOLS属性とともにPLACEMENT属性を使用します。PLACEMENT属性の値をrestrictedまたはfavoredに設定した場合は、リソースのポリシー管理を使用する際にSERVER_POOLS属性にも値を指定する必要があります。

- PLACEMENTの値をbalancedに設定した場合、SERVER_POOLS=*でないかぎり、リソースは汎用プールおよび空きプールのみで実行されます。

この属性は、配置に関してリソースと1つ以上のサーバー・プールとの間でアフィニティを作成します。また、PLACEMENT属性の値に依存します。

関連項目:

- サーバー・プールの詳細は「サーバー・プールの理解」、クラスタ管理者の詳細は「ロール別管理」を参照してください。

- この属性の詳細は、「HOSTING_MEMBERS」を参照してください。

- この属性の詳細は、「PLACEMENT」を参照してください。

使用例

SERVER_POOLS=pool1 pool2 pool3

START_DEPENDENCIES

リソースを起動する際にOracle Clusterwareで考慮する一連の関係を指定します。特定のリソースが依存する可能性がある、いくつかのリソースおよびリソース・タイプに対して依存性リストを指定でき、リストは空白で区切って指定します。

構文

START_DEPENDENCIES=dependency(resource_set) [dependency(resource_set)] [...]

前述の構文例で、変数は次のように定義されます。

- dependency: 指定可能な値は、hard、weak、attraction、pullupおよびdispersionです。これらの依存性は、それぞれ1回のみ指定できますが、pullupは、複数回指定できます。

- resource_set: 構成するリソースが依存しているリソース・エンティティ(個々のリソースまたはリソース・タイプのいずれか)をカッコ()で囲み、res1[, res2[, ...]]の形式で指定したカンマ区切りリスト。
各リソース・エンティティは次のように定義されます。

[modifier1:[modifier2:]] {resource_name | type:resource_type}

前述の構文例で、resource_nameは特定のリソースの名前、type:resource_typeは特定のリソース・タイプの名前です。リソース・タイプの前にtypeに指定する必要があり、このtype修飾子はリストで最後のリソース・エンティティである必要があります。

必要に応じて、修飾子を指定してリソース・エンティティの依存性をさらに詳細に構成できます。リソース・エンティティに接頭辞として次の修飾子を指定することで、各依存性を変更することができます。

- hard([intermediate:][global:]{resource_name | type:resource_type}): 特定のリソースまたは特定のタイプのリソースが起動するときにのみあるリソースを起動させる場合、そのリソースにhard起動依存性を指定します。
intermediateを使用すると、依存先リソースの状態がONLINEまたはINTERMEDIATEのいずれかの場合にOracle Clusterwareでこのリソースを起動できるように指定できます。指定しない場合、Oracle Clusterwareでこのリソースを起動するには、リソースの状態がONLINEである必要があります。

globalを使用すると、Oracle Clusterwareでこのリソースを起動する条件としてリソースが同じサーバー上に存在する必要がないように指定できます。指定しない場合、Oracle Clusterwareでこのリソースを起動するには、同じサーバー上にリソースが存在する必要があります。

リソースのリソース・タイプにhard依存性を指定した場合は、指定したタイプの任意のリソースが実行されていると、このリソースを起動できます。

注意:
hard起動依存性を持つリソースにはpullup起動依存性も定義することをお薦めします。

- weak([concurrent:][global:][uniform:]{resource_name | type:resource_type}): 指定したリソースが実行されているかどうかにかかわらず、このリソースを起動する場合、リソースにweak起動依存性を指定します。このリソースの起動を試行すると、このリソースが依存する任意のリソースが実行されていない場合は、それらのリソースの起動も試行されます。
concurrentを使用すると、依存先リソースの起動時にOracle Clusterwareで依存リソースを起動できるように指定できます。concurrentを指定しない場合、Oracle Clusterwareで依存リソースを起動するには、リソースの起動が完了している必要があります。

globalを使用すると、Oracle Clusterwareで依存リソースを起動する条件としてリソースが同じサーバー上に存在する必要がないように指定できます。

uniformを使用すると、リソースが実行可能なすべての場所でリソースのすべてのインスタンスを起動できます。修飾子を指定しない場合(デフォルトの場合)、リソースは、依存先リソースと同じサーバー上で起動します。

リソースのリソース・タイプにweak起動依存性を指定した場合は、指定したタイプの任意のリソースが実行されていると、このリソースを起動できます。

- attraction([intermediate:]{resource_name | type:resource_type}): 指定した特定のリソースまたは特定のタイプの任意のリソースと同じサーバーでこのリソースを実行する場合、attraction起動依存性を使用します。
intermediateを使用すると、INTERMEDIATE状態になっている、このリソースが依存するリソース・エンティティにこのリソースが誘引されることを指定できます。指定しない場合、依存リソースを誘引するには、リソースの状態がONLINEである必要があります。

リソースのリソース・タイプにattraction依存性を指定した場合、依存リソースは、指定したタイプの任意のリソースに誘引されます。

- pullup[:always]([intermediate:][global:]{resource_name | type:resource_type}): リソースにpullup起動依存性を指定すると、このリソースは、指定したリソースの起動結果として起動します。
pullupにalways修飾子を使用すると、TARGET属性の値がONLINEまたはOFFLINEのいずれでも、その値に関係なくOracle Clusterwareはこのリソースを起動します。そうでない場合は、always修飾子を指定しないと、このリソース用のTARGET属性の値がONLINEのときにのみ、Oracle Clusterwareはこのリソースを起動します。

intermediateを使用すると、依存先リソースの状態がONLINEまたはINTERMEDIATEのいずれかの場合にOracle Clusterwareでこのリソースを起動できるように指定できます。指定しない場合、Oracle Clusterwareでこのリソースを起動するには、リソースの状態がONLINEである必要があります。

globalを使用すると、Oracle Clusterwareでこのリソースを起動する条件として、このリソースの依存先リソースが同じサーバー上に存在する必要がないように指定できます。指定しない場合、Oracle Clusterwareでこのリソースを起動するには、このリソースの依存先リソースが同じサーバー上に存在する必要があります。

リソースのリソース・タイプにpullup依存性を指定した場合、指定したタイプの任意のリソースが起動すると、Oracle Clusterwareはこのリソースを起動できます。

注意:
hard起動依存性を持つリソースにはpullup起動依存性も定義することをお薦めします。

- dispersion[:active]([intermediate:]{resource_name | type:resource_type}): 指定したリソースまたは特定のタイプのリソースとは異なるサーバーで実行するリソースにdispersion起動依存性を指定します。リソースは、サーバーの可用性に応じて、同じサーバーで実行されることがあります。
active修飾子を使用して依存性dispersionを構成すると、依存リソースが別のリソースと同じ場所に配置されていて、別のサーバーがオンラインになった場合、Oracle Clusterwareは別サーバーへの依存リソースの再配置を試行します。Oracle Clusterwareは、active修飾子が指定されないかぎり、新しく利用可能になったサーバーへのリソースの再配置を行いません。

intermediateを使用すると、リソースの状態がONLINEまたはINTERMEDIATEのいずれかである場合にOracle Clusterwareで依存リソースを再配置できるように指定できます。指定しない場合、依存リソースを分散するには、リソースの状態がONLINEである必要があります。

関連項目:
起動依存性の詳細は、「起動依存性」を参照してください。

START_TIMEOUT

startアクションを実行できる最大時間(秒単位)。アクションが指定された時間内に完了しなかった場合、Oracle Clusterwareはエラー・メッセージを戻します。この属性に値が指定されていなかったり、0秒が指定されている場合、Oracle ClusterwareはSCRIPT_TIMEOUT属性の値を使用します。

使用例

START_TIMEOUT=30

関連項目:
この属性の詳細は、「SCRIPT_TIMEOUT」を参照してください。

STOP_DEPENDENCIES

リソースを停止する際にOracle Clusterwareで考慮する一連の関係を指定します。

構文

STOP_DEPENDENCIES=dependency(resource_set) [dependency(resource_set)] ...

前述の構文例で、変数は次のように定義されます。

- dependency: 指定可能な値はhardのみです。

- resource_set: 構成するリソースが依存しているリソース・エンティティ(個々のリソースまたはリソース・タイプのいずれか)をres1[, res2[, ...]]の形式で指定したカンマ区切りリスト。
各リソース・エンティティは次のように定義されます。

[modifier1:[modifier2:][modifier3:]] resource_name | type:resource_type

前述の構文例で、resource_nameは特定のリソースの名前、type:resource_typeは特定のリソース・タイプの名前です。リソース・タイプの前にはtype:と記述する必要があります。

必要に応じて、修飾子を指定してリソース・エンティティの依存性をさらに詳細に構成できます。リソース・エンティティに接頭辞として次の修飾子を指定することで、各依存性を変更することができます。

hard([intermediate:][global:][shutdown:]{resource_name | type:resource_type}): 指定したリソースまたは特定のリソース・タイプのリソースが停止した場合に停止させるリソースにhard停止依存性を指定します。

intermediateを使用すると、リソースの状態がONLINEまたはINTERMEDIATEのいずれかである場合に依存リソースの状態をONLINEのままにできるように指定できます。指定しない場合、リソースの状態がONLINEでないかぎり、Oracle Clusterwareは依存リソースを停止します。

globalを使用すると、クラスタ内の任意のノード上にあるリソースの状態がONLINEの場合に、依存リソースの状態がONLINEのままになるように指定できます。指定しない場合、同じサーバー上にあるリソースがオフラインになると、Oracle Clusterwareは依存リソースを停止します。

shutdownを使用すると、Oracle Clusterwareスタックが停止する場合にこの依存性を適用します。これは、個々のリソースの計画済または計画外イベントには影響を及ぼすことなく、スタックを停止するときにリソースの停止順序に影響を与える便利な方法です。この依存性は、shutdown修飾子とともに使用されると、リソースが直接停止されてもスタックが停止している場合にのみ有効になりません。

関連項目:
停止依存性の詳細は、「停止依存性」を参照してください。

STOP_TIMEOUT

stopまたはcleanアクションを実行できる最大時間(秒単位)。アクションが指定された時間内に完了しなかった場合、Oracle Clusterwareはエラー・メッセージを戻します。この属性が指定されていない場合または0秒が指定されている場合、Oracle ClusterwareはSCRIPT_TIMEOUT属性の値を使用します。

使用例

STOP_TIMEOUT=30

関連項目:

- この属性の詳細は、「SCRIPT_TIMEOUT」を参照してください。

- この属性の詳細は、「START_TIMEOUT」を参照してください。

TYPE

リソースの作成時に示されるリソースのタイプ。リソースの作成時には、この属性を指定する必要があります。

使用例

関連項目:
リソース・タイプの詳細は、「リソース・タイプ」を参照してください。

UPTIME_THRESHOLD

UPTIME_THRESHOLDの値は、Oracle Clusterwareがリソースが安定しているとみなすまでに、リソースが稼働中である必要がある時間の長さを表します。UPTIME_THRESHOLD属性の値を設定すると、リソースの安定性を示すことができます。

この属性の値は、数値の後に秒(s)、分(m)、時間(h)、日(d)または週(w)を示す文字を付けて入力します。たとえば、7hという値は、稼働時間のしきい値が7時間であることを示します。

Oracle Clusterwareは、UPTIME_THRESHOLDに指定した時間が経過すると、停止、起動、再配置または障害のようなリソース状態が変更されるイベントが次に発生したときに、RESTART_COUNTの値を0にリセットします。RESTART_COUNTの値がRESTART_ATTEMPTSに設定した値に達すると、Oracle Clusterwareはアラートを生成します。カウンタは、次回リソースの障害発生時や再起動時に、効果的にリセットされます。しきい値は、再起動がカウントされて破棄される時間の長さを示しています。しきい値に達してリソースが失敗すると、再起動されます。

注意:
RESTART_COUNTの値がRESTART_ATTEMPTSに設定した値に達すると、Oracle Clusterwareはクラスタウェア・アラート・ログ・ファイルにアラートを記録します。

関連項目:

- この属性の詳細は、「RESTART_ATTEMPTS」を参照してください。

- この属性の詳細は、「RESTART_COUNT」を参照してください。

読取り専用のリソース属性

次の属性は、特定のリソースに対してcrsctl status resourceコマンドを実行すると参照できます。Oracle Clusterwareは、ユーザーがリソースを登録した際にこれらの属性を設定します。

- ACTION_FAILURE_EVENT_TEMPLATE

- INTERNAL_STATE

- LAST_SERVER

- LAST_STATE_CHANGE

- PROFILE_CHANGE_EVENT_TEMPLATE

- RESTART_COUNT

- STATE

- STATE_CHANGE_EVENT_TEMPLATE

- STATE_DETAILS

- TARGET

ACTION_FAILURE_EVENT_TEMPLATE

これは、ora.*リソース用に内部的に管理される属性の1つです。この属性を編集することはできません。

INTERNAL_STATE

現在ポリシー・エンジンがリソースで実行しているアクション(ある場合)について説明する、内部的に管理される読取り専用の属性です。指定可能な値とその説明は、次のとおりです。

- STARTING: ポリシー・エンジンは、現在リソースを起動しています。

- STOPPING: ポリシー・エンジンは、現在リソースを停止しています。

- CLEANING: ポリシー・エンジンは、現在リソースをクリーンアップしています。

- STABLE: ポリシー・エンジンは、現在リソースでアクションを実行していません。
ただし、その他のいくつかのコマンドの一環として、そのリソースがまだロックされている可能性があります。

LAST_SERVER

cluster_resourceタイプのリソースの場合、内部的に管理される読取り専用の属性の1つで、ソースのstartアクションが最後に成功したサーバーの名前が設定されています。

local_resourceタイプのリソースの場合、リソース・インスタンスが固定されるサーバーの名前です。

LAST_STATE_CHANGE

ポリシー・エンジンがリソースの現在の状態を登録した時点について説明する、内部的に管理される読取り専用の属性です。crsdの再起動時に発生する、リソースの状態が変更された時点、またはポリシー・エンジンがその状態を検出した時点のタイムスタンプである場合があります。

PROFILE_CHANGE_EVENT_TEMPLATE

これは、ora.*リソース用に内部的に管理される属性の1つです。この属性を編集することはできません。

RESTART_COUNT

Oracle Clusterwareデーモンが使用する内部的に管理される属性で、リソース再起動の試行回数を0(ゼロ)からRESTART_ATTEMPTS属性に指定した値までカウントします。この属性を編集することはできません。

STATE

Oracle Clusterwareからレポートされるとリソースの現在の状態が反映される、内部的に管理される属性です。リソースの状態は次のいずれかです。

- ONLINE: リソースはオンラインで、リソースの監視が有効です(「CHECK_INTERVAL」を参照)。

- OFFLINE: リソースはオフラインで、オフラインのリソースの監視が構成されている場合は、それのみが有効です(「OFFLINE_CHECK_INTERVAL」を参照)。

- INTERMEDIATE: リソースは部分的にオンラインであるか、前にオンラインであることが認識されているものの、それ以降の状態確認の試行が失敗しています。リソースの監視は有効です(「CHECK_INTERVAL」を参照)。

- UNKNOWN: リソースは管理不可能で、現在の状態は不明であるため、手動操作を行ってその操作を再開する必要があります。この状態のリソースは監視されません。

STATE_CHANGE_EVENT_TEMPLATE

これは、ora.*リソース用に内部的に管理される属性の1つです。この属性を編集することはできません。

STATE_DETAILS

内部的に管理される読取り専用の属性の1つです。リソースの状態の詳細が設定されています。

リソースの4つの状態(ONLINE、OFFLINE、UNKNOWNおよびINTERMEDIATE)は、マウント、アンマウント、オープンなどの異なるリソース固有の値にマッピングされることがあります。リソース・エージェントの開発者は、STATE_DETAILS属性を使用して、リソースとリソースの状態とのマッピングに関する詳細な説明を提供できます。

詳細の提供は任意です。詳細が提供されない場合、Oracle Clusterwareは、予想される4つのリソースの状態のみを使用します。また、エージェントがこれらの詳細を提供できない場合(リソースの状態の値に対しても発生する可能性がある)、Oracle Clusterwareはこの属性の値を設定して、リソースが現在の状態になった理由を示す最小限の詳細情報を提供します。

TARGET

内部用の読取り専用属性の1つで、リソースの望ましい状態について説明します。ただし、crsctl start resource_nameまたはcrsctl stop resource_nameコマンドを使用すると、この属性の値に影響が及ぶ場合があります。

サード・パーティ製アプリケーションのアクション・スクリプトの例

この項では、スクリプト・エージェントを使用するサード・パーティ製アプリケーションの例を示します。

例B-1に、Apache Webサーバーをフェイルオーバーするアクション・スクリプトを示します。

例B-1 Apacheアクション・スクリプト

#!/bin/sh

HTTPDCONFLOCATION=/etc/httpd/conf/httpd.conf
WEBPAGECHECK=http://<MyVIP>:80/icons/apache_pb.gif

case $1 in
'start')
/usr/sbin/apachectl -k start -f $HTTPDCONFLOCATION
RET=$?
;;
sleep(10)
;;
'stop')
/usr/sbin/apachectl -k stop
RET=$?
;;
'clean')
/usr/sbin/apachectl -k stop
RET=$?
;;
'check')
/usr/bin/wget -q --delete-after $WEBPAGECHECK
RET=$?
;;
*)
RET=0
;;
esac
# 0: success; 1 : error
if [ $RET -eq 0 ]; then
exit 0
else
exit 1
fi

例B-2に、xclockスクリプトを示します。このスクリプトは、すべてのLinuxおよびUNIXプラットフォームでデフォルト・バイナリとして利用できるxclockを使用した簡単なアクション・スクリプトです。

例B-2 xclockアクション・スクリプト

#!/bin/bash
# start/stop/check script for xclock example
# To test this change BIN_DIR to the directory where xclock is based
# and set the DISPLAY variable to a server within your network.

BIN_DIR=/usr/X11R6/bin
LOG_DIR=/tmp
BIN_NAME=xclock
DISPLAY=yourhost.domain.com:0.0
export DISPLAY
exit_code=0

if [ ! -d $BIN_DIR ]
then
echo "start failed"
exit 2
fi

PID1=`ps -ef | grep $BIN_NAME | grep -v grep | grep -v xclock_app | awk '{ print $2 }'`
case $1 in
'start')
if [ "$PID1" != "" ]
then
status_p1="running"
else
if [ -x $BIN_DIR/$BIN_NAME ]
then
umask 002
${BIN_DIR}/${BIN_NAME} & 2>${LOG_DIR}/${BIN_NAME}.log
status_p1="started"
else
echo `basename $0`": $BIN_NAME: Executable not found"
exit_code=1
fi
fi

echo "$BIN_NAME: $status_p1"
exit $exit_code
;;

'stop')
if [ "${PID1}" != "" ]
then
kill -9 ${PID1} && echo "$BIN_NAME daemon killed"
else
echo "$BIN_NAME: no running Process!"
fi
exit $exit_code
;;
'check')
if [ "$PID1" != "" ]
then
echo "running"
exit 0
else
echo "not running"
exit 1
fi
;;*)
echo "Usage: "`basename $0`" {start|stop|check}"
;;
esac

例B-3に、ファイルを監視するエージェントのシェル・スクリプトの例を示します。エージェントは、起動するとファイル(属性を使用して指定されるファイル)を作成し、停止するとファイルを削除します。CHECKアクションは、ファイルが存在するかどうかを単にチェックするものです。接頭辞_CRS_を持つ変数は、環境のスクリプトに指定する属性値です。

例B-3 アクション・スクリプトの例

#!/bin/sh
TOUCH=/bin/touch
RM=/bin/rm
PATH_NAME=/tmp/$_CRS_NAME

#
# These messages go into the CRSD agent log file.
echo " *******   `date` ********** "
echo "Action script '$_CRS_ACTION_SCRIPT' for resource[$_CRS_NAME] called for action $1"
#

case "$1" in
'start')
echo "START entry point has been called.."
echo "Creating the file: $PATH_NAME"
$TOUCH $PATH_NAME
exit 0
;;

'stop')
echo "STOP entry point has been called.."
echo "Deleting the file: $PATH_NAME"
$RM $PATH_NAME
exit 0
;;

'check')
echo "CHECK entry point has been called.."
if [ -e $PATH_NAME ]; then
echo "Check -- SUCCESS"
exit 0
else
echo "Check -- FAILED"
exit 1
fi
;;

'clean')
echo "CLEAN entry point has been called.."
echo "Deleting the file: $PATH_NAME"
$RM -f $PATH_NAME
exit 0
;;

esac

C OLSNODESのコマンド・リファレンス

この付録では、olsnodesコマンドの構文およびコマンド・オプションについて説明します。

内容は次のとおりです。

- OLSNODESの使用

- 概要

- 使用上の注意

- OLSNODESコマンドのサマリー

OLSNODESの使用

この項では、OLSNODESコマンドの使用に関連する項目について説明します。

- 概要

- 使用上の注意

概要

olsnodesコマンドは、クラスタに参加しているすべてのノードのリストおよびその他の情報を表示します。

このコマンドを使用して、クラスタが操作可能な状態であること、およびすべてのノードがクラスタのメンバーとして登録されていることを迅速にチェックできます。また、このコマンドを使用して、ノード番号を簡単に取得することもできます。

使用上の注意

使用方法

このコマンドは、-n allオプションが使用されている場合にノード名のリストを取得するためにクラスタ検証ユーティリティ(CLUVFY)で使用されます。

このコマンドは、$ORA_CRS_HOME/binディレクトリに格納されています。このコマンドは、CRSデーモンが起動されている場合にのみ使用できます。

権限およびセキュリティ

このコマンドは、rootユーザー、Oracle ClusterwareをインストールしたユーザーまたはOracle Databaseをインストールしたユーザーとして実行できます。

OLSNODESコマンドのサマリー

olsnodesコマンドでは、キーワードは使用しませんが、1つ以上のオプションを指定できます。使用可能なオプションは、表C-1を参照してください。

構文

olsnodes [[-n] [-i] [-s] [-t] [node_name | -l [-p]] | [-c]] [-g] [-v]

コマンド・パラメータを指定せずに、olsnodesコマンドを発行すると、クラスタのノードのリストが戻されます。

[root@node1]# olsnodes
node1
node2
node3
node4

表C-1 OLSNODESのコマンド・オプション

コマンド

説明

-n

クラスタに参加しているすべてのノードを表示し、割り当てられているノード番号も含まれます。

-i

クラスタに参加しているすべてのノードを表示し、各ノードに割り当てられている仮想インターネット・プロトコル(VIP)・アドレスも含まれます。

-s

ノードのステータス(activeまたはinactive)を表示します。

-t

ノード・タイプ(pinnedまたはunpinned)を表示します。

node_name

特定のノードの情報を表示します。

-l [-p]

ローカル・ノードを表示し、ローカル・ノードへのプライベート・インターコネクトを含めます。-pオプションは、-lオプションとともに指定したときのみ有効です。

-c

クラスタの名前を表示します。

-g

クラスタ検証の詳細情報を記録します。

-v

クラスタ検証の情報を冗長モードで記録します。My Oracle Supportからの指示があった場合にのみ、デバッグ・モードで使用します。

使用上の注意

例

このコマンドの最も一般的な使用方法について説明します。次に例を示します。

例1: 現在クラスタ内にあるすべてのノードのVIPアドレスの表示

現在クラスタのメンバーである各ノードのVIPアドレスを表示するには、次のコマンドを使用します。

[root@node1]# olsnodes -i
node1    168.92.1.1
node2   168.192.2.1
node3   168.192.3.1
node4   168.192.4.1

例2: クラスタ・メンバーのノード名およびノード番号の表示

クラスタ内の各ノードのノード名およびノード番号を表示するには、次のコマンドを使用します。

[root@node1]# olsnodes -n
node1    1
node2    2
node3    3
node4    4

D Oracle Interface Configurationツール(OIFCFG)のコマンド・リファレンス

Oracle Interface Configurationツール(OIFCFG)のコマンドライン・インタフェースにより、ネットワーク・インタフェースを定義および管理できます。Oracle Clusterware環境では、次の作業に対してOIFCFGコマンドを使用できます。

- ネットワーク・インタフェースのコンポーネントへの割当ておよび割当て解除

- 特定のネットワーク・インタフェースを使用するようにコンポーネントを設定

- コンポーネント構成情報の取得

内容は次のとおりです。

- OIFCFGコマンドライン・インタフェースの起動

- OIFCFGの使用方法の概要

OIFCFGコマンドライン・インタフェースの起動

OIFCFGを起動する前に、コマンドに-globalオプションを指定する場合は、少なくともローカル・ノードで(可能な場合はすべてのノードで)Oracle Clusterwareを起動していることを確認します。

注意:
グローバル・ネットワーク・インタフェースを変更するには、Oracle Clusterwareがすべてのクラスタ・ノードで実行されている必要があります。

Oracle Clusterwareソフトウェアをインストールしたユーザーとして、Grid_home/bin/ディレクトリからOIFCFGを実行します。次に例を示します。

$ ./oifcfg

OIFCFGのオンライン・ヘルプを表示するには、oifcfg -helpコマンドを実行します。

$ ./oifcfg -help

Name:  oifcfg - Oracle Interface Configuration Tool.

Usage:  oifcfg iflist [-p [-n]]
oifcfg setif {-node nodename | -global} {if_name/subnet:if_type}...
oifcfg getif [-node nodename | -global] [ -if if_name[/subnet] [-type if_type]
]
oifcfg delif {{-node nodename | -global} [if_name[/subnet]] [-force] | -force}
oifcfg [-help]

nodename       - name of the host, as known to a communications network
if_name        - name by which the interface is configured in the system
subnet         - subnet address of the interface
if_type        - type of the interface {cluster_interconnect | public}

OIFCFGの使用方法の概要

この項の内容は次のとおりです。

- OIFCFGコマンドの書式

- OIFCFGコマンド

- OIFCFGコマンドのパラメータ

- OIFCFGの使用方法

- OIFCFGの例

OIFCFGコマンドの書式

oifcfg iflist [-p [-n]]
oifcfg setif {-node nodename | -global} {if_name/subnet:if_name}...
oifcfg getif [-node nodename | -global] [ -if if_name[/subnet] [-type if_type]]
oifcfg delif {{-node nodename | -global} [ -if if_name[/subnet]] [-force] | -force}
oifcfg [-help]

OIFCFGコマンド

表D-1に示されたOIFCFGコマンドのいずれかを入力できます。

表D-1 OIFCFGコマンド

コマンド

説明

oifcfg iflist [-p [-n]]

setifで構成できる使用可能なインタフェースを示します。iflistコマンドは、オペレーティング・システムに問い合せ、このノードに存在するネットワーク・インタフェースを検出します。このコマンドを使用して、次の2つのオプションを指定できます。

- -p: 経験則に基づいて想定されるインタフェース・タイプ(プライベート、パブリックまたは不明)が表示されます。

- -n: ネットマスクが表示されます。

oifcfg setif

インタフェースのインタフェース・タイプ(パブリックまたはクラスタ・インターコネクト)を設定します。

oifcfg getif

setifコマンドによってインタフェース・タイプが定義されているインタフェースを、インタフェースのタイプとともに示します。

oifcfg delif

グローバル・インタフェースまたはノード固有のインタフェースとして格納されたネットワーク構成を削除します。クラスタのすべてのノードから格納されたネットワーク構成を削除するには、-forceオプションを使用し、-nodeまたは-globalオプションは指定しません。

OIFCFGコマンドのパラメータ

この項では、OIFCFGコマンドのパラメータを示します。実行するコマンドによっては、一部のパラメータがオプションとなることに注意してください。

-node nodename

olsnodesコマンドの出力結果にリストされるOracle Clusterwareノードの名前。OLSNODESコマンドの詳細は、付録C「OLSNODESのコマンド・リファレンス」を参照してください。

-global

ネットワーク・インタフェースは、グローバル・インタフェースとしても(iflistコマンドによりレポートされた場合)、ノード固有のインタフェースとしても格納できます。

- Oracle Real Application Clusters(Oracle RAC)クラスタのすべてのノードが同じサブネットに接続された同じインタフェースを使用している場合、インタフェースはグローバル・インタフェースとして格納されます。グローバル・インタフェース(各パブリック・サブネットのすべてのノード、および各プライベート・サブネットのすべてのノードが、それぞれ同一ネットワーク・インタフェースを持つ構成)は、推奨構成であるだけでなく、デフォルトのインストール構成です。

- インタフェースは、ノード固有の(ローカル)インタフェースとして格納できます。

注意:
Oracleでは、現在、クラスタ内の各ノードで複数のネットワーク・インタフェースを持つことはできません。各パブリック・サブネットのすべてのノード、各プライベート・サブネットのすべてのノードが、それぞれ同一のネットワーク・インタフェースを持つように構成することをお薦めします。

-if if_name

システムでインタフェースが構成されるときの名前。

subnet

インタフェースのサブネット番号

-type if_type

インタフェースのタイプ(publicまたはcluster_interconnect)

-help

OIFCFGコマンドのオンライン・ヘルプを表示します。

OIFCFGの使用方法

- ネットワーク・インタフェースの指定には、次の形式を使用します。

if_name/subnet:if_type

この指定では、次の項目を使用して、ネットワーク・インタフェースを一意に識別します。

- インタフェース名
oifcfg setifコマンドを使用する場合、インタフェース名には、任意の文字列に一致するアスタリスク(*)などのワイルドカード文字を含めることができます。ただし、ワイルドカードを含むインタフェース名は二重引用符("")で囲む必要があります。

注意:
Oracle Database 11gリリース2(11.2.0.2)より前のデータベースでワールドカードを使用した場合、Oracleは、ローカル・ノードでワイルドカードを展開してインタフェース名を解決します。したがって、Oracle Database 11gリリース2(11.2.0.2)より前のデータベースが使用されるクラスタでワイルドカードを使用することはお薦めしません。Oracle Database 11gリリース2(11.2.0.2)より前のデータベースでワイルドカードを使用する場合は、そのデータベースで、かわりにCLUSTER_INTERCONNECTSパラメータを使用する必要があります。

- 関連付けられたサブネット

- インタフェース・タイプ
インタフェース・タイプは、ネットワークを構成する目的を示します。サポートされるインタフェース・タイプは次のとおりです。

- public: Oracle Netや仮想インターネット・プロトコル(VIP)・アドレスなど、Oracle RACインスタンスの外部にあるコンポーネントと通信するために使用できるインタフェース

- cluster_interconnect: インスタンス間の通信やキャッシュ・フュージョン脚注1 通信を提供するため、クラスタ・インターコネクトに使用されるプライベート・インタフェース

cluster_interconnectのインタフェース・タイプを設定すると、それは起動時にインスタンスに適用されます。変更内容はインスタンスを再起動するまで反映されません。

次の指定では、アドレス204.152.65.0にあるクラスタ・インターコネクトとしてqfe0を識別します。

qfe0/204.152.65.0:cluster_interconnect

- Oracle Universal Installerは、OIFCFGを使用して、使用可能なインタフェースの識別および表示を行います。

- インタフェース名の変更による影響は、どの名前を変更するか、またIPアドレスも変更するかどうかによって異なります。インタフェース名のみを変更する場合、影響はわずかです。Oracle Cluster Registry(OCR)内に格納されたパブリック・インタフェースの名前を変更する場合、各ノードのnodeappsを変更する必要があります。したがって、この変更を有効にするために、nodeappsを停止する必要があります。

- グローバル変更を実行する場合は、クラスタのすべてのメンバー上でOracle Clusterwareを再起動する必要があります。ローカル変更の場合は、ノードの再起動のみ実行する必要があります。データベースのインターコネクトの変更は、インスタンスの起動時に行われます。ただし、Oracle Clusterwareのインターコネクトは、異なる場合があります。

- インターコネクトはインスタンスの起動時に選択されるため、OIFCFGコマンドの発行のみで、実行中のシステムにすぐに影響することはありません。そのかわり、このコマンドにより影響される可能性のあるコンポーネントの再起動後に、変更内容は有効になります。

- OIFCFGを使用してクラスタ全体のネットワーク分類を変更するには、そのグリッド・プラグ・アンド・プレイ・プロファイルが更新可能になるように、既知のすべてクラスタ・ノードが起動されている必要があります。

OIFCFGの例

次の例では、OIFCFGコマンドの一般的な使用方法をいくつか示します。

例1   ネットワーク・インタフェースの名前のリスト

ローカル・ノード上で使用可能なすべてのインタフェースのインタフェース名とサブネットを表示するには、OIFCFGを使用して、次の例に示すようにiflistキーワードを実行します。

oifcfg iflist
eth0     172.19.141.0
eth1     172.21.65.0

例2   ネットワーク情報の取得

また、getifコマンドを使用すると、特定のOIFCFG情報を取得できます。

たとえば、Oracle Clusterwareのインストール後に、次のコマンドを入力することで、パブリックおよびクラスタ・インターコネクトが適切な値に設定されているかどうかを確認できます。

$ oifcfg getif

このコマンドは、次のようなglobal publicおよびcluster_interconnectの値を戻します。

eth0 172.19.141.0 global public
eth1 172.21.65.0 global cluster_interconnect

例3   グローバル・インタフェースの格納

インタフェースを格納するには、setifキーワードを使用します。たとえば、サブネットが172.19.141.0のインタフェースeth0をグローバル・インタフェース(クラスタおよびOracle Clusterware内のすべてのOracle RACインスタンスに対するインターコネクトとして使用するインタフェース)として格納するには、次のコマンドを使用します。

oifcfg setif -global eth0/172.19.141.0:cluster_interconnect

注意:
実行されていないノードでグリッド・プラグ・アンド・プレイ・プロファイルを更新できないため、setifコマンドを実行するときはすべてのノードが実行されていることを確認します。

例4   格納されたインタフェースの削除

グローバルまたはノード固有のインタフェースとして格納された構成を削除するには、oifcfg delifコマンドを使用します。特定のノード固有のインタフェースまたはグローバル・インタフェースは、コマンドラインにインタフェース名を指定することで(オプションでサブネットを指定して)削除できます。

注意:
コマンドラインでoifcfg delifのみを入力し、他の引数を指定しない場合、OIFCFGはクラスタ内のすべてのノードですべてのインタフェースを削除します。

たとえば、次のコマンドでは、サブネット172.21.65.0のグローバル・インタフェースeth1が削除されます。

oifcfg delif -global eth1/172.21.65.0

次の例では、コマンドによって、OIFCFGで割り当てられたすべてのグローバル・インタフェースが削除されます。

oifcfg delif -global

脚注の説明

脚注1: キャッシュ・フュージョンは、ブロックを保持しているインスタンスのメモリー・キャッシュから要求側インスタンスのメモリー・キャッシュにブロックを直接コピーするディスク不要のキャッシュ一貫性メカニズムです。

E CRSCTLユーティリティのリファレンス

この付録では、Oracle Clusterware制御(CRSCTL)ユーティリティを使用してOracle Clusterwareを管理する方法について説明します。

注意:
My Oracle Supportで指示された場合を除き、oraで始まる名前を持つOracleエンティティ(リソース、リソース・タイプ、サーバー・プールなど)でCRSCTLコマンドを使用しないでください。Oracleエンティティではサーバー制御ユーティリティ(SRVCTL)を使用します。

内容は次のとおりです。

- CRSCTLの概要

- 使用上の注意

- 非推奨のサブプログラムまたはコマンド

- CRSCTLのコマンド・リファレンス

- デュアル環境のCRSCTLコマンド

- Oracle RAC環境のCRSCTLコマンド

- Oracle Restart環境のCRSCTLコマンド

- トラブルシューティングおよび診断出力

CRSCTLの概要

CRSCTLはユーザーとOracle Clusterwareのインタフェースであり、Oracle Clusterwareオブジェクト用のOracle Clusterware APIを解析およびコールします。

Oracle Clusterware 11gリリース2(11.2)にはクラスタ対応コマンドが導入されており、これらを使用して、チェック、起動、停止操作をクラスタで実行できます。これらのコマンドは、操作に応じてクラスタ内の任意のノードから、クラスタ内の別のノードで、またはクラスタ内のすべてのノードで実行できます。

CRSCTLコマンドを使用すると、次に示すいくつかの操作をOracle Clusterwareで実行できます。

- Oracle Clusterwareリソースの起動および停止

- Oracle Clusterwareデーモンの有効化および無効化

- クラスタの状態のチェック

- サード・パーティ製アプリケーションのリソースの管理

- Intelligent Platform Management Interface(IPMI)とOracle Clusterwareとの統合による障害分離サポートおよびクラスタの整合性の実現

- Oracle Clusterwareコンポーネントのデバッグ

クラスタ用に変更された(クラスタ対応)コマンド

あるノードでクラスタ対応コマンドを実行してクラスタ内の別のノードで操作を実行できます。これらの操作はリモート操作と呼ばれます。これによって、たとえば、すべてのノードのOracle Clusterwareのステータスをチェックするために各ノードにログインする必要がなくなるため、管理が簡素化されます。

クラスタ対応コマンドはオペレーティング・システムにはまったく依存しませんが、OHASD(Oracle高可用性サービス・デーモン)に依存します。このデーモンが実行されているときに、リモート・ノードの起動、停止、ステータスのチェックなどのリモート操作を実行できます。

クラスタ対応コマンドには次のコマンドがあります。

- crsctl check cluster

- crsctl start cluster

- crsctl stop cluster

使用上の注意

使用方法

- CRSCTLユーティリティは、Grid_home/binディレクトリに格納されています。CRSCTLコマンドを実行するには、次の例に示すように、オペレーティング・システム・プロンプトでまずcrsctl、次にコマンドおよび引数を入力します。

crsctl stop crs

- CRSCTLコマンドには3つのカテゴリがあります。

- Oracle Real Application Clusters(Oracle RAC)環境またはOracle Restart環境のいずれかで使用するコマンド

- Oracle RAC環境でのみ使用するコマンド

- Oracle Restart環境でのみ使用するコマンド

- 多くのCRSCTLコマンドでは、-fオプションを使用することによってチェックが無視されコマンドが強制実行されます。
たとえば、あるリソースに対するcrsctl stop resourceコマンドに強制オプション指定すると、そのリソースが実行中であり、それを依存先としている依存リソースも実行中である場合、強制オプションはエラー・メッセージを省略し、かわりに、すべての依存リソースを停止または再配置してからコマンドに示すリソースを停止します。

- Oracle Clusterware 11gリリース2(11.2)の管理に、11gリリース2(11.2)より前のバージョンのCRSCTLを使用しないでください。

CRSCTLヘルプの使用

CRSCTLのヘルプ情報を出力するには、次のコマンドを使用します。

crsctl -help

startなどの特定のコマンドのヘルプを出力する場合は、次の例に示すように、コマンドを入力し、-helpを末尾に追加します。

crsctl start -help

-helpのかわりに省略形-hまたは-?を使用することもできます(このオプションはLinux、UNIXおよびWindows環境で機能します)。

非推奨のサブプログラムまたはコマンド

表E-1は、Oracle Clusterware 11gリリース2(11.2)で非推奨のコマンドおよびそれらの代替(同じまたは類似した機能を実行するのに使用可能)を示しています。これらのコマンドはOracle Restart環境ではサポートされません。

表E-1 非推奨のCRSCTLコマンドおよびその代替

非推奨コマンド

代替コマンド

crs_stat

crsctl check cluster -all

crsctl stat res -t

crs_register

crsctl add resource

crsctl add type

crsctl modify resource

crsctl modify type

crs_unregister

crsctl stop resource

crsctl modify resource resource_name -attr "AUTO_START=never"

crs_start

crsctl start resource

crsctl start crs

crsctl start cluster

crs_stop

crsctl stop resource

crsctl stop crs

crsctl stop cluster

crs_getperm

crsctl getperm resource

crsctl getperm type

crs_profile

crsctl add resource

crsctl add type

crsctl status resource

crsctl status type

crsctl modify resource

crsctl modify type

crs_relocate

crsctl relocate resource

crs_setperm

crsctl setperm resource

crsctl setperm type

crsctl check crsd

crsctl check crs

crsctl check cssd

crsctl check css

crsctl check evmd

crsctl check evm

crsctl debug res log resource_name:level

crsctl set log

crsctl set css votedisk

crsctl add css votedisk

crsctl delete css votedisk

crsctl query css votedisk

crsctl replace votedisk

crsctl start resources

crsctl start resource -all

crsctl stop resources

crsctl stop resource -all

CRSCTLのコマンド・リファレンス

この項では、CRSCTLコマンドを3つのカテゴリに分けて説明します。

- デュアル環境のCRSCTLコマンド

- Oracle RAC環境のCRSCTLコマンド

- Oracle Restart環境のCRSCTLコマンド

デュアル環境のCRSCTLコマンド

Oracle RACまたはOracle Restart環境で次のコマンドを使用できます。

- crsctl add resource

- crsctl add type

- crsctl check css

- crsctl check evm

- crsctl delete resource

- crsctl delete type

- crsctl get hostname

- crsctl getperm resource

- crsctl getperm type

- crsctl modify resource

- crsctl modify type

- crsctl setperm resource

- crsctl setperm type

- crsctl start resource

- crsctl status resource

- crsctl status type

- crsctl stop resource

crsctl add resource

Oracle Clusterwareで管理するリソースを登録するには、crsctl add resourceコマンドを使用します。リソースには、アプリケーション・プロセス、データベース、サービス、リスナーなどがあります。

構文

crsctl add resource resource_name -type resource_type [-file file_path |
-attr "attribute_name=attribute_value,attribute_name=attribute_value,..."]
[-i] [-f]

パラメータ

表E-2 crsctl add resourceコマンドのパラメータ

パラメータ

説明

resource_name

短く、わかりやすいリソース名。

-type resource_type

追加するリソースの種類。前に-typeフラグを付けます。

-file file_path

リソースを定義する属性名/値ペアが行区切りで記載されているテキスト・ファイルのパス名(絶対または相対)。

-attr "attribute_name=
attribute_value

追加するリソースの属性を2つの異なる方法で指定できます。

- -attrフラグの後に、1つ以上の属性名/値ペアをカンマで区切り、二重引用符("")で囲んで指定できます。次に例を示します。

-attr "CHECK_INTERVAL=30,START_TIMEOUT=25"

- また、特定のカーディナリティ値および特定の程度値を付加してリソース・インスタンスの属性値を指定できます。この方法は特定のサーバーに関連付けられるアプリケーションに役立ちます。-attrフラグの後の構文は次のとおりです。

attribute_name{@SERVERNAME(server_name)
[@DEGREEID(did)] | @CARDINALITYID(cid)
[@DEGREEID(did)]}=attribute_value

@SERVERNAME(server_name)構文を指定すると、指定した属性の属性値は、指定したサーバーに存在するリソース・インスタンスに限定されます。

または、@CARDINALITYID(cid)構文を指定すると、指定した属性の属性値は、特定のカーディナリティID(cid)を持つリソース・インスタンスに限定されます。

必要に応じて、@DEGREEID(did)構文をSERVERNAMEまたはCARDINALITYID構文のいずれか、または両方と組み合せて、特定のDEGREEが設定されているリソースに属性値を限定することができます。

例

CHECK_INTERVAL@SERVERNAME(node1)=45
STOP_TIMEOUT@CARDINALITYID(2)=65
STOP_TIMEOUT@SERVERNAME(node1)@DEGREEID(2)=65
STOP_TIMEOUT@CARDINALITYID(3)@DEGREEID(2)=65

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

次の場合に強制オプションを使用します。

- まだ存在しない他のリソースに依存するリソースを追加する場合。強制オプションによってチェックが無効になるため、コマンドの完了が妨げられません。

- 他のリソースへのhard依存性がリソースに設定されており、1つ以上の依存性に対する実行権限がリソース所有者にない状態でリソースを追加する場合。この場合には、強制オプションを指定しないとエラーが表示されます。

- 汎用サーバー・プールにサーバーを移動する必要がある場合があり、このために、applicationタイプのリソースを追加する場合。停止する必要のあるリソースがサーバーで現在ホスティングされている場合、強制オプションが必要です。

関連項目:
リソースおよびリソース属性の詳細は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

使用上の注意

- resource_nameパラメータおよび-type resource_typeパラメータのどちらも必須です。関連付けられたリソース・タイプをcrsctl add typeを使用して作成できます。

- 任意のユーザーがリソースを作成できますが、SERVER_POOLS=*が設定されているlocal_resourceタイプのリソースまたはcluster_resourceタイプのリソースを作成できるのはクラスタウェア管理者のみです。
リソースの定義後、どのユーザーがリソースに関する特定の操作を実行できるかはACLによって制御されます。Oracle Clusterware管理者のリストは影響しなくなります。

Windowsでは、管理者グループのメンバーがすべてを完全に制御できます。

関連項目:
ACLの詳細は、「crsctl setperm resource」を参照してください。

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。

- 属性ファイルの例を次に示します。

PLACEMENT=favored
HOSTING_MEMBERS=node1 node2 node3
RESTART_ATTEMPTS@CARDINALITYID(1)=0
RESTART_ATTEMPTS@CARDINALITYID(2)=0
FAILURE_THRESHOLD@CARDINALITYID(1)=2
FAILURE_THRESHOLD@CARDINALITYID(2)=4
FAILURE_INTERVAL@CARDINALITYID(1)=300
FAILURE_INTERVAL@CARDINALITYID(2)=500
CHECK_INTERVAL=2
CARDINALITY=2

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

例1

Oracle Clusterwareを使用してVIPをリソースとして登録するには、次のコマンドを実行します。

$ crsctl add resource app.appvip -type app.appvip.type -attr "RESTART_ATTEMPTS=2,
START_TIMEOUT=100,STOP_TIMEOUT=100,CHECK_INTERVAL=10,
USR_ORA_VIP=172.16.0.0,
START_DEPENDENCIES=hard(ora.net1.network)pullup(ora.net1.network),
STOP_DEPENDENCIES=hard(ora.net1.network)"

例2

test_type1リソース・タイプに基づくリソースを登録するには、次のコマンドを実行します。

$ crsctl add resource r1 -type test_type1 -attr "PATH_NAME=/tmp/r1.txt"
$ crsctl add resource r1 -type test_type1 -attr "PATH_NAME=/tmp/r2.txt"

crsctl add type

Oracle Clusterwareでリソース・タイプを作成するには、crsctl add typeコマンドを使用します。

構文

crsctl add type type_name -basetype base_type_name {-attr
"ATTRIBUTE=attribute_name | -file file_path,TYPE={string | int}
[,DEFAULT_VALUE=default_value][,FLAGS=[READONLY][|REQUIRED]]"}

パラメータ

表E-3 crsctl add typeコマンドのパラメータ

パラメータ

説明

type_name

xxx.yyy.typeの書式のリソース・タイプ名。リソース・タイプの名前は一意である必要があり、リソース・タイプの登録後は変更できません。

-basetype base_type_name

ベースになる既存のタイプの名前。作成するリソース・タイプのベースになるリソース・タイプは、local_resourceまたはcluster_resourceのいずれかである必要があります。

-attr

-attr引数を使用してリソース・タイプ属性を指定できます。各タイプ属性定義には最大4つのタイプ属性キーワードを含めることができ、それらはここに示す順序で表示される必要があります。1つ以上のリソース・タイプ属性の説明をカンマで区切り、二重引用符("")で囲んで入力します。属性のキーワードは次のとおりです。

1. ATTRIBUTE: 属性の名前を指定します。名前では大/小文字が区別され、空白は使用できません。

2. TYPE: 属性のタイプがintegerかstringかを指定します。

3. DEFAULT_VALUE: (オプション)属性が必須である場合、デフォルト値は不要です。必須でない属性の場合は、このリソース・タイプに基づいてリソースを作成する際にOracle Clusterwareによって使用されるデフォルト値を指定する必要があります。

4. FLAGS: (オプション)属性がREADONLYかREQUIREDかを指定します。READONLYは、このリソース・タイプのリソースを登録した後、この属性を変更できないことを意味します。
REQUIREDは、このリソース・タイプに基づくリソースを作成するときに、この属性の名前および値を指定する必要があることを意味します。この属性は必須でないと指定した場合、Oracle Clusterwareではこの属性に指定されたデフォルト値が使用されます。

複数の-attr引数を使用して、このリソース・タイプに複数の引数を定義することはできません。かわりに、-attrフラグの後の二重引用符の中に複数のタイプを指定できます。次に例を示します。

"ATTRIBUTE=FOO,TYPE=integer,DEFAULT_
VALUE=0,FLAGS=REQUIRED,ATTRIBUTE=BAR,TYPE=string"

前述の例では、2つのタイプ属性(FOOおよびBAR)を定義しています。ATTRIBUTEキーワードを指定すると、前のタイプ属性(存在する場合)が終わり、新しいタイプ属性が始まります。

-file file_path

リソース・タイプを定義するリソース・タイプのキーワード/値ペアが行区切りで記載されているテキスト・ファイルのパス名(絶対または相対)。ファイルの内容の例は、次のとおりです。

ATTRIBUTE=FOO
TYPE=integer
DEFAULT_VALUE=0
FLAGS=REQUIRED
ATTRIBUTE=BAR
TYPE=string

注意: キーワードは、ATTRIBUTE、TYPE、DEFAULT_VALUEおよびFLAGSの順序である必要があります。ATTRIBUTEキーワードを指定すると、前のタイプ属性(存在する場合)が終わり、新しいタイプ属性が始まります。

前述の例では、2つのタイプ属性(FOOおよびBAR)を定義しています。

関連項目:
リソース・タイプの詳細は、「リソース・タイプ」を参照してください。

使用上の注意

- type_nameパラメータおよびbase_type_nameパラメータのどちらも必須です。

- タイプ情報を含むファイルを指定するか、またはコマンドラインにタイプ情報を指定することができます。

- oraで始まる名前を持つリソース・タイプはOracleリソース・タイプであるため、これらのリソース・タイプにはこのコマンドを使用しないでください。

- ベースとなるタイプに対する読取り権限が必要です。

例

demoActionScriptのリソース・タイプを作成するには、次のコマンドを実行します。

# crsctl add type test_type1 -basetype cluster_resource
-attr "ATTRIBUTE=FOO,TYPE=integer,DEFAULT_VALUE=0"

crsctl check css

クラスタ同期サービスのステータスをチェックするには、crsctl check cssコマンドを使用します。このコマンドを最も頻繁に使用するのは、Oracle Automatic Storage Management (Oracle ASM)がローカル・サーバーにインストールされている場合です。

構文

crsctl check css

使用上の注意

例

crsctl check cssコマンドでは次のような出力が戻されます。

CRS-4529: Cluster Synchronization Services is online

crsctl check evm

Oracle Database 11gリリース2(11.2.0.2)以降では、イベント・マネージャのステータスをチェックするには、crsctl check evmコマンドを使用します。

構文

crsctl check evm

使用上の注意

例

crsctl check evmコマンドでは次のような出力が戻されます。

CRS-4533: Event Manager is online

crsctl delete resource

Oracle Clusterwareの構成からリソースを削除するには、crsctl delete resourceコマンドを使用します。

構文

crsctl delete resource resource_name [-i] [-f]

パラメータ

表E-4 crsctl delete resourceコマンドのパラメータ

パラメータ

説明

resource_name

削除するリソースの名前を指定します。

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

実行中のリソースを削除する場合、または他のリソースがこのリソースにhard依存性を持っていてもこのリソースを削除する場合、強制オプションを使用します。

使用上の注意

- resource_nameパラメータは必須です。

- 指定したリソースを削除するには、読取りおよび書込み権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

Oracle Clusterwareからリソースを削除するには、次のコマンドを実行します。

# crsctl delete resource myResource

crsctl delete type

Oracle Clusterwareの構成からリソース・タイプを削除するには、crsctl delete typeコマンドを使用します。

構文

crsctl delete type type_name [-i]

使用上の注意

- type_nameパラメータは必須です。

- -iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

- oraで始まる名前を持つリソース・タイプはOracleリソース・タイプであるため、これらのリソース・タイプにはこのコマンドを使用しないでください。

例

リソース・タイプを削除するには、そのリソース・タイプに対する書込み権限を持つユーザーとして次のコマンドを実行します。

$ crsctl delete type app.appvip.type

crsctl get hostname

ローカル・サーバーのホスト名を取得するには、crsctl get hostnameコマンドを使用します。

構文

crsctl get hostname

例

Oracle Clusterwareによってローカル・サーバーのホスト名が戻されます。

$ crsctl get hostname
node2

crsctl getperm resource

指定したリソースに対するユーザー権限およびグループ権限を表示するには、crsctl getperm resourceコマンドを使用します。

構文

crsctl getperm resource resource_name [ {-u user_name | -g group_name} ]

関連項目:
リソースおよびリソース属性の詳細は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

パラメータ

表E-5 crsctl getperm resourceコマンドのパラメータ

パラメータ

説明

resource_name

権限を取得するリソースの名前を指定します。

-u user_name

-uを指定すると、Oracle Clusterwareでは特定のユーザーの権限が取得されます。

-g group_name

-gを指定すると、Oracle Clusterwareでは特定のグループの権限が取得されます。

使用上の注意

- resource_nameパラメータは必須です。

- 指定したリソースの権限を取得するには、それらのリソースに対する読取り権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

crsctl getperm resourceコマンドでは、選択するコマンド・オプションに応じて次のような出力が戻されます。

$ crsctl getperm resource app.appvip

Name: app.appvip
owner:root:rwx,pgrp:oinstall:rwx,other::r--

$ crsctl getperm resource app.appvip -u oracle

Name: app.appvip
rwx

$ crsctl getperm resource app.appvip -g dba

Name: app.appvip
r--

crsctl getperm type

特定のリソース・タイプの権限を取得するには、crsctl getperm typeコマンドを使用します。

構文

crsctl getperm type resource_type  [-u user_name] | [-g group_name]

関連項目:
リソース・タイプの詳細は、「リソース・タイプ」を参照してください。

パラメータ

表E-6 crsctl getperm typeコマンドのパラメータ

パラメータ

説明

resource_type

権限を取得するリソース・タイプを指定します。

-u user_name

-uを指定すると、Oracle Clusterwareでは特定のユーザーの権限が取得されます。

-g group_name

-gを指定すると、Oracle Clusterwareでは特定のグループの権限が取得されます。

使用上の注意

- resource_typeパラメータは必須です。

- oraで始まる名前を持つリソース・タイプはOracleリソース・タイプであるため、これらのリソース・タイプにはこのコマンドを使用しないでください。

例

crsctl getperm typeコマンドでは次のような出力が戻されます。

$ crsctl getperm type app.appvip.type

Name: app.appvip.type
owner:root:rwx,pgrp:oinstall:rwx,other::r--

crsctl modify resource

Oracle Clusterwareの特定のリソースの属性を変更するには、crsctl modify resourceコマンドを使用します。

構文

crsctl modify resource resource_name -attr "attribute_name=attribute_value"
[-i] [-f] [-delete]

パラメータ

表E-7 crsctl modify resourceコマンドのパラメータ

パラメータ

説明

resource_name

変更するリソースの名前。

-attr "attribute_name=
attribute_value"

変更するリソースの属性を2つの異なる方法で指定できます。

- -attrフラグの後に、変更対象の1つ以上の属性名/値ペアをカンマで区切り、二重引用符("")で囲んで指定できます。次に例を示します。

-attr "CHECK_INTERVAL=30, START_TIMEOUT=25"

- または、特定のカーディナリティ値および特定の程度値を付加して特定のサーバーに存在するリソースの属性値を指定できます。この方法は特定のサーバーに何らかの方法で関連付けられるアプリケーションに役立ちます。-attrフラグの後の構文は次のとおりです。

attribute_name{@SERVERNAME(server_name)
[@DEGREEID(did)] | @CARDINALITYID(cid)
[@DEGREEID(did)]}=attribute_value

@SERVERNAME(server_name)構文を指定すると、指定した属性の属性値は、指定したサーバーに存在するリソースに限定されます。

または、@CARDINALITYID(cid)構文を指定すると、指定した属性の属性値は、特定のカーディナリティID(cid)を持つリソース・インスタンスに限定されます。

必要に応じて、@DEGREEID(did)構文をSERVERNAMEまたはCARDINALITYID構文のいずれか、または両方と組み合せて、特定のDEGREEが設定されているリソースに属性値を限定することができます。

例

CHECK_INTERVAL@SERVERNAME(node1)=45
STOP_TIMEOUT@CARDINALITYID(2)=65
STOP_TIMEOUT@SERVERNAME(node1)@DEGREEID(2)=65
STOP_TIMEOUT@CARDINALITYID(3)@DEGREEID(2)=65

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

次の場合に-fオプションを使用します。

- 存在しないリソースへのhard依存性がリソースに設定されている場合

- 1つ以上のhard依存性に対する実行権限がリソース所有者にない場合

- 変更によってサーバーが汎用プールに移動され、サーバーの移動を完了するためにリソースが停止または再配置される場合

-delete

-deleteオプションを使用すると、指定した属性がOracle Clusterwareによって削除されます。

関連項目:
リソースおよびリソース属性の詳細は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

使用上の注意

- resource_nameパラメータは必須です。

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。次に例を示します。

"START_DEPENDENCIES='hard(res1,res2,res3)'"

- 指定したリソースを変更するには、それらのリソースに対する読取りおよび書込み権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

appsvipリソースの属性を変更するには、次のコマンドを実行します。

$ crsctl modify resource appsvip -attr USR_ORA_VIP=10.1.220.17 -i

crsctl modify type

既存のリソース・タイプを変更するには、crsctl modify typeコマンドを使用します。

構文

crsctl modify type type_name -attr "ATTRIBUTE=attribute_name,TYPE={string | int}
[,DEFAULT_VALUE=default_value [,FLAGS=[READONLY][| REQUIRED]]" [-i] [-f]]

パラメータ

表E-8 crsctl modify typeコマンドのパラメータ

パラメータ

説明

type_name

変更するリソース・タイプの名前を指定します。複数のリソース・タイプの名前は変更できません。

-attr

次のリソース・タイプ・キーワードを変更できます。

- TYPE

- DEFAULT_VALUE

- FLAGS

注意: ATTRIBUTEキーワードは、指定する必要がありますが、変更することはできません。

関連項目: これらのキーワードの詳細は、表E-3「crsctl add typeコマンドのパラメータ」を参照してください。

-i

-iオプションを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

関連項目:
リソース・タイプの詳細は、「リソース・タイプ」を参照してください。

使用上の注意

- type_nameパラメータは必須です。

- oraで始まる名前を持つリソース・タイプはOracleリソース・タイプであるため、これらのリソース・タイプにはこのコマンドを使用しないでください。

例

次の例では、2つのタイプ属性(FOOおよびBAR)を変更します。

$ crsctl modify type myType.type -attr "ATTRIBUTE=FOO,DEFAULT_VALUE=0
ATTRIBUTE=BAR,DEFAULT_VALUE=baz"

crsctl setperm resource

特定のリソースに権限を設定するには、crsctl setperm resourceコマンドを使用します。

構文

crsctl setperm resource resource_name {-u acl_string | -x acl_string |
-o user_name | -g group_name}

パラメータ

表E-9 crsctl setperm resourceコマンドのパラメータ

パラメータ

説明

resource_name

権限を設定するリソースの名前を指定します。

{-u | -x | -o | -g}

リソースには次の権限のうち1つのみを設定できます。

- -u acl_string: リソースのアクセス制御リスト(ACL)を更新できます。

- -x acl_string: リソースのACLを削除できます。

- -o user_name: ユーザー名を入力することによってリソースの所有者を変更できます。

- -g group_name: グループ名を入力することによってリソースのプライマリ・グループを変更できます。

ユーザー、グループ、他のACL文字列は次のように指定します。

user:user_name[:readPermwritePermexecPerm] |
group:group_name[:readPermwritePermexecPerm] |
other[::readPermwritePermexecPerm]

- user: ユーザーACL

- group: グループACL

- other: その他のACL

- readPerm: リソースに対する読取り権限。文字rはユーザー、グループ、その他の読取り権限を付与し、マイナス記号(-)は読取り権限を付与しません。

- writePerm: リソースに対する書込み権限。文字wはユーザー、グループ、その他の書込み権限を付与し、マイナス記号(-)は書込み権限を付与しません。

- execPerm: リソースに対する実行権限。文字xはユーザー、グループ、その他の実行権限を付与し、マイナス記号(-)は実行権限を付与しません。

関連項目:
リソースおよびリソース属性の詳細は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

使用上の注意

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

- 権限を設定するには、指定したリソースに対する読取りおよび書込み権限が必要です。

例

リソースに対する読取り、書込み、および実行権限をユーザーScottに付与するには、次のコマンドを実行します。

$ crsctl setperm resource myResource -u user:scott:rwx

crsctl setperm type

特定のリソース・タイプの権限リソースを設定するには、crsctl setperm typeコマンドを使用します。

構文

crsctl setperm type resource_type_name {-u acl_string | -x acl_string |
-o user_name | -g group_name}

パラメータ

表E-10 crsctl setperm typeコマンドのパラメータ

パラメータ

説明

resource_type_name

権限を設定するリソース・タイプの名前を指定します。

{-u | -x | -o | -g}

リソース・タイプには次のパラメータのうち1つのみを指定できます。

- -u acl_string: リソース・タイプのアクセス制御リスト(ACL)を更新できます。

- -x acl_string: リソース・タイプのACLを削除できます。

- -o user_name: ユーザー名を入力することによってリソース・タイプの所有者を変更できます。

- -g group_name: グループ名を入力することによってリソース・タイプのプライマリ・グループを変更できます。

ユーザー、グループ、他のACL文字列は次のように指定します。

user:user_name[:readPermwritePermexecPerm] |
group:group_name[:readPermwritePermexecPerm] |
other[::readPermwritePermexecPerm]

- user: ユーザーACL

- group: グループACL

- other: その他のACL

- readPerm: リソース・タイプに対する読取り権限。文字rはユーザー、グループ、その他の読取り権限を付与し、マイナス記号(-)は読取り権限を付与しません。

- writePerm: リソース・タイプに対する書込み権限。文字wはユーザー、グループ、その他の書込み権限を付与し、マイナス記号(-)は書込み権限を付与しません。

- execPerm: リソース・タイプに対する実行権限。文字xはユーザー、グループ、その他の実行権限を付与し、マイナス記号(-)は実行権限を付与しません。

使用上の注意

- resource_type_nameパラメータは必須です。

- 権限を設定するには、指定したリソースに対する読取りおよび書込み権限が必要です。

- oraで始まる名前を持つリソース・タイプはOracleリソース・タイプであるため、これらのリソース・タイプにはこのコマンドを使用しないでください。

例

リソース・タイプに対する読取り、書込み、および実行権限をユーザーScottに付与するには、次のコマンドを実行します。

$ crsctl setperm type resType -u user:scott:rwx

crsctl start resource

クラスタ内の特定のサーバーに存在するアイドル状態の多数のリソースを起動するには、crsctl start resourceコマンドを使用します。

構文

crsctl start resource {resource_name [...] | -w filter | -all} [-n server_name]
[-k cid] [-d did] [-env "env1=val1,env2=val2,..."] [-i] [-f]

パラメータ

表E-11 crsctl start resourceコマンドのパラメータ

パラメータ

説明

resource_name [...]

空白区切りの1つ以上の起動対象のリソース名。

-w filter

Oracle Clusterwareによってリソースの照合に使用されるリソース・フィルタを指定します。

-all

クラスタ内のすべてのリソースを起動する場合に、このオプションを使用します。

-n server_name

起動するリソースが存在するサーバーの名前を指定します。サーバーを指定しない場合、Oracle Clusterwareでは各リソースの属性プロファイルに従い、最適なサーバー上のリソースが起動されます。

-k cid

リソースのカーディナリティIDを指定します。このパラメータを指定すると、指定したカーディナリティのリソース・インスタンスがOracle Clusterwareによって起動されます。

-d did

リソースの程度IDを指定します。このパラメータに1より大きい程度IDを指定すると、この基準を満たすすべてのリソース・インスタンスがOracle Clusterwareによって起動されます。

注意: -kオプションを指定せずに-dオプションを使用することはできません。

-env "env1=val1,
env2=val2,..."

必要に応じて、-envコマンド・オプションを使用して、1つ以上のリソース・プロファイル属性値を上書きできます。複数の環境名/値ペアを指定する場合、各ペアをカンマで区切り、リスト全体を二重引用符("")で囲む必要があります。

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

起動するリソースが別のサーバーで実行中であり、そのサーバーに対するhard起動依存性が定義されている場合、-fオプションを使用してそのリソースを再配置します。この場合には、強制オプションを指定しないとstartコマンドが失敗します。

使用上の注意

- 起動対象のリソースを指定するには、次の3つの方法のいずれかを使用する必要があります。

- 起動対象の1つ以上のリソースを指定します。

- Oracle Clusterwareによって起動対象のリソースの照合に使用されるリソース・フィルタを指定します。

- -allオプションを指定することによって、指定したサーバー上のすべてのリソースを起動します。

- 指定したリソースを起動するには、それらのリソースに対する読取りおよび実行権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

リソースを起動するには、次のコマンドを実行します。

# crsctl start resource myResource -n server1

crsctl status resource

多くの特定のリソースのステータスおよび構成情報を取得するには、crsctl status resourceコマンドを使用します。

構文

crsctl status resource {resource_name [...] | -w "filter"}  [-p | -v [-e]] |
[-f | -l | -g] [[-k cid | -n server_name] [-d did]] | [-s -k cid [-d did]] [-t]

パラメータ

表E-12 crsctl status resourceコマンドのパラメータ

パラメータ

説明

resource_name [...] |
-w "filter"

ステータスのチェック対象である空白区切りの1つ以上のリソース名。

または、表示されるリソースの数を制限するためにOracle Clusterwareによって使用されるリソース・フィルタを指定することもできます。フィルタは二重引用符("")で囲む必要があります。値にカッコまたは空白が含まれる場合、一重引用符('')で囲む必要があります。演算子は空白で囲む必要があります。次にリソース・フィルタの例を示します。

- "TYPE == cluster_resource": このフィルタは、cluster_resourceタイプのリソースのみを表示するように制限します。

- "CHECK_INTERVAL > 10": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースを表示するように制限します。

- "(CHECK_INTERVAL > 10) AND (NAME co 2)": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、かつ、リソースの名前に数字2が含まれるリソースを表示するように制限します。

- "START_DEPENDENCIES = 'hard(appsvip)'": このフィルタはappsvipリソースに対するhard起動依存性を持つリソースを表示するように制限します。

関連項目: フィルタの詳細は、「フィルタ」を参照してください。

[-p | -v [-e]] | [-f | -l | -g]

[-p | -v [-e]]と[-f | -l | -g]の2つのオプションのうちいずれかを指定できます。それぞれ次の場合に指定します。

- リソースの静的な構成を表示する場合は-pパラメータを指定し、リソースの実行時の構成を表示する場合は-vパラメータを指定します。リソース・インスタンスの特別な値を評価するには、-vパラメータとともに-eパラメータを使用します。

- リソースのすべての構成を表示する場合は-fパラメータを、リソースのすべてのカーディナル値および程度値を表示する場合は-lパラメータを、指定したリソースが登録されているかどうかをチェックする場合は-gパラメータを指定します。

[-k cid |
-n server_name] [-d did |
[-s -k cid [-d did]]]

[-k cid | -n server_name]と[-s -k cid [-d did]]の2つのオプションのうちいずれかを指定できます。それぞれ次の場合に指定します。

- 問合せ対象のリソースのカーディナリティIDを指定する場合は-k cidを指定します。または、-nパラメータを指定して、リソースをチェックする特定のサーバーを指定できます。必要に応じて-nパラメータとともに-dパラメータを指定して、チェックするリソースの程度IDを指定できます。1より大きい程度IDを指定すると、この基準を満たすサーバー上のすべてのリソース・インスタンスがOracle Clusterwareによってチェックされます。

- 再配置対象のサーバーのリストを取得する場合は、-kパラメータとともに-sパラメータを指定します。-dパラメータとともに程度IDを指定することによって、出力をさらに制限できます。

-t

表形式で出力を表示する場合は-tパラメータを指定します。

使用上の注意

- リソースの空白区切りのリストまたはリソース・フィルタのいずれかが必要です。

- 指定したリソースのステータスを取得するには、それらのリソースに対する読取り権限が必要です。

- クラスタにデプロイされている任意のリソースのステータス情報を問い合せるには、crsctl status resourceを使用します。ただし、Oracle(ora.*)リソースのステータス情報を問い合せる場合は、対応するSRVCTLコマンドを使用することをお薦めします。

例

crsctl status resourceコマンドでは次のような出力が戻されます。

$ crsctl status resource ora.staii14.vip

NAME=ora.staii14.vip
TYPE=ora.cluster_vip_net1.type
TARGET=ONLINE
STATE=ONLINE on staii14

crsctl status type

1つ以上の特定のリソース・タイプの構成情報を取得するには、crsctl status typeコマンドを使用します。

構文

crsctl status type resource_type_name [...]] [-g] [-p] [-f]

パラメータ

表E-13 crsctl status typeコマンドのパラメータ

パラメータ

説明

[resource_type_name [...]

ステータスのチェック対象である1つ以上のリソース・タイプ名を空白区切りで指定します。

-g] [-p] [-f

Oracle Clusterwareで特定のサーバー・プールのステータスをチェックする場合のオプションとして、次のパラメータを指定できます。

- -g: 指定したリソース・タイプが登録されているかどうかをチェックする場合にこのパラメータを使用します。

- -p: 指定したリソース・タイプの静的な構成を表示する場合にこのパラメータを使用します。

- -f: リソース・タイプのすべての構成を表示する場合にこのパラメータを使用します。

使用上の注意

- resource_type_nameパラメータまたはフィルタは必須です。

例

crsctl status typeコマンドでは次のような出力が戻されます。

$ crsctl status type ora.network.type

TYPE_NAME=ora.network.type
BASE_TYPE=ora.local_resource.type

crsctl stop resource

実行中のリソースを停止するには、crsctl stop resourceコマンドを使用します。

構文

crsctl stop resource {resource_name [...] | -w "filter" | -all} [-n server_name]
[-k cid] [-d did] [-env "env1=val1,env2=val2,..."] [-i] [-f]

パラメータ

表E-14 crsctl stop resourceコマンドのパラメータ

パラメータ

説明

resource_name [...]

空白区切りの1つ以上の停止対象のリソース名。

-w "filter"

停止されるリソースの数を制限するためにOracle Clusterwareによって使用されるリソース・フィルタを指定します。フィルタは二重引用符("")で囲む必要があります。次にリソース・フィルタの例を示します。

- "TYPE == cluster_resource": このフィルタは、cluster_resourceタイプのリソースのみを停止するようにOracle Clusterwareを制限します。

- "CHECK_INTERVAL > 10": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースを停止するようにOracle Clusterwareを制限します。

- "(CHECK_INTERVAL > 10) AND (NAME co 2)": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、かつ、リソースの名前に数字2が含まれるリソースを停止するようにOracle Clusterwareを制限します。

-all

クラスタ内のすべてのリソースを停止する場合にこのオプションを使用します。

-n server_name

停止するリソース・インスタンスが存在するサーバーの名前を指定します。サーバーを指定しない場合、Oracle Clusterwareではリソースのすべてのインスタンスが停止されます。

-k cid

リソースのカーディナリティIDを指定します。このパラメータを指定すると、指定したカーディナリティのリソース・インスタンスがOracle Clusterwareによって停止されます。

-d did

リソースの程度IDを指定します。このパラメータに1より大きい程度IDを指定すると、この基準を満たすすべてのリソース・インスタンスがOracle Clusterwareによって停止されます。

-env "env1=val1,
env2=val2,..."

必要に応じて、-envコマンド・オプションを使用して、1つ以上のリソース・プロファイル属性値を上書きできます。複数の環境名/値ペアを指定する場合、各ペアをカンマで区切り、リスト全体を二重引用符("")で囲む必要があります。

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

停止対象のリソースに依存している他のリソースが実行中である場合に停止対象のリソースを強制的に停止するには、-fオプションを指定します。このオプションを使用すると、依存リソースは再配置または停止されます。

使用上の注意

- 停止対象のリソースを指定するには、次の3つの方法のいずれかを使用する必要があります。

- 停止対象の1つ以上のリソースを指定します。

- Oracle Clusterwareによって停止対象のリソースの照合に使用されるリソース・フィルタを指定します。

- 特定のサーバーのすべてのリソースを停止するには、-n server_nameオプションとともに-allオプションを指定します。

- 指定したリソースを停止するには、それらのリソースに対する読取りおよび実行権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

リソースを停止するには、次のコマンドを実行します。

$ crsctl stop resource -n node1 -k 2

Oracle RAC環境のCRSCTLコマンド

この項に示すコマンドは、次のもので構成されるOracle RAC環境のOracle Clusterwareスタックを管理します。

- Oracle Clusterware、メンバー・ノードおよびサーバー・プール

- Oracle ASM(インストールされている場合)

- クラスタ同期サービス

- クラスタ時刻同期化サービス

次のコマンドはOracle RAC環境でのみ使用できます。

- crsctl add crs administrator

- crsctl add css votedisk

- crsctl add serverpool

- crsctl check cluster

- crsctl check crs

- crsctl check resource

- crsctl check ctss

- crsctl config crs

- crsctl delete crs administrator

- crsctl delete css votedisk

- crsctl delete node

- crsctl delete serverpool

- crsctl disable crs

- crsctl discover dhcp

- crsctl enable crs

- crsctl get clientid dhcp

- crsctl get css

- crsctl get css ipmiaddr

- crsctl get nodename

- crsctl getperm serverpool

- crsctl lsmodules

- crsctl modify serverpool

- crsctl pin css

- crsctl query crs administrator

- crsctl query crs activeversion

- crsctl query crs releaseversion

- crsctl query crs softwareversion

- crsctl query css ipmiconfig

- crsctl query css ipmidevice

- crsctl query css votedisk

- crsctl query dns

- crsctl release dhcp

- crsctl relocate resource

- crsctl relocate server

- crsctl replace discoverystring

- crsctl replace votedisk

- crsctl request dhcp

- crsctl set css

- crsctl set css ipmiaddr

- crsctl set css ipmiadmin

- crsctl setperm serverpool

- crsctl start cluster

- crsctl start crs

- crsctl start ip

- crsctl start testdns

- crsctl status ip

- crsctl status server

- crsctl status serverpool

- crsctl status testdns

- crsctl stop cluster

- crsctl stop crs

- crsctl stop ip

- crsctl stop testdns

- crsctl unpin css

- crsctl unset css

- crsctl unset css ipmiconfig

crsctl add crs administrator

クラスタ管理者のリストにユーザーを追加するには、crsctl add crs administratorコマンドを使用します。

構文

crsctl add crs administrator -u user_name [-f]

パラメータ

表E-15 crsctl add crs administratorコマンドのパラメータ

パラメータ

説明

-u user_name

Oracle Clusterware管理権限の付与対象のユーザー名。

-f

ユーザー名の妥当性チェックを無視するには、このオプションを使用します。

使用上の注意

- このコマンドは、rootまたはクラスタ管理者として、またはWindowsシステムの場合、管理者として実行する必要があります。

- デフォルトでは、root、Oracle Clusterwareをインストールしたユーザーおよび*ワイルドカードが、Oracle Clusterware管理権限を持つユーザーのリストのメンバーです。ワイルドカードを削除し、Oracle Clusterwareのロール別管理を有効にするには、crsctl delete crs administratorコマンドを実行します。

関連項目:
詳細は、「ロール別管理」を参照してください。

例

Oracle Clusterware管理者のリストにユーザーを追加するには、次のコマンドを実行します。

# crsctl add crs administrator -u scott

crsctl add css votedisk

Oracle ASMディスク・グループ以外のストレージ・デバイス上のクラスタに1つ以上の投票ディスクを追加するには、crsctl add css votediskコマンドを使用します。

構文

crsctl add css votedisk path_to_voting_disk [path_to_voting_disk ...] [-purge]

パラメータ

表E-16 crsctl add css votediskコマンドのパラメータ

パラメータ

説明

path_to_voting_disk

追加する投票ディスクへの完全修飾されたパス。複数の投票ディスクを追加するには、各パスを空白で区切ります。

-purge

既存のすべての投票ディスクを一度に削除します。投票ファイルの既存のセットを1つの操作で置換できます。

使用上の注意

- 外部冗長性を提供するディスク・アレイなどのストレージ・デバイスを持たないかぎり、3つ以上の投票ディスクを使用する必要があります。6つ以上の投票ディスクは使用しないことをお薦めします。サポートされる投票ディスクの最大数は15です。

関連項目:
詳細は、「投票ディスクの追加、削除または移行」を参照してください。

例

クラスタに投票ディスクを追加するには、次のコマンドを実行します。

$ crsctl add css votedisk /stor/grid/ -purge

crsctl add serverpool

注意:
デフォルトでは、すべての名前付きユーザーがサーバー・プールを作成できます。この権限を持つオペレーティング・システム・ユーザーを制限するには、特定のユーザーをCRS管理者リストに追加することをお薦めします。

関連項目:
CRS管理者のリストへのユーザーの追加の詳細は、「ロール別管理」を参照してください。

データベース以外のリソース(アプリケーション・サーバーなど)をホスティングするためのサーバー・プールをOracle Clusterwareに追加するには、crsctl add serverpoolコマンドを使用します。

構文

crsctl add serverpool server_pool_name {-file file_path |
-attr "attr_name=attr_value[,attr_name=attr_value[,...]]"}
[-i] [-f]

パラメータ

表E-17 crsctl add serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

短く、わかりやすいサーバー・プール名。

-file file_path

サーバー・プールを定義する属性ファイルへの完全修飾されたパス。

attribute_name

サーバー・プールを管理するのにOracle Clusterwareが使用するサーバー・プール属性の名前で、前に-attrフラグを付けます。使用可能な属性名は次のとおりです。

- IMPORTANCE

- MIN_SIZE

- MAX_SIZE

- SERVER_NAMES

- PARENT_POOLS

- EXCLUSIVE_POOLS

- ACL

- ACTIVE_SERVERS

attribute_value

サーバー・プール属性の値。

注意: attribute_nameパラメータおよびattribute_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "MAX_SIZE=30, IMPORTANCE=3"

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

-f

-fオプションを指定すると、Oracle Clusterwareでは別のサーバー・プール内のサーバーで実行中のリソースが停止され、追加対象のサーバー・プールにそのサーバーが再配置されます。-fオプションを指定しない場合、Oracle Clusterwareでは、サーバー・プールを作成した結果、追加対象のサーバー・プールにサーバーを渡す別のサーバー・プール内のサーバーで、リソースが停止されるかどうかがチェックされます。その場合、Oracle Clusterwareではcrsctl add serverpoolコマンドが拒否されます。

使用上の注意

- server_pool_nameパラメータは必須です。

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドを実行すると、新しい構成に適合するように、Oracle Clusterwareによって他のサーバーがサーバー・プール間で再配置されることがあります。

- このコマンドは、rootまたはクラスタ管理者で実行する必要があります。

- データベース以外のリソースをホスティングするサーバー・プールを作成するには、crsctl add serverpoolコマンドを使用します。Oracle Databaseをホスティングするサーバー・プールを作成するには、SRVCTLコマンド・ユーティリティを使用します。

関連項目:
SRVCTLコマンド・ユーティリティを使用したサーバー・プールの作成の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。

例

例1

サーバーの最大サイズが5であるtestspというサーバー・プールを追加するには、rootまたはOracle Clusterwareインストール所有者として次のコマンドを実行します。

# crsctl add serverpool testsp -attr "MAX_SIZE=5"

例2

sp1サーバー・プールの属性値を行ごとに記載したsp1_attrファイルを作成します。次に例を示します。

IMPORTANCE=1
MIN_SIZE=1
MAX_SIZE=2
SERVER_NAMES=node3 node4 node5
PARENT_POOLS=Generic
EXCLUSIVE_POOLS=testsp
ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--

入力としてsp1_attrファイルを使用してsp1サーバー・プールを作成するには、次のコマンドを使用します。

$ crsctl add serverpool sp1 -file /tmp/sp1_attr

crsctl check cluster

Oracle Clusterwareスタックのステータスをチェックするには、クラスタ内の任意のノードでcrsctl check clusterコマンドを使用します。

構文

crsctl check cluster [-all | [-n server_name [...]]

使用上の注意

- -allオプションを使用してクラスタ内のすべてのノードでOracle Clusterwareスタックのステータスをチェックするか、1つ以上のノードを空白区切りで指定できます。どちらのオプションも指定しない場合、Oracle Clusterwareはローカル・サーバーのOracle Clusterwareスタックのステータスをチェックします。

- クラスタ内の任意のノードでこのクラスタ対応コマンドを使用できます。

例

crsctl check clusterコマンドでは次のような出力が戻されます。

$ crsctl check cluster -all
*****************************************************************
node1:
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
*****************************************************************
node2:
CRS-4537: Cluster Ready Services is online
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online
*****************************************************************

crsctl check crs

Oracle高可用性サービスのステータスおよびローカル・サーバーのOracle Clusterwareスタックのステータスをチェックするには、crsctl check crsコマンドを使用します。

構文

crsctl check crs

例

ローカル・サーバーのOracle Clusterwareの状態をチェックするには、次のコマンドを実行します。

$ crsctl check crs
CRS-4638: Oracle High Availablity Services is online
CRS-4537: Cluster Ready Services is onlin
CRS-4529: Cluster Synchronization Services is online
CRS-4533: Event Manager is online

crsctl check resource

特定のリソースのアプリケーション固有のエージェントでcheckアクションを開始するには、crsctl check resourceコマンドを使用します。リソース名に誤りがあるなど、何らかの理由でシステムがcheckリクエストを発行できない場合のみ、Oracle Clusterwareは出力を行います。

構文

crsctl check resource {resource_name [...] | -w "filter" }
[-n node_name] [-k cardinality_id] [-d degree_id] }

パラメータ

表E-18 crsctl check resourceコマンドのパラメータ

パラメータ

説明

resource_name

特定のリソースを指定します。複数のリソース名を空白で区切って入力することによって、複数のリソースをチェックできます。

-w "filter"

チェックされるリソースの数を制限するためにOracle Clusterwareによって使用されるリソース・フィルタを指定します。フィルタは二重引用符("")で囲む必要があります。次にリソース・フィルタの例を示します。

- "TYPE == cluster_resource": このフィルタは、cluster_resourceタイプのリソースのみをチェックするようにOracle Clusterwareを制限します。

- "CHECK_INTERVAL > 10": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースをチェックするようにOracle Clusterwareを制限します。

- "(CHECK_INTERVAL > 10) AND (NAME co 2)": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、かつ、リソースの名前に数字2が含まれるリソースをチェックするようにOracle Clusterwareを制限します。

-n node_name

特定のノードのリソース・インスタンスをチェックします。-nオプションを指定しない場合、Oracle Clusterwareではローカル・サーバーのみのリソース・インスタンスがチェックされます。

-k cardinality_id

リソースのカーディナリティIDを指定します。

-d degree_id

リソースの程度IDを指定します。

使用上の注意

- 指定したリソースをチェックするには、それらのリソースに対する読取りおよび実行権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

- このコマンドの成功は、checkが発行されたということのみを意味します。CHECKアクションが完了したという意味ではありません。

例

特定のリソースのアプリケーション固有のエージェントでcheckアクションを開始するには、次のコマンドを実行します。

$ crsctl check resource appsvip

crsctl check ctss

クラスタ時刻同期化サービスのステータスをチェックするには、crsctl check ctssコマンドを使用します。

構文

crsctl check ctss

例

crsctl check ctssコマンドでは次のような出力が戻されます。

CRS-4700: The Cluster Time Synchronization Service is in Observer mode.

または

CRS-4701: The Cluster Time Synchronization Service is in Active mode.
CRS-4702: Offset from the reference node (in msec): 100

crsctl config crs

Oracle高可用性サービスの自動起動構成を表示するには、crsctl config crsを使用します。

構文

crsctl config crs

例

crsctl config crsコマンドでは次のような出力が戻されます。

CRS-4622: Oracle High Availability Services autostart is enabled.

crsctl delete crs administrator

Oracle Clusterware管理者のリストからユーザーを削除するには、crsctl delete crs administratorコマンドを使用します。

構文

crsctl delete crs administrator -u user_name [-f]

パラメータ

表E-19 crsctl delete crs administratorコマンドのパラメータ

パラメータ

説明

-u user_name

削除対象のOracle Clusterware管理権限を持つユーザーの名前。

デフォルトでは、Oracle Clusterware管理権限を持つユーザーのリストは、Oracle Clusterwareをインストールしたユーザー、rootおよび*で構成されます。Oracle Clusterwareをインストールしたユーザーおよびrootは、このリストの永続的なメンバーです。*値によってOracle Clusterware管理権限がすべてのユーザーに付与されるため、ロール別管理を有効にするには、この値を削除する必要があります。

関連項目: 詳細は、「ロール別管理」を参照してください。

-f

ユーザー名の妥当性チェックを無視するには、このオプションを使用します。

使用上の注意

- user_nameパラメータは必須です。

- このコマンドは、rootまたはクラスタ管理者として、またはWindowsシステムの場合、管理者として実行する必要があります。

- ロール別管理を有効にするには、二重引用符("")で囲まれた*値を削除する必要があります。

例

クラスタ管理者のリストからユーザーを削除するには、次のコマンドを実行します。

# crsctl delete crs administrator -u scott

crsctl delete css votedisk

投票ディスクをOracle Clusterwareの構成から削除するには、crsctl delete css votediskを使用します。

構文

crsctl delete css votedisk voting_disk_GUID [voting_disk_GUID [...]]

パラメータ

表E-20 crsctl delete css votediskコマンドのパラメータ

パラメータ

説明

voting_disk_GUID

削除対象の投票ディスクのファイル・ユニバーサル識別子(GUID)を入力します。複数のGUIDを指定する場合は、空白区切りのリストを入力します。

使用上の注意

- このコマンドは、Oracle ASM以外のストレージ・デバイスから投票ディスクを削除する場合にのみ使用できます。

- crsctl query css votediskコマンドを実行することによって、現在の各投票ディスクのファイル・ユニバーサル識別子を取得できます。

例

投票ディスクを削除するには、次のコマンドを実行します。

$ crsctl delete css votedisk 26f7271ca8b34fd0bfcdc2031805581e

crsctl delete node

クラスタからノードを削除するには、crsctl delete nodeを使用します。

構文

crsctl delete node -n node_name

使用上の注意

- このコマンドを実行するには、rootである必要があります。

- node_nameパラメータは必須です。

例

クラスタからnode06というノードを削除するには、rootとして次のコマンドを実行します。

# crsctl delete node -n node06

crsctl delete serverpool

Oracle Clusterwareの構成からサーバー・プールを削除するには、crsctl delete serverpoolコマンドを使用します。

構文

crsctl delete serverpool server_pool_name [server_pool_name [...]] [-i]

関連項目:
サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの理解」を参照してください。

使用上の注意

- server_pool_nameパラメータは必須です。

- -iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

例

サーバー・プールを削除するには、rootまたはOracle Clusterwareインストール所有者として次のコマンドを実行します。

# crsctl delete serverpool sp1

crsctl disable crs

サーバーの起動時にOracle高可用性サービスが自動的に起動しないようにするには、crsctl disable crsコマンドを使用します。

構文

crsctl disable crs

使用上の注意

- このコマンドはローカル・サーバーにのみ影響します。

- Oracle高可用性サービスの自動起動を無効にしている場合にOracle高可用性サービスを起動するには、crsctl start crsコマンドを使用する必要があります。

例

crsctl disable crsコマンドでは次のような出力が戻されます。

CRS-4621: Oracle High Availability Services autostart is disabled.

crsctl discover dhcp

Oracle Database 11gリリース2(11.2.0.2)以降では、指定したポートでネットワークでのDHCP検出パケットを送信するには、crsctl discover dhcpコマンドを使用します。DHCPサーバーがネットワークに存在すると、そのサーバーは検出メッセージに応答し、コマンドが成功します。

構文

crsctl discover dhcp -clientid clientid [-port port]

パラメータ

表E-21 crsctl discover dhcpコマンドのパラメータ

パラメータ

説明

-clientid clientid

検出したいクライアントIDを指定します。クライアントIDは、crsctl get clientid dhcpコマンドを実行して取得します。

-port port

CRSCTLが検出パケットを送信するポート。

使用上の注意

- このコマンドは、rootで実行する必要があります

例

crsctl discover dhcpコマンドでは次のような出力が戻されます。

# crsctl discover dhcp -clientid stmjk0462clr-stmjk01-vip

CRS-10009: DHCP server returned server: 192.168.53.232,
loan address : 192.168.29.221/255.255.252.0, lease time: 43200

crsctl enable crs

サーバーの起動時のOracle高可用性サービスの自動起動を有効にするには、crsctl enable crsコマンドを使用します。

構文

crsctl enable crs

使用上の注意

- このコマンドはローカル・サーバーにのみ影響します。

例

crsctl enable crsコマンドでは次のような出力が戻されます。

CRS-4622: Oracle High Availability Services autostart is enabled.

crsctl get clientid dhcp

Oracle Database 11gリリース2(11.2.0.2)以降では、crsctl get clientid dhcpコマンドを使用して、DHCPサーバーから構成済クラスタ・リソースのIPアドレスを取得するためにOracle Clusterwareエージェントが使用するクライアントIDを表示します。VIPタイプは必須です。

構文

crsctl get clientid dhcp -cluname cluster_name -viptype vip_type
[-vip vip_res_name] [-n node_name]

パラメータ

表E-22 crsctl get clientid dhcpコマンドのパラメータ

パラメータ

説明

-cluname cluster_name

クラスタ・リソースが構成されるクラスタの名前を指定します。

-viptype vip_type

クライアントIDを表示するVIPリソースのタイプ(HOSTVIP、SCANVIPまたはAPPVIP)を指定します。

-vip vip_resource_name

VIPリソースの名前を指定します。APPVIP VIPタイプを指定する場合、このパラメータは必須です。

-n node_name

クライアントIDを取得するノードの名前を指定します。HOSTVIP VIPタイプを指定する場合、このパラメータは必須です。

例

crsctl get clientid dhcpコマンドでは次のような出力が戻されます。

$ crsctl get clientid dhcp -cluname stmjk0462clr -viptype HOSTVIP -n stmjk01

CRS-10007: stmjk0462clr-stmjk01-vip

crsctl get css

クラスタ同期サービスの特定のパラメータ値を取得するには、crsctl get cssコマンドを使用します。

構文

crsctl get css parameter

使用上の注意

- クラスタ同期サービスのパラメータとそのデフォルト値は次のとおりです。

clusterguid
diagwait
disktimeout (200 (seconds))
misscount (30 (seconds))
reboottime (3 (seconds))
priority (4 (UNIX), 3 (Windows))
logfilesize (50 (MB))

- このコマンドはデフォルト値を表示しません。

- このコマンドはローカル・サーバーにのみ影響します。

例

crsctl get css disktimeoutコマンドでは次のような出力が戻されます。

$ crsctl get css disktimeout
CRS-4678: Successful get disktimeout 200 for Cluster Synchronization Services.

crsctl get css ipmiaddr

ローカルのIntelligent Platform Management Interface(IPMI)デバイスのOracle Local Registryに格納されているアドレスを取得するには、crsctl get css ipmiaddrコマンドを使用します。

構文

crsctl get css ipmiaddr

使用上の注意

- Oracle Clusterwareのインストールに使用されたユーザー・アカウントでコマンドを実行します。

- このコマンドでは、Oracle Local Registryに格納されているIPアドレスのみが取得されます。これは、IPMIが実際に使用するIPアドレスではない場合があります。
ローカル・サーバーで、rootとしてipmiutilまたはipmitoolを使用して、IPMIによって使用されているIPアドレスを取得します。

例

IPMIデバイスのIPアドレスを取得するには、次のコマンドを実行します。

$ crsctl get css ipmiaddr

crsctl get nodename

ローカル・ノードの名前を取得するには、crsctl get nodenameコマンドを使用します。

構文

crsctl get nodename

例

crsctl get nodenameコマンドでは次のような出力が戻されます。

node2

crsctl getperm serverpool

特定のサーバー・プールの権限を取得するには、crsctl getperm serverpoolコマンドを使用します。

構文

crsctl getperm serverpool server_pool_name  [-u user_name | -g group_name]

関連項目:
サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの理解」を参照してください。

パラメータ

表E-23 crsctl getperm serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

権限を取得するサーバー・プールの名前を指定します。

-u user_name

-uを指定すると、Oracle Clusterwareでは特定のユーザーの権限が取得されます。

-g group_name

-gを指定すると、Oracle Clusterwareでは特定のグループの権限が取得されます。

使用上の注意

- server_pool_nameパラメータは必須です。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

例

crsctl getperm serverpoolコマンドでは次のような出力が戻されます。

$ crsctl getperm serverpool sp1
NAME: sp1
owner:root:rwx,pgrp:root:r-x,other::r--

crsctl lsmodules

デバッグが可能なモジュールのコンポーネントをリストするには、crsctl lsmodulesコマンドを使用します。

関連項目:
デバッグの詳細は、「動的デバッグ」を参照してください。

構文

crsctl lsmodules {mdns | gpnp | css | crf | crs | ctss | evm | gipc}

使用上の注意

次のいずれかのコンポーネントを指定できます。

mdns: マルチキャスト・ドメイン名サーバー
gpnp: グリッド・プラグ・アンド・プレイ・サービス
css: クラスタ同期サービス
crf: クラスタ状態モニター
crs: クラスタ・レディ・サービス
ctss: クラスタ時刻同期化サービス
evm: イベント・マネージャ
gipc: グリッド・プロセス間通信

例

crsctl lsmodulesコマンドでは次のような出力が戻されます。

$ crsctl lsmodules evm
List EVMD Debug Module: CLSVER
List EVMD Debug Module: CLUCLS
List EVMD Debug Module: COMMCRS
List EVMD Debug Module: COMMNS
List EVMD Debug Module: CRSOCR
List EVMD Debug Module: CSSCLNT
List EVMD Debug Module: EVMAGENT
List EVMD Debug Module: EVMAPP
...

crsctl modify serverpool

既存のサーバー・プールを変更するには、crsctl modify serverpoolコマンドを使用します。

構文

crsctl modify serverpool server_pool_name -attr "attr_name=attr_value
[,attr_name=attr_value[, ...]]" [-i] [-f]

パラメータ

表E-24 crsctl modify serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

変更するサーバー・プールの名前。

attr_name

変更するサーバー・プール属性の名前。名前の前には-attrフラグを付けます。

関連項目: サーバー・プール属性の詳細は、表2-2「サーバー・プール属性」を参照してください。

attr_value

サーバー・プール属性の値。

注意: attr_nameパラメータおよびattr_valueパラメータは、カンマで区切って二重引用符("")で囲む必要があります。次に例を示します。

-attr "CHECK_INTERVAL=30,START_TIMEOUT=25"

関連項目: サーバー・プール属性の詳細は、表2-2「サーバー・プール属性」を参照してください。

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

-f

-fオプションを指定すると、Oracle Clusterwareでは別のサーバー・プール内のサーバーで実行中のリソースが停止され、追加対象のサーバー・プールにそのサーバーが再配置されます。

-fオプションを指定しない場合、Oracle Clusterwareでは、サーバー・プールを作成した結果、追加対象のサーバー・プールにサーバーを渡す別のサーバー・プール内のサーバーで、リソースが停止されるかどうかがチェックされます。その場合、Oracle Clusterwareではcrsctl add serverpoolコマンドが拒否されます。

関連項目:
サーバー・プールおよびサーバー・プール属性の詳細は、「サーバー・プールの理解」を参照してください。

使用上の注意

- このコマンドは、rootで実行する必要があります

- server_pool_nameパラメータは必須です。

- 属性名/値ペアの属性値にカンマが含まれる場合、値は一重引用符('')で囲む必要があります。次に例を示します。

"START_DEPENDENCIES='hard(res1,res2,res3)'"

- このコマンドを実行すると、新しい構成に適合するように、Oracle Clusterwareによって他のサーバーがサーバー・プール間で再配置されることがあります。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

例

既存のサーバー・プールを変更するには、rootまたはOracle Clusterwareインストール所有者として次のコマンドを実行します。

# crsctl modify serverpool sp1 -attr "MAX_SIZE=7"

crsctl pin css

多数の特定のノードを固定するには、crsctl pin cssコマンドを使用します。ノードの固定とは、ノード名とノード番号との関連付けを固定することです。固定されていないノードの場合、停止中にその期限が切れると、ノード番号が変更される可能性があります。固定されたノードの場合、期限切れになりません。

構文

crsctl pin css -n node_name [ node_name [..]]

使用上の注意

- サーバーを空白区切りのリストで指定できます。

- 固定されたサーバーには、11gリリース2(11.2)より前のOracleソフトウェアが必要です。

- crsctl unpin cssを使用するとノードの固定が解除されます。

- crsctl delete nodeコマンドを使用してノードを削除すると、ノードの固定も暗黙的に解除されます。

例

node2というノードを固定するには、次のコマンドを実行します。

# crsctl pin css -n node2

crsctl query crs administrator

Oracle Clusterware管理権限を持つユーザーのリストを表示するには、crsctl query crs administratorコマンドを使用します。

構文

crsctl query crs administrator

例

crsctl query crs administratorコマンドでは次のような出力が戻されます。

CRS Administrator List: scott

crsctl query crs activeversion

クラスタ内で実行されているOracle Clusterwareソフトウェアのアクティブなバージョンを表示するには、crsctl query crs activeversionコマンドを使用します。ただし、ローリング・アップグレード時は、クラスタ全体でアップグレードが終了するまでアクティブなバージョンは表示されず、その時点まで、クラスタはアップグレード前のバージョンで動作します。

構文

crsctl query crs activeversion

例

crsctl query crs activeversionコマンドでは次のような出力が戻されます。

Oracle Clusterware active version on the cluster is [11.2.0.2.0]"

crsctl query crs releaseversion

ローカル・ノードにバイナリで格納されているOracle Clusterwareソフトウェアのバージョンを表示するには、crsctl query crs releaseversionコマンドを使用します。

構文

crsctl query crs releaseversion

例

crsctl query crs releaseversionコマンドでは次のような出力が戻されます。

Oracle High Availablity Services release version on the local node is [11.2.0.2.0]

crsctl query crs softwareversion

指定したノードで正常に起動されたソフトウェアの最新バージョンを表示するには、crsctl query crs softwareversionコマンドを使用します。

構文

crsctl query crs softwareversion node_name

使用上の注意

- ノード名を指定しない場合、Oracle Clusterwareではローカル・サーバーで実行中のOracle Clusterwareのバージョンが表示されます。

例

crsctl query crs softwareversionコマンドでは次のような出力が戻されます。

Oracle Clusterware version on node [node1] is [11.2.0.2.0]

crsctl query css ipmiconfig

Oracle Database 11gリリース2(11.2.0.2)以降では、ローカル・サーバーのOracle Clusterwareが障害分離に備えてIPMIを使用するように構成されているかどうかを判断するには、crsctl query css ipmiconfigコマンドを使用します。このコマンドは構成データの存在を検出しますが、その正しさは検証できないことに注意してください。

構文

crsctl query css ipmiconfig

使用上の注意

- このコマンドは、Oracle Cluster Registry(OCR)に格納されているIPMI構成を特定してアクセスしようとするため、Oracle Clusterwareのインストールに使用したアカウントで実行する必要があります。そうしないと、認可の失敗が報告される場合があります。

- レジストリにIPMI構成データが含まれていない場合、別のアカウントで実行すると、認可の失敗にならない場合があります。

例

crsctl query css ipmiconfigコマンドでは次のような出力が戻されます。

CRS-4236: Oracle Clusterware configured to use IPMI

または

CRS-4237: Oracle Clusterware is not fully configured to use IPMI

crsctl query css ipmidevice

ローカル・システムにIntelligent Platform Management Interface(IPMI)ドライバがあるかどうかを判断するには、crsctl query css ipmiconfigコマンドを使用します。

構文

crsctl query css ipmidevice

使用上の注意

- このコマンドは、IPMIインストール中に事前チェックを実行し、通常、インストーラによってのみ発行されます。

- このコマンドでは形式的なチェックが実行されるため、成功リターンは、IPMIハードウェアの構成が完了しており使用できることを保証するものではありません。

- このコマンドの実行に特別な権限は必要ありません。

例

crsctl query css ipmideviceコマンドでは次のような出力が戻されます。

CRS-4231: IPMI device and/or driver found

または

CRS-4218: Unable to access an IPMI device on this system

crsctl query css votedisk

クラスタ同期サービスによって使用される投票ディスク、投票ディスクのステータス、ディスクの格納場所(Oracle ASMやその他の場所など)を表示するには、crsctl query css votediskコマンドを使用します。

構文

crsctl query css votedisk

使用上の注意

例

crsctl query css votediskコマンドでは次のような出力が戻されます。

$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
1. ONLINE   296641fd201f4f3fbf3452156d3b5881 (/ocfs2/host09_vd3) []
2. ONLINE   8c4a552bdd9a4fd9bf93e444223146f2 (/netapp/ocrvf/newvd) []
3. ONLINE   8afeee6ae3ed4fe6bfbb556996ca4da5 (/ocfs2/host09_vd1) []
Located 3 voting disk(s).

crsctl query dns

Oracle Database 11gリリース2(11.2.0.2)以降では、指定されたDNSサーバーの名前のDNS参照によって戻されるアドレスのリストを取得するには、crsctl query dnsコマンドを使用します。

構文

crsctl query dns {-servers | -name name [-dnsserver DNS_server_address]
[-port port] [-attempts number_of_attempts] [-timeout timeout_in_seconds] [-v]}

パラメータ

表E-25 crsctl query dnsコマンドのパラメータ

パラメータ

説明

-servers

-serversパラメータを使用して、コマンドを実行するノードの現在のDNS構成をリストします。通常、Linux/UNIXでは、起動時にCRSCTLが/etc/resolv.confファイルを読み取り、ユーザーが再起動するか、リゾルバが再起動されるまで、そのファイルの内容がシステムの構成となります。CRSCTLは、その情報をリゾルバから取得します。このパラメータを使用したり、必要に応じて、コマンド構文文字列に他のパラメータを指定することもできます。

-name name

参照する完全修飾ドメイン名を指定します。

-dnsserver DNS_server_address

ドメイン名を参照するDNSサーバーのアドレスを指定します。

-port port

DNSサーバーがリスニングするポート。ポートを指定しないと、デフォルトのポート53が使用されます。

-attempts number_of_attempts

再試行の回数を指定します。

-timeout timeout_in_seconds

タイムアウトの時間(秒)を指定します。

-v

詳細な出力。

例

crsctl query dnsコマンドによって、stmjk07-vip.stmjk0462.foo.comというDNSサーバーについて、次のような出力が戻されます。

CRS-10024: DNS server returned 192.168.29.250 for name
stmjk07-vip.stmjk0462.foo.com

-serversオプションを選択すると、次のような出力が戻されます。

CRS-10018: the following configuration was found on the system:
CRS-10019: There are 3 domains in search order. They are:
us.foo.com
foo.com
foocorp.com
CRS-10022: There are 3 name servers. They are:
192.168.249.41
192.168.249.52
192.168.202.15
CRS-10020: number of retry attempts for name lookup is: 2
CRS-10021: timeout for each name lookup is: 1

crsctl release dhcp

Oracle Database 11gリリース2(11.2.0.2)以降では、DHCPリースの解放リクエストを特定のクライアントIDに送信し、ネットワークでの解放パケットを特定のポートに送信するには、crsctl release dhcpコマンドを使用します。

構文

crsctl release dhcp -clientid clientid [-port port]

パラメータ

表E-26 crsctl release dhcpコマンドのパラメータ

パラメータ

説明

-clientid clientid

解放したいクライアントIDを指定します。クライアントIDは、crsctl get clientidコマンドを実行して取得します。

-port port

CRSCTLが解放パケットを送信するポート。ポートを指定しないと、CRSCTLはデフォルト値の67を使用します。

例

crsctl release dhcpコマンドでは次のような出力が戻されます。

$ crsctl release dhcp -clientid  stmjk0462clr-stmjk01-vip

CRS-10012: released DHCP server lease for client ID stmjk0462clr-stmjk01-vip
on port 67

crsctl relocate resource

クラスタ内の別のサーバーにリソースを再配置するには、crsctl relocate resourceコマンドを使用します。

構文

crsctl relocate resource {resource_name | resource_name | -all -s source_server |
-w "filter"} [-n destination_server] [-k cid] [-env "env1=val1,env2=val2,..."]
[-i] [-f]

パラメータ

表E-27 crsctl relocate resourceコマンドのパラメータ

パラメータ

説明

resource_name

再配置するリソースの名前。

resource_name | -all
-s source_server

1つの特定のリソース、または再配置対象のリソースの再配置元である特定のサーバーに存在するすべてのリソースを指定します。

-w "filter"

再配置されるリソースの数を制限するためにOracle Clusterwareによって使用されるリソース・フィルタを指定します。フィルタは二重引用符("")で囲む必要があります。次にリソース・フィルタの例を示します。

- "TYPE == cluster_resource": このフィルタは、cluster_resourceタイプのリソースのみを再配置するようにOracle Clusterwareを制限します。

- "CHECK_INTERVAL > 10": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持つリソースを再配置するようにOracle Clusterwareを制限します。

- "(CHECK_INTERVAL > 10) AND (NAME co 2)": このフィルタは、CHECK_INTERVALリソース属性に10より大きい値を持ち、かつ、リソースの名前に数字2が含まれるリソースを再配置するようにOracle Clusterwareを制限します。

-n destination_server

リソースの再配置先サーバーの名前を指定します。宛先サーバーを指定しない場合、Oracle Clusterwareでは各リソースの属性プロファイルに従い、最適なサーバーにリソースが再配置されます。

-k cid

リソースのカーディナリティIDを指定します。このパラメータを指定すると、指定したカーディナリティのリソース・インスタンスがOracle Clusterwareによって再配置されます。

-env "env1=val1,
env2=val2,..."

必要に応じて、このコマンドの1つ以上のリソース・プロファイル属性値を上書きできます。複数の環境名/値ペアを指定する場合、各ペアをカンマで区切り、リスト全体を二重引用符("")で囲む必要があります。

-i

-iを指定すると、このコマンドの処理でOracle Clusterwareがリソースまたはその依存リソースをロック解除するのを待機する必要がある場合、コマンドはエラーを戻します。コマンドが互いに影響しないように、Oracle Clusterwareによってリソースまたは他のオブジェクトがロックされることがあります。

-f

再配置対象のリソースに依存している他のリソースが実行中である場合に再配置対象のリソースを強制的に再配置するには、-fオプションを指定します。このオプションを使用すると、依存リソースは再配置または停止されます。

注意: 1より大きいカーディナリティを持つリソースを再配置する場合、-kまたは-sのいずれかを使用して、再配置対象のリソース・インスタンスを絞り込む必要があります。

使用上の注意

- 再配置対象のリソースを指定するには、次の3つの方法のいずれかを使用する必要があります。

- 再配置対象の1つの特定のリソースを指定します。

- または、特定のソース・サーバーから再配置する1つの特定のリソースまたはすべてのリソースを指定できます。

- 3つ目の方法として、Oracle Clusterwareによって再配置対象のリソースの照合に使用されるリソース・フィルタを指定します。

- リソースの程度IDが1より大きい場合、このリソースのすべてのインスタンスがOracle Clusterwareによって再配置されます。

- 指定したリソースを再配置するには、それらのリソースに対する読取りおよび実行権限が必要です。

- oraで始まる名前を持つリソースはOracleリソースであるため、これらのリソースにはこのコマンドを使用しないでください。

例

あるサーバーから別のサーバーに1つの特定のリソースを再配置するには、次のコマンドを実行します。

# crsctl relocate resource myResource1 -s node1 -n node3

crsctl relocate server

別のサーバー・プールにサーバーを再配置するには、crsctl relocate serverコマンドを使用します。

構文

crsctl relocate server server_name [...] -c server_pool_name [-i] [-f]

パラメータ

表E-28 crsctl relocate serverコマンドのパラメータ

パラメータ

説明

server_name

再配置するサーバーの名前。複数のサーバーを再配置する場合は、空白区切りのリストでサーバーを指定できます。

-c server_pool_name

サーバーの再配置先のサーバー・プールの名前を指定します。

-i

-iを指定すると、Oracle Clusterwareでリクエストをすぐに処理できない場合にコマンドが失敗します。

-f

-fオプションを指定すると、Oracle Clusterwareでは別のサーバー・プール内のサーバーで実行中のリソースが停止され、指定したサーバー・プールにそのサーバーが再配置されます。

-fオプションを指定しない場合、Oracle Clusterwareでは停止する必要のあるリソースが再配置対象のサーバーにあるかどうかがチェックされます。該当するものが検出された場合、Oracle Clusterwareではcrsctl relocate serverコマンドが拒否されます。

使用上の注意

- server_nameパラメータおよび-c server_pool_nameパラメータは必須です。

例

node6サーバーおよびnode7サーバーを、それらのノード上のアクティブなリソースを阻害することなくsp1サーバー・プールに移動するには、次のコマンドを使用します。

$ crsctl relocate server node6 node7 -c sp1

crsctl replace discoverystring

投票ディスク・ファイルの配置に使用される既存の検出文字列を置換するには、crsctl replace discoverystringコマンドを使用します。

構文

crsctl replace discoverystring "absolute_path[,...]"

パラメータ

表E-29 crsctl replace discoverystringコマンドのパラメータ

パラメータ

説明

absolute_path

1つ以上の投票ディスク・ファイルの場所に一致する絶対パスを、カンマ区切りで指定します。ワイルドカードを使用できます。

パスのリストは、二重引用符("")で囲んで記述します。

使用上の注意

- このコマンドを実行するには、root、Oracle Clusterwareインストール所有者または管理者グループのメンバーである必要があります。

- クラスタ内の任意のノードでこのコマンドを実行できます。

例

現在の検出文字列が/oracle/css1/*だとします。/oracle/css2/ディレクトリの投票ディスク・ファイルも使用するには、次のコマンドを使用して現在の検出文字列を置換します。

# crsctl replace discoverystring "/oracle/css1/*,/oracle/css2/*"

crsctl replace votedisk

既存の投票ディスクを移動または置換するには、crsctl replace votediskコマンドを使用します。このコマンドを使用すると、Oracle ASMであれ他の記憶域オプションであれ、指定した場所に投票ディスクが作成されます。Oracle Clusterwareによって既存の投票ディスク情報が新しい場所にコピーされ、以前の場所からその投票ディスクが削除されます。

構文

crsctl replace votedisk [+asm_disk_group | path_to_voting_disk [...]]

パラメータ

表E-30 crsctl replace votediskコマンドのパラメータ

パラメータ

説明

+asm_disk_group

投票ディスクの配置先Oracle ASMのディスク・グループを指定します。

path_to_voting_disk [...]

Oracle ASMの外部に存在する投票ディスク・ファイルへの投票ディスク・ファイル・パスの空白区切りのリスト。

使用上の注意

- このコマンドを実行するには、root、Oracle Clusterwareインストール所有者または管理者グループのメンバーである必要があります。

- 投票ディスクを置換する場合は、Oracle ASMディスク・グループや他のストレージ・デバイスに存在するものを指定します。

- クラスタ内の任意のノードでこのコマンドを実行できます。

例

例1

Oracle ASM内に配置されている投票ディスクを置換するには、次のコマンドを実行します。

$ crsctl replace votedisk +diskgroup1

例2

共有ファイル・システムに配置されている投票ディスクを置換するには、次のコマンドを実行します。

$ crsctl replace votedisk /mnt/nfs/disk1 /mnt/nfs/disk2

crsctl request dhcp

Oracle Database 11gリリース2(11.2.0.2)以降では、指定したポートでネットワークでのDHCP要求パケットを送信するには、crsctl request dhcpコマンドを使用します。DHCPサーバーに提供可能なIPアドレスがある場合は、クライアントIDのIPアドレスで応答します。

構文

crsctl request dhcp -clientid clientid [-port port]

パラメータ

表E-31 crsctl request dhcpコマンドのパラメータ

パラメータ

説明

-clientid clientid

要求したいクライアントIDを指定します。クライアントIDは、crsctl get clientidコマンドを実行して取得します。

-port port

CRSCTLが要求パケットを送信するポート。ポートを指定しないと、CRSCTLはデフォルト値の67を使用します。

例

crsctl request dhcpコマンドでは次のような出力が戻されます。

$ crsctl request dhcp -clientid stmjk0462clr-stmjk01-vip

CRS-10009: DHCP server returned server: 192.168.53.232,
loan address : 192.168.29.228/255.255.252.0, lease time: 43200

crsctl set css

クラスタ同期サービスのパラメータ値を設定するには、crsctl set cssコマンドを使用します。

構文

crsctl set css parameter value

使用上の注意

- My Oracle Supportから指示された場合を除き、crsctl set cssコマンド使用して次のパラメータを設定しないでください。

- クラスタ同期サービスのパラメータは次のとおりです。

diagwait
disktimeout
logfilesize
misscount
priority
reboottime

crsctl set css ipmiaddr

ローカルのIntelligent Platform Management Interface(IPMI)デバイスのアドレスをOracle Local Registryに格納するには、crsctl set css ipmiaddrコマンドを使用します。

構文

crsctl set css ipmiaddr ip_address

使用上の注意

- Oracle Clusterwareのインストールに使用されたユーザー・アカウントでコマンドを実行します。

- ローカル・サーバーで、rootとしてipmiutilまたはipmitoolを使用して、IPMIデバイスによって使用されるIPアドレスを取得します

- Oracle ClusterwareによってIPMIのIPアドレスが構成ストアに格納され、必要に応じてアドレスが配布されます。

- このコマンドでは、コマンドを実行したサーバーのIPMI IPアドレスのみが格納されます。

- 指定したアドレスのIPMIに別のサーバーがアクセスできない場合、このコマンドは失敗します。

例

IPMI IPアドレスをローカル・サーバーに格納して他のクラスタ・ノードに配布するには、次のコマンドを実行します。

$ crsctl set css ipmiaddr 192.0.2.244

crsctl set css ipmiadmin

Intelligent Platform Management Interface(IPMI)管理者のログイン資格証明をOracle Local Registryに格納するには、crsctl set css ipmiadminコマンドを使用します。

構文

crsctl set css ipmiadmin ipmi_administrator_name

使用上の注意

- このコマンドは、Oracle Clusterwareをインストールしたユーザー・アカウントで実行する必要があります。

- プロンプトに従い、新しい管理者アカウントの名前と関連付ける新しいパスワードを指定します。Oracle ClusterwareによってローカルのIPMIの名前およびパスワードが構成ストアに格納され、必要に応じて新しい資格証明が配布されます。

- このコマンドでは、このコマンドを実行したサーバーのIPMI管理者のみが変更されます。

- 指定したアドレスのローカルIPMIに別のサーバーがアクセスできない場合、このコマンドは失敗します。

例

IPMI管理者scottを変更するには、次のコマンドを実行します。

$ crsctl set css ipmiadmin scott

crsctl setperm serverpool

特定のサーバー・プールの権限を設定するには、crsctl setperm serverpoolコマンドを使用します。

構文

crsctl setperm serverpool server_pool_name {-u acl_string | -x acl_string |
-o user_name | -g group_name}

パラメータ

表E-32 crsctl setperm serverpoolコマンドのパラメータ

パラメータ

説明

server_pool_name

権限を設定するサーバー・プールの名前を指定します。

{-u | -x | -o | -g}

サーバー・プールには次のパラメータのうち1つのみを指定できます。

- -u acl_string: サーバー・プールのアクセス制御リスト(ACL)を更新できます。

- -x acl_string: サーバー・プールのACLを削除できます。

- -o user_name: ユーザー名を入力することによってサーバー・プールの所有者を変更できます。

- -g group_name: グループ名を入力することによってサーバー・プールのプライマリ・グループを変更できます。

ユーザー、グループ、他のACL文字列は次のように指定します。

user:user_name[:readPermwritePermexecPerm] |
group:group_name[:readPermwritePermexecPerm] |
other[::readPermwritePermexecPerm]

- user: ユーザーACL

- group: グループACL

- other: その他のACL

- readPerm: サーバー・プールに対する読取り権限。文字rはユーザー、グループ、その他の読取り権限を付与し、マイナス記号(-)は読取り権限を付与しません。

- writePerm: サーバー・プールに対する書込み権限。文字wはユーザー、グループ、その他の書込み権限を付与し、マイナス記号(-)は書込み権限を付与しません。

- execPerm: サーバー・プールに対する実行権限。文字xはユーザー、グループ、その他の実行権限を付与し、マイナス記号(-)は実行権限を付与しません。

使用上の注意

- server_pool_nameパラメータは必須です。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

例

サーバー・プールに対する読取り、書込み、および実行権限をユーザーScott Tigerに付与するには、次のコマンドを実行します。

crsctl setperm serverpool sp3 -u user:scott.tiger:rwx

crsctl start cluster

Oracle Clusterwareスタックを起動するには、クラスタ内の任意のノードでcrsctl start clusterコマンドを使用します。

構文

crsctl start cluster [-all | -n server_name [...]]

使用上の注意

- クラスタ内のすべてのサーバーのOracle Clusterwareスタックを起動するか、クラスタ内の指定した(複数の場合はサーバー名を空白で区切って指定した)1つ以上のサーバー上のOracle Clusterwareスタックを起動するか、または、-allも-nも指定せずに、ローカル・サーバー上のOracle Clusterwareスタックを起動するかを選択できます。

- クラスタ内の任意のノードでこのクラスタ対応コマンドを使用できます。

例

指定した2つのサーバー上のOracle Clusterwareスタックを起動するには、rootとして次のコマンドを実行します。

# crsctl start cluster -n node1 node2

crsctl start crs

ローカル・サーバーでOracle高可用性サービスを起動するには、crsctl start crsコマンドを使用します。

構文

crsctl start crs

使用上の注意

- このコマンドによって起動されるのは、ローカル・サーバーのOracle高可用性サービスのみです。

例

ローカル・サーバーのOracle高可用性サービスを起動するには、rootとして次のコマンドを実行します。

# crsctl start crs

crsctl start ip

Oracle Database 11gリリース2(11.2.0.2)以降では、指定したサブネット・マスクの特定のインタフェースで特定のIP名またはIPアドレスを起動するには、crsctl start ipコマンドを使用します。このコマンドは、起動するIPが存在するサーバーで実行します。

構文

crsctl start ip -A {IP_name | IP_address}/netmask/interface_name

パラメータ

表E-33 crsctl start ipコマンドのパラメータ

パラメータ

説明

{IP_name | IP_address}

ドメイン名またはIPアドレスを指定します。

完全修飾ドメイン名を指定しないと、CRSCTLでは標準の名前検索が使用されます。

netmask

起動するIPのサブネット・マスクを指定します。

interface_name

IPを起動するインタフェースを指定します。

例

ローカル・サーバーでIPを起動するには、次のようなコマンドを実行します。

$ crsctl start ip -A 192.168.29.220/255.255.252.0/eth0

crsctl start testdns

Oracle Database 11gリリース2(11.2.0.2)以降では、指定したIPアドレスおよびポートをリスニングするテストDNSサーバーを起動するには、crsctl start testdnsコマンドを使用します。テストDNSサーバーは、受信したパケットを表示しますが、受信パケットに応答することはありません。通常、このコマンドは、ドメイン転送がGNSドメイン用に正しく設定されていることを確認するために使用します。

構文

crsctl start testdns [-address address [-port port]] [-once] [-v]

パラメータ

表E-34 crsctl start testdnsコマンドのパラメータ

パラメータ

説明

-address address

サーバー・アドレスをIP_address/netmask [/interface_name]の書式で指定します。

-port port

サーバーがリスニングするポート。ポートを指定しないと、デフォルトのポート53が使用されます。

-once

DNSサーバーが1つのDNS問合せパケットを受信した後に終了する必要がある場合、このフラグを指定します。

-v

詳細な出力。

例

ローカル・サーバーでテストDNSサーバーを起動するには、次のようなコマンドを実行します。

$ crsctl start testdns -address 192.168.29.218 -port 63 -v

crsctl status ip

Oracle Database 11gリリース2(11.2.0.2)以降では、特定のIPアドレスがネットワークで起動しているかどうかをチェックするには、crsctl status ipコマンドを使用します。

構文

crsctl status ip -A {IP_name | IP_address}

パラメータ

表E-35 crsctl status ipコマンドのパラメータ

パラメータ

説明

{IP_name | IP_address}

ドメイン名またはIPアドレスを指定します。

完全修飾ドメイン名を指定しないと、CRSCTLでは標準の名前検索が使用されます。

例

crsctl status ipコマンドでは次のような出力が戻されます。

CRS-10003: IP address 192.168.29.220 could be reached from current node

crsctl status server

1つ以上の特定のサーバーのステータスおよび構成情報を取得するには、crsctl status serverコマンドを使用します。

構文

crsctl status server [-p | -v | -f]

crsctl status server { server_name [...] | -w "filter"} [-g | -p | -v | -f]

パラメータ

表E-36 crsctl status serverコマンドのパラメータ

パラメータ

説明

server_name [...]

1つ以上のサーバー名を空白区切りで指定します。

-w "filter"

表示対象のサーバーを決定するフィルタを指定します。フィルタは二重引用符("")で囲む必要があります。値にカッコまたは空白が含まれる場合、一重引用符('')で囲む必要があります。たとえば、"STATE = ONLINE"と指定すると、オンラインのサーバーのみが表示されます。

関連項目: フィルタの詳細は、「フィルタ」を参照してください。

-g | -p | -v | -f

Oracle Clusterwareで特定のサーバーのステータスをチェックする場合には、次のパラメータのいずれかを指定できます。

- -g: 指定したサーバーが登録されているかどうかをチェックする場合にこのパラメータを使用します。

- -p: 指定したサーバーの静的な構成を表示する場合にこのパラメータを使用します。

- -v: 指定したサーバーの実行時の構成を表示する場合にこのパラメータを使用します。

- -f: 指定したサーバーのすべての構成を表示する場合にこのパラメータを使用します。

例

例1

crsctl status serverコマンドでは次のような出力が戻されます。

NAME=node1
STATE=ONLINE

NAME=node2
STATE=ONLINE

例2

特定のサーバーのすべての構成を表示するには、次のようなコマンドを入力します。

$ crsctl status server node2 -f
NAME=node2
STATE=ONLINE
ACTIVE_POOLS=Generic ora.orcl
STATE_DETAILS=

crsctl status serverpool

1つ以上の特定のサーバー・プールのステータスおよび構成情報を取得するには、crsctl status serverpoolコマンドを使用します。

構文

crsctl status serverpool [-p | -v | -f]

crsctl status serverpool [server_pool_name [...]] [-w] [-g | -p | -v | -f]

パラメータ

表E-37 crsctl status serverpoolコマンドのパラメータ

パラメータ

説明

[server_pool_name [...]

1つ以上のサーバー・プール名を空白区切りで指定します。

[-g | -p | -v | -f]

必要に応じて、次のパラメータのいずれかを指定できます。

- -w: MIN_SIZE > 3などのフィルタを二重引用符("")で囲んで指定する場合にこのパラメータを使用します。

- -g: 指定したサーバー・プールが登録されているかどうかをチェックする場合にこのパラメータを使用します。

- -p: 指定したサーバー・プールの静的な構成を表示する場合にこのパラメータを使用します。

- -v: 指定したサーバー・プールの実行時の構成を表示する場合にこのパラメータを使用します。

- -f: 指定したサーバー・プールのすべての構成を表示する場合にこのパラメータを使用します。

使用上の注意

- server_pool_nameパラメータまたはフィルタは必須です。

- oraで始まる名前を持つサーバー・プールはOracleのサーバー・プールであるため、これらのサーバー・プールにはこのコマンドを使用しないでください。

- このコマンドはどの環境でも使用できますが、Oracle RAC環境でのみ役立ちます。

例

例1

サーバー・プールsp1のすべての構成を表示するには、次のコマンドを実行します。

$ crsctl status serverpool sp1 -f
NAME=spl
IMPORTANCE=1
MIN_SIZE=0
MAX_SIZE=-1
SERVER_NAMES=node3 node4 node5
PARENT_POOLS=Generic
EXCLUSIVE_POOLS=
ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--
ACTIVE_SERVERS=node3 node4

例2

すべてのサーバー・プールおよびそれらに関連付けられたサーバーを表示するには、次のコマンドを使用します。

$ crsctl status serverpool
NAME=Free
ACTIVE_SERVERS=

NAME=Generic
ACTIVE_SERVERS=node1 node2

NAME=ora.orcl
ACTIVE_SERVERS=node1 node2

NAME=sp1
ACTIVE_SERVERS=node3 node4

例3

特定の基準を満たすサーバー・プールを検索するには、次のコマンドを使用します。

$ crsctl status serverpool -w "MAX_SIZE > 1"
NAME=sp2
ACTIVE_SERVERS=node3 node4

crsctl status testdns

Oracle Database 11gリリース2(11.2.0.2)以降では、指定したアドレスおよびローカル・ホスト名で実行されているテストDNSサーバーを問い合せるには、crsctl status testdnsコマンドを使用します。

構文

crsctl status testdns [-server DNS_server_address] [-port port] [-v]

パラメータ

表E-38 crsctl status testdnsコマンドのパラメータ

パラメータ

説明

-server DNS_server_address

ステータスを確認するDNSサーバーのアドレスを指定します。

-port port

DNSサーバーがリスニングするポート。ポートを指定しないと、デフォルトのポート53が使用されます。

-v

詳細な出力。

例

crsctl status testdnsコマンドでは次のような出力が戻されます。

CRS-10024: DNS server returned 192.168.28.74 for name
stmjk07-vip.stmjk0462.foo.com

crsctl stop cluster

クラスタ内の任意のノードで、クラスタ内のすべてのサーバー上または特定のサーバー上のOracle Clusterwareスタックを停止するには、crsctl stop clusterコマンドを使用します。

構文

crsctl stop cluster [-all | -n server_name [...]] [-f]

使用上の注意

- -allを指定しない場合、または空白区切りの1つ以上のサーバー名を指定しない場合、Oracle Clusterwareによってローカル・サーバーのOracle Clusterwareスタックが停止されます。

- クラスタ内の任意のノードでこのクラスタ対応コマンドを使用できます。

- このコマンドでは、Oracle Clusterwareスタックの停止試行中、Oracle Clusterwareによって管理されるリソースの正常な停止が試行されます。
Oracle Clusterwareによって管理される任意のリソースが、crsctl stop clusterコマンドの実行後も実行されている場合、コマンドは失敗します。すべてのリソースを無条件で停止し、Oracle Clusterwareスタックを停止するには、-fオプションを使用します。

- すべてのノードまたはリストされたノードでOracle Clusterwareを停止する場合は、crsctl stop clusterコマンドを使用しますが、これは、このコマンドを使用すると、Oracle Clusterwareスタックが特定のサーバーで停止される前に特定のリソースがクラスタ内の他のサーバーに再配置されないためです。1つ以上のノードでOracle高可用性サービスを停止する必要がある場合は、crsctl stop clusterコマンドが完了するまで待機してから、必要に応じて、特定のノードでcrsctl stop crsコマンドを実行します。

例

特定のサーバー上のOracle Clusterwareスタックを停止するには、次のコマンドを実行します。

# crsctl stop cluster -n node1

crsctl stop crs

ローカル・サーバーでOracle高可用性サービスを停止するには、crsctl stop crsコマンドを使用します。

構文

crsctl stop crs [-f]

使用上の注意

- このコマンドでは、ローカル・サーバーのOracle高可用性サービスの停止試行中、Oracle Clusterwareによって管理されるリソースの正常な停止が試行されます。
Oracle Clusterwareによって管理される任意のリソースが、crsctl stop crsコマンドの実行後も実行されている場合、コマンドは失敗します。すべてのリソースを無条件で停止し、ローカル・サーバーのOracle高可用性サービスを停止するには、-fオプションを使用します。

- すべてのノードまたはリストされたノードでOracle Clusterwareを停止する場合は、crsctl stop clusterコマンドを使用しますが、これは、このコマンドを使用すると、Oracle Clusterwareスタックが特定のサーバーで停止される前に特定のリソースがクラスタ内の他のサーバーに再配置されないためです。1つ以上のノードでOracle高可用性サービスを停止する必要がある場合は、crsctl stop clusterコマンドが完了するまで待機してから、必要に応じて、特定のノードでcrsctl stop crsコマンドを実行します。

- Oracle Clusterware 11gリリース2(11.2.0.3)では、このコマンドをSolaris Sparc環境およびSolaris X64環境で実行すると、停止時およびその後の起動時にドライバはロードされたままになります。これは、Linux環境では発生しません。

例

ローカル・サーバーのOracle高可用性サービスを停止するには、次のコマンドを実行します。

# crsctl stop crs

crsctl stop ip

Oracle Database 11gリリース2(11.2.0.2)以降では、指定したサブネット・マスクの特定のインタフェースで特定のIP名またはIPアドレスを停止するには、crsctl stop ipコマンドを使用します。このコマンドは、停止するIPが存在するサーバーで実行します。

構文

crsctl stop ip -A {IP_name | IP_address}/interface_name

パラメータ

表E-39 crsctl stop ipコマンドのパラメータ

パラメータ

説明

{IP_name | IP_address}

ドメイン名またはIPアドレスを指定します。

完全修飾ドメイン名を指定しないと、CRSCTLでは標準の名前検索が使用されます。

interface_name

IPを起動するインタフェースを指定します。

例

ローカル・サーバーでIPを停止するには、次のようなコマンドを実行します。

$ crsctl stop ip -A MyIP.domain.com/eth0

crsctl stop testdns

Oracle Database 11gリリース2(11.2.0.2)以降では、テストDNSサーバーを停止するには、crsctl stop testdnsコマンドを使用します。

構文

crsctl stop testdns [-address address [-port port]] [-domain GNS_domain] [-v]

パラメータ

表E-40 crsctl stop testdnsコマンドのパラメータ

パラメータ

説明

-address address

テストDNSサーバーを起動したときのサーバー・アドレスをIP_address/netmask [/interface_name]の書式で指定します。

-port port

DNSサーバーがリスニングするポート。ポートを指定しないと、デフォルトのポート53が使用されます。

[-domain GNS_domain]

サーバーによるリスニングを停止する必要があるドメイン。

-v

詳細な出力。

例

crsctl stop testdnsコマンドでは次のような出力が戻されます。

CRS-10032: successfully stopped the DNS listening daemon running on port 53 on
local node

crsctl unpin css

多数のサーバーの固定を解除するには、crsctl unpin cssコマンドを使用します。固定されていないノードの場合、停止中にその期限が切れると、ノード番号が変更される可能性があります。

構文

crsctl unpin css -n node_name [node_name [...exit]]

使用上の注意

- ノードを空白区切りのリストで指定できます。

- 1週間より長い期間停止していた固定解除済サーバーは、olsnodesではレポートされません。これらのサーバーはクラスタから動的に離れるため、ユーザーがクラスタから明示的に削除する必要はありません。

- crsctl delete nodeコマンドを使用してノードを削除すると、ノードの固定も暗黙的に解除されます。

- Oracle Clusterwareのアップグレード時にはすべてのサーバーが固定されますが、Oracle Clusterware 11gリリース2(11.2)の新規インストール後は、クラスタに追加するすべてのサーバーの固定が解除されます。

- 11gリリース2(11.2)より古いOracle RACインスタンスがあるサーバーにOracle Clusterware 11gリリース2(11.2)をインストールした場合、そのサーバーの固定を解除することはできません。

例

2つのノードの固定を解除するには、次のコマンドを実行します。

$ crsctl unpin css -n node1 node4

crsctl unset css

クラスタ同期サービスのパラメータ値の設定を解除してデフォルト値にリストアするには、crsctl unset cssコマンドを使用します。

構文

crsctl unset css parameter

使用上の注意

- 次のクラスタ同期サービスのパラメータを指定できます。

- diagwait

- disktimeout

- misscount

- reboottime

- priority

- logfilesize

例

クラスタ同期サービスのパラメータreboottimeをデフォルト値にリストアするには、次のコマンドを実行します。

$ crsctl unset css reboottime

crsctl unset css ipmiconfig

Oracle Database 11gリリース2(11.2.0.2)以降では、Oracle Local Registryから以前に格納されたすべてのIPMI構成(ログイン資格証明およびIPアドレス)を消去するには、crsctl unset css ipmiconfigコマンドを使用します。このコマンドは、クラスタでIPMIを構成解除する場合、またはIPMI構成が不適切なユーザーによって以前に格納された場合に適しています。

構文

crsctl unset css ipmiconfig

使用上の注意

- このコマンドは、IPMIを構成するときに使用したユーザー・アカウントまたは権限を持つユーザーで実行する必要があります。

- このコマンドでは、このコマンドを実行したサーバーのIPMI構成のみが消去されます。

- Oracle Clusterwareが、このコマンドで削除する構成データにアクセスして使用できていた場合、Oracle Clusterwareを再起動するまで、引き続きアクセスおよび使用が可能です。

例

Oracle Local RegistryからIPMI構成データを消去し、IPMIが今後使用されないようにOracle Clusterwareを再起動するには、rootまたはWindowsの管理者グループのメンバーとしてログインし、次のコマンドを実行します。

crsctl unset css ipmiconfig
crsctl stop crs
crsctl start crs

Oracle Restart環境のCRSCTLコマンド

この項に示すコマンドは、Oracle高可用性サービスを制御します。これらのコマンドは、Oracle高可用性サービス・デーモン(ohasd)、Oracle ASM(インストールされている場合)およびクラスタ同期サービス(Oracle ASMがインストールされている場合)で構成される、Oracle Restart環境のOracle高可用性サービス・スタックを管理します。これらのコマンドは、コマンドを実行するローカル・サーバーにのみ影響します。

注意:
Oracleでは、Oracle Restart環境でのcrs_*コマンドの使用はサポートされていません。

クラスタ内の各サーバーの状態は、次の2つのいずれかです。

- スタック全体が起動している状態。Oracle高可用性サービスがアクティブであることを意味します。

- スタック全体が停止している状態。Oracle高可用性サービスが非アクティブであることを意味します。

次のコマンドはOracle Restart環境でのみ使用できます。

- crsctl check has

- crsctl config has

- crsctl disable has

- crsctl enable has

- crsctl query has releaseversion

- crsctl query has softwareversion

- crsctl start has

- crsctl stop has

crsctl check has

ohasdのステータスをチェックするには、crsctl check hasコマンドを使用します。

構文

crsctl check has

使用上の注意

例

crsctl check hasコマンドでは次のような出力が戻されます。

CRS-4638: Oracle High Availability Services is online

crsctl config has

サーバー上のOracle高可用性サービス・スタックの自動起動構成を表示するには、crsctl check hasコマンドを使用します。

構文

crsctl config has

使用上の注意

例

crsctl config hasコマンドでは次のような出力が戻されます。

CRS-4622 Oracle High Availability Services autostart is enabled.

crsctl disable has

サーバーの起動時にOracle高可用性サービス・スタックの自動起動を無効にするには、crsctl disable hasコマンドを使用します。

構文

crsctl disable has

使用上の注意

例

crsctl disable hasコマンドでは次のような出力が戻されます。

CRS-4621 Oracle High Availability Services autostart is disabled.

crsctl enable has

サーバーの起動時にOracle高可用性サービス・スタックの自動起動を有効にするには、crsctl enable hasコマンドを使用します。

構文

crsctl enable has

使用上の注意

例

crsctl enable hasコマンドでは次のような出力が戻されます。

CRS-4622 Oracle High Availability Services autostart is enabled.

crsctl query has releaseversion

ローカル・ノードにバイナリで格納されているOracle Clusterwareソフトウェアのリリース・バージョンを表示するには、crsctl query crs releaseversionコマンドを使用します。

構文

crsctl query has releaseversion

使用上の注意

例

crsctl query has releaseversionコマンドでは次のような出力が戻されます。

Oracle High Availability Services release version on the local node is [11.2.0.0.2]

crsctl query has softwareversion

ローカル・ノードのソフトウェアのバージョンを表示するには、crsctl query has softwareversionコマンドを使用します。

構文

crsctl query has softwareversion

使用上の注意

- サーバー名を指定しない場合、Oracle Clusterwareではローカル・サーバーで実行中のOracle Clusterwareのバージョンが表示されます。

例

crsctl query has softwareversionコマンドでは次のような出力が戻されます。

Oracle High Availability Services version on the local node is [11.2.0.2.0]

crsctl start has

ローカル・サーバーでOracle高可用性サービスを起動するには、crsctl start hasコマンドを使用します。

構文

crsctl start has

使用上の注意

例

ローカル・サーバーのOracle高可用性サービスを起動するには、次のコマンドを実行します。

# crsctl start has

crsctl stop has

ローカル・サーバーでOracle高可用性サービスを停止するには、crsctl stop hasコマンドを使用します。

構文

crsctl stop has [-f]

使用上の注意

- このコマンドでは、Oracle高可用性サービスの停止試行中、Oracle Clusterwareによって管理されるリソースの正常な停止が試行されます。
Oracle Clusterwareによって管理される任意のリソースが、crsctl stop hasコマンドの実行後も実行されている場合、コマンドは失敗します。すべてのリソースを無条件で停止し、Oracle高可用性サービスを停止するには、-fオプションを使用します。

例

ローカル・サーバーのOracle高可用性サービスを停止するには、次のコマンドを実行します。

# crsctl stop has

トラブルシューティングおよび診断出力

rootユーザーとしてcrsctl set logコマンドを使用して、クラスタ・レディ・サービス(CRS)、クラスタ同期サービス(CSS)、イベント・マネージャ(EVM)およびクラスタウェア・サブコンポーネントの動的デバッグを有効にできます。crsctl debugコマンドを使用して、デバッグ・レベルを動的に変更できます。デバッグ情報は、次回の起動で使用するために、Oracle Cluster Registry(OCR)に保存されます。リソースのデバッグを有効にすることもできます。

この項の内容は次のとおりです。

- 動的デバッグ

- コンポーネント・レベルのデバッグ

- Oracle Clusterwareリソースのデバッグの有効化

- Oracle Clusterwareコンポーネントのための追加トレースの有効化

動的デバッグ

この項では、デバッグに役立つ次のCRSCTLコマンドについて説明します。

- crsctl set log

crsctl set log

Oracle Clusterwareのログ・レベルを設定するには、crsctl set logコマンドを使用します。

構文

crsctl set log {[crs | css | evm "component_name=log_level, [...]"] |
[all=log_level]}

次のように、特定のリソースのエージェントのログ・レベルを設定することもできます。

crsctl set log res "resource_name=log_level, [...]"

使用上の注意

- CRS、CSSおよびEVMの3つのモジュールの様々なコンポーネントにログ・レベルを設定できます。allオプションを選択すると、1つのモジュールのすべてのコンポーネントに1つのコマンドでログ・レベルを設定できます。各モジュールのコンポーネントのリストを取得するには、crsctl lsmodulesコマンドを使用します。

- コンポーネント名/ログ・レベルのペアをカンマで区切り、二重引用符("")で囲んだリストを入力します。

注意:
Oracle Clusterware 11gリリース2(11.2)では、コンポーネント名/ログ・レベルのペアは等号(=)で分割します。以前のバージョンのOracle Clusterwareでは、コロン(:)が使用されていました。

- log_levelは、コンポーネントまたはリソースのログ・レベルを設定する1から5までの番号です。1は最小ログ出力、5は最も詳細なログ出力を表します。デフォルトのログ・レベルは2です。

- リソースのログ・レベルを設定するには、特定のリソースの名前か、またはリソース名/ログ・レベルのペアをカンマで区切り、二重引用符("")で囲んだリストを指定します。

例

CRSモジュールのCRSRTIコンポーネントおよびCRSCOMMコンポーネントのログ・レベルを設定するには、次のコマンドを実行します。

$ crsctl set log crs "CRSRTI=1,CRSCOMM=2"

EVMモジュールのすべてのコンポーネントのログ・レベルを設定するには、次のコマンドを実行します。

$ crsctl set log evm all=2

リソースのログ・レベルを設定するには、次のコマンドを実行します。

$ crsctl set log res "myResource1=3"

コンポーネント・レベルのデバッグ

rootユーザーとしてcrsctl set logおよびcrsctl set traceコマンドを使用して、様々なOracle Clusterwareモジュールの動的デバッグを有効にできます。

この項には次のトピックが含まれます:

- Oracle Clusterwareモジュールのデバッグの有効化

- デバッグ・レベルを含む初期化ファイルの作成

Oracle Clusterwareモジュールのデバッグの有効化

環境変数を設定するか、または次の構文を使用してcrsctl set logコマンドを実行することによって、Oracle Clusterwareモジュールおよびそれらのコンポーネントやリソースのデバッグを有効にできます。

crsctl set {log | trace} module_name "component:debugging_level
[,component:debugging_level][,...]"

crsctl setコマンドをrootユーザーとして実行し、次の情報を指定します。

- module_name: 次のいずれかのモジュールの名前。
mdns: マルチキャスト・ドメイン名サーバー
gpnp: グリッド・プラグ・アンド・プレイ・サービス
css: クラスタ同期サービス
crf: クラスタ状態モニター
crs: クラスタ・レディ・サービス
ctss: クラスタ時刻同期化サービス
evm: イベント・マネージャ
gipc: グリッド・プロセス間通信

- component: いずれかのモジュールのコンポーネントの名前。すべてのコンポーネントのリストについては、表E-41を参照してください。

- debugging_level: 1から5までの番号は、デバッグ・コマンドで戻す詳細レベルを示します。1は最小デバッグ出力、5は最も詳細なデバッグ出力を表します。デフォルトのデバッグ・レベルは2です。
crsctlコマンドでデバッグ・レベルを動的に変更するか、「デバッグ・レベルを含む初期化ファイルの作成」で説明するとおり、デバッグ・レベルを変更できるように初期化ファイルを構成できます。

次のコマンドでは、様々なモジュールに対してデバッグを有効にする方法の例を示します。

- Oracle Clusterwareのデバッグを有効にする方法

crsctl set log crs "CRSRTI:1,CRSCOMM:2"

- OCRのデバッグを有効にする方法

crsctl set log crs "CRSRTI:1,CRSCOMM:2,OCRSRV:4"

- EVMのデバッグを有効にする方法

crsctl set log evm "EVMCOMM:1"

- リソースのデバッグを有効にする方法

crsctl set log res "resname:1"

デバッグに使用可能なコンポーネントのリストを取得するには、次のようにcrsctl lsmodulesコマンドを実行します。

crsctl lsmodules {mdns | gpnp | css | crf | crs | ctss | evm | gipc}

注意:
crsctl lsmoduluesコマンドを実行するために、rootユーザーである必要はありません。

表E-41に、モジュールCRS、CSSおよびEVMのそれぞれのコンポーネントを示します。一部のコンポーネント名はCRS、EVMおよびCSSのデーモン間で共通であり、特定のデーモンで有効な場合があることに注意してください。たとえば、COMMNSはNSレイヤーで、NSレイヤーは各デーモンで使用されるため、いずれかのデーモンでこの特定のモジュール・コンポーネントを有効にして、特定のデバッグ情報を取得できます。

表E-41 CRS、CSSおよびEVMモジュールのコンポーネント

CRSコンポーネント脚注1

CSSコンポーネント脚注2

EVMコンポーネント脚注3

CRSUI
CRSCOMM
CRSRTI
CRSMAIN
CRSPLACE
CRSAPP
CRSRES
CRSCOMM
CRSOCR
CRSTIMER
CRSEVT
CRSD
CLUCLS
CSSCLNT
COMMCRS
COMMNS

CLSF
CSSD
GIPCCM
GIPCGM
GIPCNM
GPNP
OLR
SKGFD

EVMD
EVMDMAIN
EVMCOMM
EVMEVT
EVMAPP
EVMAGENT
CRSOCR
CLUCLS
CSSCLNT
COMMCRS
COMMNS

脚注1: crsctl lsmodules crsコマンドを使用して、CRSコンポーネントのリストを取得します。

脚注2: crsctl lsmodules cssコマンドを使用して、CSSコンポーネントのリストを取得します。

脚注3: crsctl lsmodules evmコマンドを使用して、EVMコンポーネントのリストを取得します。

例1

特定のクラスタ・ノードにデバッグ・レベルを設定するには、-nodelistキーワードおよびノードの名前を次のように含めます。

crsctl set log crs "CRSRTI:1,CRSCOMM:2" -nodelist node1,node2

表E-42に、クラスタ同期サービス・モジュールを示します。

表E-42 クラスタ同期サービス(CSS)・モジュールおよびその機能

モジュール

説明

CSS

CSSクライアント・コンポーネント

CSSD

CSSデーモン・コンポーネント

表E-43に、各通信(COMM)モジュールを示します。

表E-43 通信(COMM)モジュールおよびその機能

モジュール

説明

COMMCRS

Clusterware通信レイヤー

COMMNS

NS通信レイヤー

表E-44に、各CRSモジュールで実行される機能を示します。

表E-44 Oracle Clusterware(CRS)モジュールおよびその機能

モジュール

説明

CRSUI

ユーザー・インタフェース・モジュール

CRSCOMM

通信モジュール

CRSRTI

リソース管理モジュール

CRSMAIN

メイン・モジュール/ドライバ

CRSPLACE

CRS配置モジュール

CRSAPP

CRSアプリケーション

CRSRES

CRSリソース

CRSOCR

Oracle Cluster Registryインタフェース

CRSTIMER

CRSに関連する様々なタイマー

CRSEVT

CRS EVM/イベント・インタフェース・モジュール

CRSD

CRSデーモン

crsctl set log crsコマンドを使用して、表E-45にリストされているOCRコンポーネントをデバッグできます。表E-45にリストされているコンポーネントは、OCRMASおよびOCRASMを除くOracle Local Registry(OLR)にも使用できます。また、OCRMASおよびOCRSRVを除くOCRクライアントおよびOLRクライアントにも使用できます。一部のOCRクライアントおよびOLRクライアントにはOCRCONFIG、OCRDUMPなどがあります。

表E-45 Oracle Cluster Registry(OCR)コンポーネント名

モジュール

説明

OCRAPI

OCR抽象化コンポーネント

OCRCLI

OCRクライアント・コンポーネント

OCRSRV

OCRサーバー・コンポーネント

OCRMAS

OCRマスター・スレッド・コンポーネント

OCRMSG

OCRメッセージ・コンポーネント

OCRCAC

OCRキャッシュ・コンポーネント

OCRRAW

OCR RAWデバイス・コンポーネント

OCRUTL

OCRユーティリティ・コンポーネント

OCROSD

OCRオペレーティング・システム固有(OSD)レイヤー

OCRASM

OCR ASMコンポーネント

表E-46に、OCRツール・モジュールを示します。

表E-46 OCRCONFIGモジュールおよびその機能

モジュール

説明

OCRCONFIG

OCRを構成するためのOCRCONFIGコンポーネント

OCRDUMP

Oracle Cluster Registryの内容を表示するOCRDUMPコンポーネント

OCRCHECK

すべての構成済OCRを検証するOCRCHECKコンポーネント

デバッグ・レベルを含む初期化ファイルの作成

この項では、初期化ファイルでデバッグ・レベルを指定する方法について説明します。このデバッグ情報は、次回の起動で使用できるように保存されます。

デバッグする各プロセスに対して、デバッグ・レベルを指定する初期化ファイルを作成できます。

初期化ファイルのファイル名には、デバッグするプロセスの名前(process_name.ini)が含まれます。ファイルは、Grid_home/log/host_name/admin/ディレクトリに格納されます。たとえば、node1にあるCLSCFGデバッグ初期化ファイルは次のような名前です。

Grid_home/log/node1/admin/clscfg.ini

OCRユーティリティを使用するときに初期化ファイルを使用することもできます。ocrconfig、ocrdumpおよびocrcheckの初期化ファイルは次のとおりです。

Grid_home/srvm/admin/ocrlog.ini

初期化ファイルの書式は次のとおりです。

mesg_logging_level=2
comploglvl="OCRAPI:0;OCRSRV:0"
comptrclvl="OCRAPI:0;OCRSRV:0"

コンポーネント名、ロギングおよびトレース・レベルを指定できます。

関連項目:
crsctlコマンドでレベル番号(1から5まで)を指定して、デバッグ・レベルを動的に変更する情報については、「Oracle Clusterwareモジュールのデバッグの有効化」を参照してください。

Oracle Clusterwareリソースのデバッグの有効化

次の構文を使用してcrsctl set logコマンドを実行することによって、Oracle Clusterwareのリソースのデバッグを有効にできます。

crsctl set log res "resource_name=debugging_level"

crsctl set logコマンドをrootユーザーとして実行し、次の情報を指定します。

- resource_name: デバッグするリソースの名前。

- debugging_level: 1から5までの番号は、デバッグ・コマンドで戻す詳細レベルを示します。1は最小デバッグ出力、5は最も詳細なデバッグ出力を表します。デフォルトのデバッグ・レベルは2です。
crsctlコマンドでデバッグ・レベルを動的に変更するか、「デバッグ・レベルを含む初期化ファイルの作成」で説明するとおり、デバッグ・レベルを変更できるように初期化ファイルを構成できます。

デバッグに使用可能なリソースのリストを取得するには、crsctl status resourceコマンドを実行します。

例1

node1上のVIPリソースのデバッグ・ログを生成するには、次のコマンドを発行します。

crsctl set log res "ora.node1.vip:1"

Oracle Clusterwareコンポーネントのための追加トレースの有効化

My Oracle Supportから、追加情報を取得するトレースを有効にするように要求されることがあります。この項で説明する手順は、パフォーマンスに影響を及ぼすことがあるため、必ずMy Oracle Supportの支援のもとで実行してください。

次の構文を使用してcrsctl set traceコマンドを実行することによって、Oracle Clusterwareのリソースのトレースを有効にできます。

crsctl set trace module_name "component_name=tracing_level,..."

crsctl set traceコマンドをrootユーザーとして実行し、次の情報を指定します。

- module_name: 次のいずれかのモジュールの名前。
mdns: マルチキャスト・ドメイン名サーバー
gpnp: グリッド・プラグ・アンド・プレイ・サービス
css: クラスタ同期サービス
crf: クラスタ状態モニター
crs: クラスタ・レディ・サービス
ctss: クラスタ時刻同期化サービス
evm: イベント・マネージャ
gipc: グリッド・プロセス間通信

- component_name: いずれかのモジュールのコンポーネントの名前。コンポーネントのリストについては、表E-41を参照してください。

- tracing_level: 1から5までの番号は、トレース・コマンドで戻す詳細レベルを示し、1は最小トレース出力、5は最も詳細なトレース出力を表します。

例1

クラスタ同期サービスのトレース・ファイルを生成するには、次のコマンドを使用します。

crsctl set trace "css=3"

F Oracle Clusterware C Application Program Interface

この付録では、Oracle Clusterware C Application Program Interface(API)について説明します。内容は次のとおりです。

- Oracle Clusterwareのプログラミング・インタフェース(C API)について

- 概要

- 使用上の注意

- 非推奨のCLSCRS API

- 対話形式CLSCRS API

- 非対話形式CLSCRS API

関連項目:
Oracle Clusterwareを使用したアプリケーションの高可用性の実現の詳細は、第6章「Oracle Clusterwareを使用したアプリケーションの高可用性の実現」を参照してください。

Oracle Clusterwareのプログラミング・インタフェース(C API)について

この章では、Oracle Clusterware(CLSCRS)のプログラミング・インタフェース(C API)の使用について説明します。

- 概要

- 使用上の注意

- 非推奨のCLSCRS API

概要

CLSCRSは、Oracle ClusterwareのCベースAPIのセットです。CLSCRS APIを使用すると、Oracle Clusterwareによって管理されるエンティティの操作を管理できます。これらのエンティティには、リソース、リソース・タイプおよびサーバー・プールが含まれます。APIを使用してOracle Clusterwareにユーザー・アプリケーションを登録することができるため、クラスタウェアでユーザー・アプリケーションを管理して高可用性を維持できます。アプリケーションが登録されると、そのアプリケーションを管理してステータスを問い合せることができます。アプリケーションが不要になった場合には、そのアプリケーションを停止して、Oracle Clusterwareから登録解除することができます。

Oracle Clusterwareサービスは、Oracle Clusterwareの一部として実行されるクラスタ・レディ・サービスによって提供されます。CLSCRS APIでは、すべての関数コールで明示的に名前が指定されているコンテキストが使用されます。APIでは、処理レベルまたはスレッド・レベルでの格納は行われません。診断ロギングのコールバックを使用できます。

注意:
Oracle Clusterwareの高可用性APIは、Oracle Databaseクライアント・インストール・メディアからインストールできます。

使用上の注意

この項には次のトピックが含まれます:

- コンテキストの初期化および永続性

- スレッドのサポート

- CLSCRS APIデータ構造

- メモリー管理

- エラーの処理およびトレース

- コールバック・メカニズム

- フィルタ

- スクリプト・エージェントの使用方法

- ヘルプ・インタフェース

コンテキストの初期化および永続性

CLSCRS APIを使用する場合、最初にclscrsコンテキストを初期化する必要があります。このコンテキストを作成および終了するためのコールは次のとおりです。

- clscrs_init_crs: clscrsコンテキストを初期化します。

- clscrs_term_crs: clscrsコンテキストを終了します。

コンテキストが不要になると、コール元によってそのコンテキストは終了されます。

スレッドのサポート

CLSCRS_FLAG_USETHREADSフラグを指定して初期化した場合、CLSCRS APIによってスレッドが内部的に生成される場合があります。APIの各関数は、コール元のスレッドのコンテキストで実行されます。APIコンテキスト・オブジェクトは、複数のスレッドによって同時に使用できない場合があります。ただし、クライアント側でのスレッド・アフィニティは必要ありません。一度に対応できるのはコンテキストごとに1つのスレッドであるというルールに従って、プロセスは複数のAPIコンテキストを作成し、様々なスレッドで使用する場合があります。

CLSCRS APIデータ構造

次のエンティティはAPIコールに渡され、APIコールからの戻り値が含まれます。

- clscrs_sp: 文字列ペア(sp)には、名前および値の文字列が含まれます。値はNULLの場合もあります。作成されたり破棄されること、およびその内容を調べることで値を置換することが可能です。文字列ペアは、1つの文字列ペア・リスト(splist)のみのメンバーの場合もあります。

- clscrs_splist: 文字列ペア・リスト(splist)は、様々なコンテキストで使用される0(ゼロ)個以上の文字列ペアのリストです。APIで文字列ペアを文字列ペア・リストに追加したり、リストから削除することまたはAPIで文字列ペアを繰り返し適用することができます。

- clscrs_res: リソース・インスタンス(res)はOracle Clusterwareエンティティを示し、このエンティティには、名前、およびOracle Clusterwareエンティティが使用されるコンテキストに適した追加データが含まれます。リソース・インスタンスには、Oracle Clusterwareエンティティの属性データが含まれる場合もあれば、操作に関するステータスおよび戻りメッセージが示される場合もあります。シングル・リソース・インスタンスは、1つのclscrs_reslistのみのメンバーの場合もあります。

- clscrs_reslist: リソース・リスト(reslist)は、clscrs_resの0(ゼロ)個以上のインスタンスが含まれるデータ構造です。APIで、リソースをリソース・リストに追加したり、リストから削除すること、またはリソースを繰り返し適用することができます。

メモリー管理

CLSCRS APIは、要素およびリストに対して機能します。要素はリストに追加されます。要素およびリストの両方に対するメモリーの割当ておよび解放は、明示的なAPIコールを介して行われます。割り当てられたメモリーの解放は、コール元によって行われます。ただし、要素がリストに追加されている場合は、そのリストのみを破棄する必要があり、リストを破棄することで、その要素も暗黙的に破棄されます。要素がリストに追加されていない場合は、要素を破棄する必要があります。再帰的リストの場合、親リストを破棄すると、それに含まれるリストもすべて破棄されます。clscrs_spおよびclscrs_res要素は、コール元によって破棄される必要があります。これらがclscrs_splistまたはclscrs_reslistに属する場合は、リストを破棄すると、clscrs_spおよびclscrs_resのエンティティがそれぞれ破棄されます。

たとえば、リソースが作成されてリソース・リストに追加された場合は、そのリソース・リストのみが破棄され、個々のリソースは破棄されません。また、リソース・リストを破棄すると、個々のリソースのメモリーが解放されます。

メモリーは、APIによって、次のコールを介して割り当てられます。

clscrs_sp_create()
clscrs_res_create()
clscrs_serverpool_create()
clscrs_type_create()
clscrs_splist_create()
clscrs_reslist_create()
clscrs_entity_id_create()

前述のリストの各コールには、対応するclscrs_*_destroy()コールがあります。

エラーの処理およびトレース

対話形式および非対話形式のCLSCRS APIは、それぞれ異なるエラー処理メカニズムを使用します。

非対話形式CLSCRS APIでは、エラー・コードは関数コールの戻り値として戻されます。次に例を示します。

clscrsret clscrs_sp_get_value(clscrs_sp *sp, oratext **value);

エラー・コードは、clscrsret値として戻されます。

対話形式CLSCRS APIでは、出力結果は次のように表示されます。

1. 関数コールの戻り値によって、リクエストの概要が出力されます。サーバーでリクエストが受信されたかどうかが示されます。また、正常に完了したか、完全に失敗したか、または一部で失敗したかどうかも示されます。戻り値が正常であるということは、リクエストの受信および処理が行われ、リクエストされたすべてのエンティティに対する結果が正常であったことを示します。

2. リクエストが行われたエンティティごとに、op_statusリストにプログラムの完了コードが格納されます。値がsuccessではない場合は、特定のオブジェクトに対するリクエストの処理で高度な問題が発生したことを示します。

3. 必要に応じて、APIでは、コールバック・メカニズムを使用して、ローカライズされた判読可能なエラー、警告、ステータス・メッセージを受信するように示される場合があります。コールバックが起動されるたびに、コールバックの起動に関するメッセージ、メッセージ・タイプ(重大度)およびオブジェクトIDが表示されます。

次に例を示します。

CLSCRS_STAT clscrs_register_resource2(clscrs_reslist *in_reslist, uword flags,
clscrs_msgf2 msgf, void *msgarg,
clscrs_reslist *op_status);

1. 関数によって、CLSCRS_STATという値のエラー・コードが戻されます。

2. crsdによって、clscrs_msgf2コールバックを介して、エラー・メッセージ、警告メッセージ、進捗メッセージがクライアントに戻されます。クライアントには、crsdによって戻されるこれらのメッセージを処理するコールバックが実装されている必要があります。

3. 以前のOracle Clusterwareリリースでは、APIに、op_statusリストの一部としてOracle Clusterwareエンティティの各操作の結果も含まれていました。次のAPIを使用してその情報にアクセスできます。

clscrsret clscrs_res_get_op_status(clscrs_res *res, CLSCRS_STAT *status,
oratext **msg);

status引数には、Oracle Clusterwareエンティティのcrsd操作に関するステータス・コードが含まれます。また、msg引数には、crsd操作の結果に関するメッセージが含まれます。msg引数の各Oracle Clusterwareエンティティに対するcrsd操作の結果は引き続きop_statusリストに含まれますが、msg引数の使用によるエラー・コードおよびメッセージの取得は非推奨となり、新しいエンティティのAPIではサポートされていません。既存の使用(特にリソースでの処理)でのみサポートされます。crsdによって戻されるメッセージを処理する場合は、コールバック関数を使用してください。

コールバック・メカニズム

対話形式CLSCRS APIでは、クライアントがcrsdによって送信されたエラー・メッセージ、警告メッセージおよび進捗メッセージを処理するために使用するコールバック・メカニズムが提供されます。

コールバック・メカニズムのシグネチャは次のとおりです。

typedef  void (*clscrs_msgf2)(void *usrp, const oratext *id, const oratext *msg,
clscrs_msgtype msgtype);

前述の構文の各要素は次のとおりです。

- usrp: コールのコンテキストが含まれるユーザー指定のポインタ

- id: メッセージに対応するエンティティの識別子

- msg: 出力テキスト

- msgtype: メッセージのタイプ(エラー、警告または進捗)

例F-1に、コールバック・メカニズムの例を示します。

例F-1 コールバック・メカニズム

void myCallback(void *arg, const oratext *pId, const oratext *pMsg,
clscrs_msgtype msgType)
{
if (pMsg != NULL)
{
cout << pMsg << endl;
}
}

例F-2に、対話形式APIでコールバック・メカニズムを使用する方法を示します。

例F-2 対話形式APIでのコールバック・メカニズムの使用

clscrs_start_resource2(pResIdList, NULL,
env, myCallback, NULL,
0, pOpStatus);

コンテキストの作成時にCLSCRS_FLAG_TRACEフラグを渡すことによって、APIのデバッグ・トレース・メッセージを出力することもできます。コンテキスト作成のシグネチャは次のとおりです。

CLSCRS_STAT clscrs_init_crs(clscrs_ctx **ctx, clscrs_msgf2 errf, void *errCtx,
ub4 flags);

トレース・メッセージを機能させるには、clscrs_init_crs APIで、CLSCRS_FLAG_TRACEフラグおよびclscrs_msgf2コールバック・メカニズムの両方を指定する必要があります。

clscrs_msgf2コールバック・メカニズムのシグネチャは次のとおりです。

typedef  void (*clscrs_msgf)(void *usrp, const oratext *msg, sword msglen);

フィルタ

フィルタを使用して、CLSCRS APIが動作するOracle Clusterwareエンティティを絞り込むことができます。簡易フィルタは、演算子を使用した属性/値ペアです。演算子は、例に示すように空白で囲む必要があります。簡易フィルタは、Boolean演算子を使用した式フィルタと呼ばれる式に組み込むことができます。

サポートされるフィルタの演算子は次のとおりです。

=
>
<
!=
co: 次を含む
st: 次で始まる
en: 次で終わる

サポートされるブール演算子はANDおよびORです。

次にフィルタの例を示します。

- TYPE = type1

- ((TYPE = type1) AND (CHECK_INTERVAL > 50))

- (TYPE = type1) AND ((CHECK_INTERVAL > 30) OR (AUTO_START co never))

- NAME en network.res

- TYPE st ora.db

関連項目:
APIコールの前述のコンパレータおよび演算子は、$ORA_CRS_HOME/crs/demo/clscrsx.hファイルにあるclscrs_comparator enumおよびclscrs_operator enumを使用して、正しいタイプを取得してください。

フィルタは2種類あり、CLSCRSにはこれらのフィルタを作成するAPIのセットがあります。

- 比較フィルタ: 2つの値を比較する簡易フィルタ。次に例を示します。

TYPE = ora.db.type

比較フィルタを作成するには、clscrs_compfilter_create APIを使用します。たとえば、(TYPE = ora.db.type)比較フィルタは次のように作成します。

clscrs_compfilter_create(ctx, clscrs_TYPE,
clscrs_comparator_eq, (const oratext *)"ora.db.type",
&myCompFilter);

- 式フィルタ: 比較フィルタまたは式フィルタ、あるいはその両方の組合せで作成されるフィルタ。次に例を示します。

((TYPE = ora.db.type) AND (CHECK_INTERVAL > 50))

比較フィルタを作成するには、clscrs_expfilter_create APIを使用します。たとえば、式フィルタは次のように作成します。

clscrs_exprfilter_create(myCompFilter1, clscrs_operator_or,
myCompFilter2, &myExprFilter);

関連項目:
clscrs_compfilter_createおよびclscrs_expfilter_create APIの使用方法については、$ORA_CRS_HOME/crs/demo/clscrsx.hファイルを参照してください。

注意:
clscrs_compfilter_createおよびclscrs_expfilter_create APIによって割り当てられるメモリーは、どちらもclscrs_filter_destroy()がコールされると解放されます。

エンティティ・リストのかわりに、次の対話形式CLSCRS APIでフィルタを使用できます。

clscrs_start_resource2
clscrs_stat2
clscrs_stop_resource2
clscrs_check_resource2
clscrs_relocate_resource2

例F-3に、対話形式CLSCRS APIでのフィルタの使用を示します。

例F-3 対話形式CLSCRS APIのフィルタ

clscrs_start_resource2(myCompFilter, NULL,
env, msgf2, NULL,
0, pOpStatus);

スクリプト・エージェントの使用方法

スクリプト・エージェントのエントリ・ポイントでCLSCRS APIを使用する場合は、次の点を考慮してください。

1. start、stop、cleanなどの一部のアクションは、リソース・インスタンスでロックされた状態で実行されます。そのため、リソースに対する操作が直接行われるリクエストや、関係性が拡張されることで行われるリクエストをサーバーに発行すると、デッドロックの原因になります。

2. 通常、読取り専用の発行(clscrs_stat2)は初回のチェックでないかぎり安全で、この場合、デッドロックの原因にもなるため、スクリプト・エージェントではサーバー上でのコールバックは実行しないでください。clsagfwAPIを使用して、チェック・エントリ・ポイントを問い合せます。

関連項目:
スクリプト・エージェントの例は、付録B「Oracle Clusterwareのリソース・リファレンス」を参照してください。

ヘルプ・インタフェース

crsapp.cと呼ばれるデモと併用することで、$ORA_CRS_HOME/crs/demo/clscrsx.hファイルで、それぞれの使用方法を含め、CLSCRS APIのリスト全体を検索できます。

非推奨のCLSCRS API

表F-1に非推奨のCLSCRS APIおよびそれに対応するOracle Clusterware 11gリリース2(11.2)の新しいAPIを示します。

表F-1 非推奨のCLSCRS API

非推奨コマンド

代替

clscrs_register_resource

clscrs_register_resource2

clscrs_start_resource

clscrs_start_resource2

clscrs_stat

clscrs_stat2

clscrs_stop_resource

clscrs_stop_resource2

clscrs_check_resource

clscrs_check_resource2

clscrs_relocate_resource

clscrs_relocate_resource2

clscrs_unregister_resource

clscrs_unregister_resource2

clscrs_msgf

clscrs_msgf2

clscrs_fail_resource

代替はありません。

対話形式CLSCRS API

表F-2に示すAPIは、コマンドを実行するために、クラスタ・レディ・サービス・デーモン(crsd)のコールを作成します。これらのAPIが機能するには、crsdが起動され、実行されている必要があります。

表F-2 Oracle Clusterwareの対話形式CLSCRS APIのサマリー

C API

説明

clscrs_register_type

入力リソース・リストにリソース・タイプを登録します。

clscrs_register_serverpool

サーバーの入力リストに使用するサーバー・プールを登録します。

clscrs_register_resource2

入力リソース・リストにリソースを登録します。

clscrs_start_resource2

名前が指定されたリソース・セットを起動するようにOracle Clusterwareに通知します。

clscrs_stat2

rqlistに指定されたエンティティに関する情報を取得します。

clscrs_stop_resource2

名前が指定されたリソース・セットを停止するようにOracle Clusterwareに通知します。

clscrs_check_resource2

指定されたリソースのチェック・エントリ・ポイントを実行するようにOracle Clusterwareに通知します。

clscrs_relocate_resource2

リソース識別子のリストを再配置します。

clscrs_unregister_resource2

リソース名の入力リストのリソースを登録解除します。

clscrs_unregister_type

入力リストのリソース・タイプを登録解除します。

clscrs_unregister_serverpool

指定されたサーバー・プールを登録解除します。

clscrs_relocate_server

サーバーのリストを再配置します。

非対話形式CLSCRS API

コンテキストの初期化、対話形式APIのリクエスト・ペイロードの準備、対話形式APIの処理後の出力などの機能には、非対話形式CLSCRS APIを使用できます。非対話形式CLSCRS APIはcrsdをコールしません。

コールバック・エラーのレポート・メカニズムは、非対話形式CLSCRS APIでは使用できません。clscrs_stat2を除くすべての対話形式CLSCRS APIでは、このコールバック・メカニズムが使用されます。これらのAPIのクライアントは、コールバック・メカニズムを使用して、エラー、警告および進捗メッセージをcrsdから受信します。

フィルタを使用して、CRSエンティティのリストを減らすこともできます。また、対話形式APIのフィルタを使用して、CRSエンティティのリストを減らすこともできます。

スレッド・セーフティ

APIデータ構造の管理のために提供されるルーチンは、複数のスレッドの同じAPIコンテキストで同時に使用できませんが、クライアント側でのスレッド・アフィニティは必要ありません。各インスタンスで個別のAPIが使用されている場合は、このプロセスにより、複数のスレッドでこれらのルーチンが起動する可能性があります。

関連項目:
詳細は、「エラーの処理およびトレース」、「コールバック・メカニズム」および「フィルタ」を参照してください。

表F-3に、非対話形式CLSCRS APIを示します。

表F-3 非対話形式CLSCRS API

C API

説明

clscrs_entity_id_destroy

clscrs_entity_id_create()で作成されたエンティティ識別子に関連付けられたメモリーを解放します。

clscrs_exprfilter_create

比較フィルタまたは式フィルタ(あるいはその両方)で式フィルタを構成します。

clscrs_filter_destroy

フィルタのメモリーを解放します。

clscrs_get_entity_type

指定されたエンティティ識別子に対応するエンティティ・タイプを取得します。

clscrs_get_fixed_attrlist

属性グループ識別子に対応する属性のリストを取得します。

clscrs_get_resource_instance_details

使用されているリソース・インスタンス識別子から、リソース名、カーディナリティ、程度などのリソース・インスタンスの詳細を取得します。

clscrs_getnodename

ノード名を取得します。

clscrs_init_crs

Oracle Clusterwareと通信するためにコンテキストを初期化します。

clscrs_is_crs_admin

ユーザーがOracle Clusterware管理者かどうかをチェックします。

clscrs_res_attr_count

リソースの属性数を取得します。

clscrs_res_create

新しいリソースを作成します。

clscrs_res_destroy

リソースのメモリーを解放します。

clscrs_res_get_attr

リソースのリソース属性を取得します。

clscrs_res_get_attr_list

リソースの属性リストを取得します。

clscrs_res_get_name

リソース名を取得します。

clscrs_res_get_op_status

エンティティの操作のステータスを取得します。

clscrs_res_get_registered

リソースの登録ステータスを取得します。

clscrs_res_get_reslist

リソースのリソース・リストを取得します。

clscrs_res_set_attr_list

リソースの属性リストを設定します。

clscrs_res_set_reslist

リソースのリソース・リストを設定します。

clscrs_reslist_append

リソース・リストにリソースを追加します。

clscrs_reslist_count

リソース・リストのリソースの数をカウントします。

clscrs_reslist_create

新しいリソース・リストを作成します。

clscrs_reslist_delete_res

リソース・リストのリソースを削除します。

clscrs_reslist_destroy

リソース・リストのメモリーを解放します。

clscrs_reslist_find

リソース・リストのリソースを検索します。

clscrs_reslist_first

リソース・リストの最初のリソースを取得します。

clscrs_reslist_next

リソース・リストから現行の次のリソースを取得します。

clscrs_sp_get

文字列ペアの名前要素および値要素を取得します。

clscrs_sp_set

文字列ペアの値の部分を変更します。

clscrs_splist_append

文字列ペア・リスト(splist)に新しい文字列ペア(sp)を追加します。

clscrs_splist_create

新しい文字列ペア・リストを作成します。

clscrs_splist_delete_sp

文字列ペア・リスト(splist)から文字列ペア(sp)を削除します。

clscrs_splist_first

文字列ペア・リスト(splist)の最初の文字列ペア(sp)を取得します。

clscrs_splist_replace

文字列ペア・リスト(splist)の文字列ペア(sp)の値を置換します。

clscrs_term_crs

CRSと通信するためにコンテキストを解放します。

clscrs_type_create

新しいリソース・タイプを作成します。

clscrs_type_get_attr

リソース・タイプの属性の値またはプロパティを取得します。

clscrs_type_set_attr

リソース・タイプに属性を追加します。

clscrs_compfilter_create

2つの値を比較する簡易フィルタを構成します。

clscrs_entity_id_create

リソース、リソース・タイプ、サーバー・グループなどのCRSエンティティを識別するエンティティ識別子を作成します。

clscrs_register_serverpool

サーバーの入力リストに使用するサーバー・プールを登録します。

clscrs_register_type

入力リソース・リストにリソース・タイプを登録します。

clscrs_relocate_server

サーバーのリストを再配置します。

clscrs_res_get_node_list

リソースを現在ホスティングしているノード・リストを取得します。

clscrs_res_set_attr

リソースのリソース属性を設定します。

clscrs_sp_get_value

文字列ペアの値要素を取得します。

clscrs_splist_count

文字列ペア・リスト(splist)の文字列ペア(sp)の数をカウントします。

clscrs_splist_create_and_set

新しい文字列ペア・リスト(splist)を作成し、リストの最初の文字列ペアの名前および値を設定します。

clscrs_splist_destroy

文字列ペア・リスト(splist)のメモリーを解放します。

clscrs_splist_find

文字列ペア・リスト(splist)の文字列ペア(sp)の値を検索します。

clscrs_splist_next

文字列ペア・リスト(splist)の現行の次の文字列ペア(sp)を取得します。現行の次のSPは、実質的にSPLISTの次のSPです。リスト・イテレータはAPI内に格納され、公開されません。

clscrs_stat2

rqlistに指定されたエンティティに関する情報を取得します。

G Oracle Cluster Registryユーティリティ・リファレンス

この付録はOracle Cluster Registry(OCR)構成ユーティリティOCRCONFIGの構文およびOCRのトラブルシューティングについて説明します。OCRCHECKとOCRDUMPに関する説明および使用情報も含まれています。

内容は次のとおりです。

- OCRCONFIGについて

- 概要

- 使用上の注意

- OCRCONFIGコマンド・リファレンス

- Oracle Cluster Registryのトラブルシューティングおよび診断出力

OCRCONFIGについて

この項では、OCRCONFIGユーティリティの使用に関連する項目について説明します。

- 概要

- 使用上の注意

概要

ocrconfigコマンドを使用して、OCRを管理します。このユーティリティを使用すると、OCRのインポート、エクスポート、追加、削除、リストア、上書き、バックアップ、修復、置換、移動、アップグレードまたはダウングレードを行うことができます。

使用上の注意

使用方法

- OCRCONFIG実行可能ファイルは、Grid_home/binディレクトリに格納されています。

- ocrconfig コマンドの構文は次のとおりです。

ocrconfig -option

ユーティリティ・ヘルプの使用

OCRCONFIGユーティリティのヘルプ出力を表示するには、次のコマンドを使用します。

ocrconfig -help

権限およびセキュリティ

OCRCONFIGユーティリティを使用するには、管理権限を持つユーザーとしてオペレーティング・システムにログインする必要があります。

ログ・ファイル

OCRCONFIGユーティリティを実行すると、Grid_home/log/host_name/clientにログ・ファイルが作成されます。

ロギングの量を変更するには、Grid_home/srvm/admin/ocrlog.iniファイルのパスを編集します。

OCRCONFIGコマンド・リファレンス

この項では、次のOCRCONFIGコマンドについて説明します。

- ocrconfig -add

- ocrconfig -backuploc

- ocrconfig -delete

- ocrconfig -downgrade

- ocrconfig -export

- ocrconfig -import

- ocrconfig -manualbackup

- ocrconfig -overwrite

- ocrconfig -repair

- ocrconfig -replace

- ocrconfig -restore

- ocrconfig -showbackup

- ocrconfig -upgrade

ocrconfig -add

ocrconfig -addコマンドを使用して、ストレージ・デバイスまたはOracle Automatic Storage Management (Oracle ASM)ディスク・グループにOCRの場所を追加します。追加するOCRの場所が存在し、十分な権限を所有している必要があり、また、Oracle ASMディスク・グループの場合、この場所はマウントしてから追加する必要があります。

構文

ocrconfig -add location_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- location_name変数は、デバイス名、ファイル名、またはOracle ASMディスク・グループの名前です。次に例を示します。

- /dev/raw/raw1: デバイスが存在することを確認します

- /oradbocfs/crs/data.ocr: 空(0バイト)のOCRの場所を作成する必要があります

- d:\oracle\mirror.ocr: 空(0バイト)のOCRの場所を作成する必要があります

- +newdg: ディスク・グループが存在し、マウントされていることを確認します。
Oracle ASMディスク・グループを指定する場合は、ディスク・グループの名前の前にプラス記号(+)を付ける必要があります。

関連項目:

- OCRの場所の作成、および適切な権限の設定の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

例

dataというOracle ASMのデフォルトの場所にOCRの場所を追加するには、次のコマンドを使用します。

# ocrconfig -add +data

ocrconfig -backuploc

ocrconfig -backuplocコマンドを使用して、OCRバックアップ・ディレクトリの場所を指定します。

構文

ocrconfig [-local] -backuploc file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- -localオプションを使用して、OLRバックアップ・ディレクトリの場所を指定します。

- file_name変数は、すべてのノードからアクセス可能なディレクトリのフルパス名です。次に例を示します。

- Grid_home/cdata/cluster3/: 場所が存在することを確認します

- d:\cdata\cluster3: 場所が存在することを確認します

- LinuxまたはUNIXシステムでOCRバックアップが生成されるデフォルトの場所は、Grid_home/cdata/cluster_nameで、cluster_nameは、使用しているクラスタ名です。WindowsでOCRバックアップが生成されるデフォルトの場所は、同じパス構造を使用します。

- LinuxまたはUNIXシステムでOLRバックアップが生成されるデフォルトの場所はGrid_home/cdata/host_nameで、host_nameは、バックアップ対象のOLRが存在するノードの名前です。WindowsでOLRバックアップが生成されるデフォルトの場所は、同じパス構造を使用します。

例

ディレクトリのOCRバックアップの場所を指定するには、次のコマンドを使用します。

# ocrconfig -backuploc $Grid_home/cdata/cluster3

ocrconfig -delete

ocrconfig -deleteコマンドを使用して、OCRデバイスまたはファイルを削除します。

構文

ocrconfig -delete file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- file_name変数は、デバイス名、ファイル名、またはOracle ASMディスク・グループの名前です。次に例を示します。

- /dev/raw/raw1

- /oradbocfs/crs/data.ocr

- d:\oracle\mirror.ocr

- +olddg

Oracle ASMディスク・グループを指定する場合は、ディスク・グループの名前の前にプラス記号(+)を付ける必要があります。

例

OCRの場所を削除するには、次のコマンドを使用します。

# ocrconfig -delete +olddg

ocrconfig -downgrade

ocrconfig -downgradeコマンドを使用して、指定した以前のバージョンにOCRをダウングレードします。

構文

ocrconfig -downgrade [-version version_string]

使用上の注意

- このコマンドは、rootで実行する必要があります。

例

OCRを以前のバージョンにダウングレードするには、次のコマンドを使用します。

# ocrconfig -downgrade -version

ocrconfig -export

ocrconfig -exportコマンドを使用して、OCRの内容をターゲット・ファイルにエクスポートします。

構文

ocrconfig [-local] -export file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- -localオプションを使用して、OLRの内容をエクスポートします。

- file_name変数は、すべてのノードからアクセス可能なフルパス名です。次に例を示します。

- /oradbocfs/crs/data.ocr

- d:\oracle\

例

OCRの内容をファイルにエクスポートするには、次のコマンドを使用します。

# ocrconfig -export d:\tmp\a

ocrconfig -import

ocrconfig -importコマンドを使用して、ターゲット・ファイルの内容(OCRの内容をエクスポートしたもの)を、OCRにインポートします。

構文

ocrconfig [-local] -import file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- -localオプションを使用して、OLRの内容をファイルからインポートします。

- file_name変数は、すべてのノードからアクセス可能なフルパス名です。次に例を示します。

- /oradbocfs/crs/data.ocr

- d:\oracle\

- このコマンドを実行する前にOracle Clusterwareを停止する必要があります。

例

ファイルの内容をOCRにインポートするには、次のコマンドを使用します。

# ocrconfig -import d:\tmp\a

ocrconfig -manualbackup

ocrconfig -manualbackup コマンドを使用して、-backuplocオプションで指定した場所に必要に応じてOCRをバックアップします。

構文

ocrconfig [-local] -manualbackup

使用上の注意

- このコマンドは、rootで実行する必要があります。

- -localオプションを使用して、OLRの手動バックアップを実行します。

例

OCRをバックアップするには、次のコマンドを使用します。

# ocrconfig -manualbackup

ocrconfig -overwrite

ocrconfig -overwriteコマンドを使用して、OCRメタデータのOCR構成を、このコマンドが実行されたノードで検出された現行のOCR構成情報で上書きします。

構文

ocrconfig -overwrite

使用上の注意

- このコマンドは、rootで実行する必要があります。

例

OCR構成を上書きするには、次のコマンドを使用します。

# ocrconfig -overwrite

ocrconfig -repair

ocrconfig -repairコマンドを使用して、このコマンドを実行するノードのOCR構成を修復します。このコマンドを使用して、クラスタのOCR構成の変更中に停止していた可能性のあるノードのOCRの場所を追加、削除または置換します。追加するOCRの場所が存在し、十分な権限を所有している必要があり、また、Oracle ASMディスク・グループの場合、この場所はマウントしてから追加する必要があります。

構文

ocrconfig -repair -add file_name | -delete file_name | -replace
current_file_name -replacement new_file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- 修復を正常に完了させるには、Oracle高可用性サービスを起動する必要があります。

- ocrconfig -repairを実行する前にクラスタ・レディ・サービス・デーモンを停止する必要があります。

- file_name変数は、有効なOCRおよび、デバイス名、存在するファイルの絶対パス名、またはOracle ASMディスク・グループの名前のいずれかです。次に例を示します。

- /dev/raw/raw1

- /oradbocfs/crs/data.ocr

- d:\oracle\mirror.ocr

- +newdg
Oracle ASMディスク・グループを指定する場合は、ディスク・グループの名前の前にプラス記号(+)を付ける必要があります。

関連項目:

- OCRの作成および適切な権限の設定の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- ocrconfig -repairと同時に使用できるオプションは1つのみです。

- このコマンドの実行によって変更されるのはローカル構成のみであり、影響を受けるのは現行のノードのみです。

例

OCR構成を修復するには、次のコマンドを使用します。

# ocrconfig -repair -delete +olddg

ocrconfig -replace

ocrconfig -replaceコマンドを使用して、このコマンドを実行するノードのOCRデバイスまたはファイルを置換します。追加するOCRの場所が存在し、十分な権限を所有している必要があり、また、Oracle ASMディスク・グループの場合、この場所はマウントしてから追加する必要があります。

構文

ocrconfig -replace current_location_name -replacement new_location_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- new_location_name変数は、デバイス名、ファイル名、またはOracle ASMディスク・グループの名前です。次に例を示します。

- /dev/raw/raw1: デバイスが存在することを確認します

- /oradbocfs/crs/data.ocr: 空(0バイト)のOCRの場所を作成する必要があります

- d:\oracle\mirror.ocr: 空(0バイト)のOCRの場所を作成する必要があります

- +newdg: ディスク・グループが存在し、マウントされていることを確認します。
Oracle ASMディスク・グループを指定する場合は、ディスク・グループの名前の前にプラス記号(+)を付ける必要があります。

関連項目:

- OCRの作成および適切な権限の設定の詳細は、『Oracle Grid Infrastructureインストレーション・ガイド』を参照してください。

- Oracle ASMディスク・グループ管理の詳細は、『Oracle Automatic Storage Management管理者ガイド』を参照してください。

- このコマンドを使用するには2つ以上のOCRデバイスが必要です。OCRデバイスが2つ未満の場合、ocrconfig -addコマンドを実行して新しいOCRデバイスを追加してからocrconfig -deleteコマンドを実行し、置換するOCRデバイスを削除します。

例

OCRデバイスまたはファイルを置換するには、次のコマンドを使用します。

# ocrconfig -replace /dev/raw/raw1 -replacement +newdg

ocrconfig -restore

ocrconfig -restoreコマンドを使用して、自動的に作成されたOCRバックアップ・ファイルからOCRをリストアします。

構文

ocrconfig [-local] -restore file_name

使用上の注意

- このコマンドは、rootで実行する必要があります。

- このコマンドを実行する前に、元のOCRファイルまたはOLRファイルが存在することを確認します。元のファイルが存在しない場合、空のファイルを作成する必要があります。

注意:
ocrconfig -exportによって生成されたファイルを使用してOCRをリストアすることはできません。ファイルは手動バックアップまたは自動バックアップである必要があります。

- -localオプションを使用して、OLRのバックアップをリストアします。

- 次にファイル名の例を示します。

- /oradbocfs/crs/BACKUP00.ocr

- d:\oracle\BACKUP01.ocr

- 指定したストレージ・デバイスが存在し、これらのデバイスが有効であることを確認します。

例

ファイルからOCRをリストアするには、次のコマンドを使用します。

# ocrconfig -restore /oradbocfs/crs/BACKUP00.ocr

ocrconfig -showbackup

ocrconfig -showbackupコマンドを使用して、バックアップ場所、タイムスタンプおよびバックアップ・ファイルの元のノード名を表示します。このコマンドにautoまたはmanualを指定しないと、自動および手動の両方のバックアップに関する情報がデフォルトで表示されます。

構文

ocrconfig [-local] -showbackup [auto | manual]

使用上の注意

- -localオプションを使用して、手動のOLRバックアップ情報を表示します。-localフラグは、manualオプションとあわせて指定した場合にのみ機能します。

- 必要に応じてautoまたはmanualを指定して、自動バックアップまたは手動バックアップのいずれかの情報のみを表示することもできます。

- auto: 過去4時間、8時間、12時間、前日および先週に作成された自動バックアップの情報を表示します。

- manual: ocrconfig -manualbackupコマンドを使用して呼び出した手動バックアップの情報を表示します。

例

OLRの手動バックアップ情報を表示するには、次のコマンドを使用します。

$ ocrconfig -local -showbackup manual

ocrconfig -upgrade

rootスクリプトのみがocrconfig -upgradeコマンドを使用して、OCRを以前のバージョンからアップグレードします。

Oracle Cluster Registryのトラブルシューティングおよび診断出力

この項では、OCRに関する問題のトラブルシューティングを行う様々な方法およびOCRの管理に使用されるユーティリティから診断情報を取得する様々な方法について説明します。これらのユーティリティは、OLRのトラブルシューティングにも使用できます。

この項の内容は次のとおりです。

- Oracle Cluster Registryのトラブルシューティング

- OCRCHECKユーティリティの使用

- OCRDUMPユーティリティを使用したOracle Cluster Registryの内容の表示

Oracle Cluster Registryのトラブルシューティング

表G-1に、OCRの一般的な問題およびそれに対応する推奨の解決策を示します。

表G-1 Oracle Cluster Registryの一般的な問題および解決策

問題

解決策

現在使用されていないOCRのミラー化を有効にする必要があります。

-replaceオプションを指定してocrconfigコマンドを実行します。

OCRに障害が発生したため、置換する必要があります。Oracle Enterprise ManagerまたはOCRのログ・ファイルにエラー・メッセージが書き込まれます。

-replaceオプションを指定してocrconfigコマンドを実行します。

OCRの構成が不適切です。

説明されているように、-repairオプションを指定してocrconfigコマンドを実行します。

OCRの処理によってパフォーマンスに重大な影響が及ぼされたか、または他の理由のためにOCRを削除します。

説明されているように、-replaceオプションを指定してocrconfigコマンドを実行します。

OCRに障害が発生したため、修正する前に、1つのOCRのみを使用してノードを再起動する必要があります。

-repairオプションを指定してocrconfigを実行し、問題のあるOCRの場所を削除します。定義済のすべてのOCRが見つからない場合、Oracle Clusterwareは起動されません。

OCRCHECKユーティリティの使用

OCRCHECKユーティリティを実行すると、構成したOCRのブロック形式のバージョン、使用可能な領域の合計、使用済の領域、OCRのIDおよび場所が表示されます。OCRCHECKでは、構成したすべてのOCRにあるすべてのブロックに対して、ブロック単位のchecksum操作が実行されます。各ファイルごとのステータスと、OCR全体の整合性チェックの結果も返されます。

注意:
クラスタのすべてのノードでOracleクラスタ・レディ・サービス・スタックがONLINEの場合、OCRCHECKのみが使用できます。

関連項目:
Oracleクラスタ・レディ・サービス・スタックの詳細は、「Oracle Clusterwareのスタック」を参照してください。

ocrcheck -helpコマンドを実行して、このユーティリティの使用方法を表示します。

OCRCHECKユーティリティの出力例を次に示します。

# ocrcheck

Status of Oracle Cluster Registry is as follows :
Version                  :          3
Total space (kbytes)     :     262120
Used space (kbytes)      :        752
Available space (kbytes) :     261368
ID                       : 2098980155
Device/File Name         : +ocrdg1
Device/File integrity check succeeded
Device/File Name         : +ocrdg2
Device/File integrity check succeeded
Device/File not configured
Device/File not configured
Device/File not configured
Cluster registry integrity check succeeded
Logical corruption check succeeded

注意:
論理破損チェックは、rootとしてocrcheckコマンドが実行される場合のみ実行されます。

OCRCHECKユーティリティの出力例を2つ次に示します。それぞれの例で、Oracle ASMディスク・グループに配置された構成済OCR、およびRAWデバイスに配置された構成済OCRのみを示しています。

例G-1 Oracle ASMディスク・グループに配置されたOCR

$ ocrcheck -config

Oracle Cluster Registry configuration is :
Device/File Name         : +ocrvd11
Device/File Name         :  +ocrvd2
.
.
.
Status of Oracle Cluster Registry is as follows :
Version                  :          3
Total space (kbytes)     :     262120
Used space (kbytes)      :       2384
Available space (kbytes) :     259736
ID                       : 1517109829
Device/File Name         : +ocrvd11
Device/File integrity check succeeded
Device/File Name         : +ocrvd2
Device/File integrity check succeeded
Device/File not configured
Device/File not configured
Device/File not configured
Cluster registry integrity check succeeded
Logical corruption check succeeded

例G-2 RAWデバイスに配置されたOCR

$ ocrcheck -config

Oracle Cluster Registry configuration is :
Device/File Name         : /dev/raw/raw15
Device/File Name         : /dev/raw/raw17
Device/File Name         : /dev/raw/raw16
.
.
.
Status of Oracle Cluster Registry is as follows :
Version                  :          3
Total space (kbytes)     :     262120
Used space (kbytes)      :       2884
Available space (kbytes) :     259236
ID                       :  157485888
Device/File Name         : /dev/raw/raw15
Device/File integrity check succeeded
Device/File Name         : /dev/raw/raw17
Device/File integrity check succeeded
Device/File Name         : /dev/raw/raw16
Device/File integrity check succeeded
Device/File not configured
Device/File not configured
Cluster registry integrity check succeeded
Logical corruption check succeeded

ocrcheck -local -configコマンドを実行して、OLR情報を取得します。

注意:
ローカル・ノードでOracleクラスタ・レディ・サービス・スタックおよびOracle高可用性サービス・スタックがOFFLINEの場合のみ、ocrcheck -localコマンドを使用できます。

関連項目:
Oracleクラスタ・レディ・サービス・スタックおよびOracle高可用性サービス・スタックの詳細は、「Oracle Clusterwareのスタック」を参照してください。

$ ocrcheck -local -config

Oracle Local Registry configuration is :
Device/File Name         : Grid_home/oracle/has_work/data.olr.stact23

OCRCHECKを実行すると、Grid_home/log/host_name/clientディレクトリにログ・ファイルが作成されます。ログ・レベルを変更するには、Grid_home/srvm/admin/ocrlog.iniファイルを編集します。

OCRDUMPユーティリティを使用したOracle Cluster Registryの内容の表示

この項では、OCRDUMPユーティリティを使用してトラブルシューティングのためにOCRおよびOracle Local Registry(OLR)の内容を表示する方法について説明します。OCRDUMPユーティリティを使用すると、OCRおよびOLRの内容を読みやすい形式でファイルまたはstdoutに書き込むことによって表示できます。

OCRDUMPにはいくつかのオプションを使用できます。たとえば、出力をキーおよびその子に制限できます。ブラウザを使用して表示可能なXMLファイルに内容を書き込むこともできます。OCRDUMPは、ASCII文字列およびデータ型形式の値としてOCRのキーを書き込みます。OCRDUMPは、ベスト・エフォート原則に基づいてヘッダー情報を取得します。

また、OCRDUMPを実行すると、Grid_home/log/host_name/clientにログ・ファイルが作成されます。ログ・レベルを変更するには、Grid_home/srvm/admin/ocrlog.iniファイルを編集します。

ロギング・コンポーネントを変更するには、comploglvl=エントリを含むエントリを編集します。たとえば、OCRAPIコンポーネントのログ・レベルを3に変更し、OCRRAWコンポーネントのログ・レベルを5に変更するには、ocrlog.iniファイルに次のエントリを作成します。

comploglvl="OCRAPI:3;OCRRAW:5"

注意:
OCRDUMPユーティリティを使用する前に、Grid_homeディレクトリにファイルを作成する権限を持っていることを確認してください。

この項には次のトピックが含まれます:

- OCRDUMPユーティリティの構文およびオプション

- OCRDUMPユーティリティの例

- OCRDUMPユーティリティの出力例

OCRDUMPユーティリティの構文およびオプション

この項では、OCRDUMPユーティリティのコマンド構文および使用方法について説明します。次の構文を使用してocrdumpコマンドを実行します(この場合、file_nameにはOracle Cluster Registryの出力を書き込むターゲット・ファイルの名前、key_nameにはOracle Cluster Registryのサブツリーの内容を書き込むキーの名前を指定します)。

$ ocrdump [file_name | -stdout] [-local] [-backupfile backup_file_name
[-keyname key_name] [-xml] [-noheader]
]

表G-2に、OCRDUMPユーティリティのオプションおよびオプションの説明を示します。

表G-2 OCRDUMPのオプションおよびオプションの説明

オプション

説明

file_name

OCRDUMPによって出力を書き込むファイルの名前です。

デフォルトでは、OCRDUMPによって、事前定義された出力ファイルOCRDUMPFILEに出力が書き込まれます。file_nameオプションによって、OCRDUMP出力は指定したファイルにリダイレクトされます。

-stdout

このオプションを使用して、プログラムを起動したテキスト端末にOCRDUMP出力をリダイレクトできます。

出力をリダイレクトしない場合、OCRDUMPによって、事前定義された出力ファイルOCRDUMPFILEに出力が書き込まれます。

-local

OLRの内容をダンプするには、このオプションを使用します。

-backupfile

OCRバックアップ・ファイルの内容を表示するには、このオプションを使用します。-localオプションをこのオプションとともに使用すると、OLRバックアップ・ファイルの内容が表示されます。

backup_file_name

表示する内容を含むバックアップ・ファイルの名前です。ocrconfig -showbackupコマンドを使用して、バックアップを問い合せることができます。

-keyname key_name

サブツリーがダンプされるOracle Cluster Registryキーの名前です。

-xml

出力をXML形式で書き込むにはこのオプションを使用します。

-noheader

コマンドを実行した時間およびOracle Cluster Registry構成が作成された時間を出力しません。

OCRDUMPユーティリティの例

次に示すocrdumpユーティリティの例では、様々なタイプのOCR情報を抽出し、様々なターゲットに書き込みます。

ocrdump

OCRの内容を現在のディレクトリのOCRDUMPFILEというファイルに書き込みます。

ocrdump MYFILE

OCRの内容を現在のディレクトリのMYFILEというファイルに書き込みます。

ocrdump -stdout -keyname SYSTEM

OCRの内容をSYSTEMキーのサブツリーから端末ウィンドウに表示します。

ocrdump -stdout -xml

OCRの内容をXML形式で端末ウィンドウに表示します。

ocrdump -stdout -backupfile Grid_home/cdata/cluster_name/file_name

Grid_home/cdata/cluster_name/file_nameディレクトリのコンテンツを表示します。すべてのキーを表示できるようにするには、このコマンドをrootで実行する必要があります。OCRバックアップ・ファイルであることを認識できるように、ファイルにはBACKUPOO.ocrなどの適切な名前を付けてください。

OCRDUMPユーティリティの出力例

次のOCRDUMPの例は、ocrdumpコマンドの2つの実行例について、KEYNAME、VALUE TYPE、VALUE、権限のセット(user、group、world)およびアクセス権を示します。テキスト値がAMERICAN_AMERICA.WE8ASCII37であるSYSTEM.languageキーの出力を次に示します。

[SYSTEM.language]
ORATEXT : AMERICAN_AMERICA.WE8ASCII37
SECURITY : {USER_PERMISSION : PROCR_ALL_ACCESS, GROUP_PERMISSION : PROCR_READ,
OTHER_PERMISSION : PROCR_READ, USER_NAME : user, GROUP_NAME : group}

3という整数値を持つSYSTEM.versionキーの出力を次に示します。

[SYSTEM.version]
UB4 (10) : 3
SECURITY : {USER_PERMISSION : PROCR_ALL_ACCESS, GROUP_PERMISSION : PROCR_READ,
OTHER_PERMISSION : PROCR_READ, USER_NAME : user, GROUP_NAME : group}

H Oracle Clusterwareのトラブルシューティング

この付録では、Oracle Clusterware環境の監視について説明し、動的デバッグを有効にして、Oracle Clusterwareの処理のトラブルシューティングを行う方法、また特定のコンポーネントおよび特定のOracle Clusterwareリソースのデバッグおよびトレースを有効にして、トラブルシューティングの対象を絞り込む方法について示します。

内容は次のとおりです。

- Oracle Clusterwareの監視

- クラスタウェアのログ・ファイルおよび統合ログ・ディレクトリ構造

- ゾーン委任のテスト

- Oracleトレース・ファイル・アナライザ・コレクタ

- 診断収集スクリプト

- Oracle Clusterwareアラート

Oracle Clusterwareの監視

Oracle Enterprise Managerを使用して、Oracle Clusterware環境を監視できます。クライアント・ブラウザを使用してOracle Enterprise Managerにログインすると、クラスタ・データベースの「ホーム」ページが表示され、両方のOracle Clusterware環境のステータスを監視できます。監視には次のタスクが含まれます。

- VIPの再配置が行われた場合の通知

- クラスタ検証ユーティリティ(cluvfy)により取得した情報を使用する、クラスタの各ノードのOracle Clusterwareのステータス

- ノード・アプリケーション(nodeapps)が起動または停止した場合の通知

- Oracle Cluster Registryに対するOracle Clusterwareのアラート・ログの問題、投票ディスクの問題(発生した場合)およびノードの排除の通知

クラスタ・データベースの「ホーム」ページは、シングル・インスタンス・データベースの「ホーム」ページに類似しています。ただし、クラスタ・データベースの「ホーム」ページには、Oracle Enterprise Managerにより、システムの状態と可用性が表示されます。これには、アラート・メッセージおよびジョブ・アクティビティのサマリーと、すべてのデータベースおよび自動ストレージ管理(Oracle ASM)インスタンスへのリンクも含まれます。たとえば、すべての優先インスタンスでサービスが実行されていない場合、またはサービスの応答時間のしきい値条件が満たされていない場合などに、クラスタでのサービスに関する問題を追跡できます。

Oracle Enterprise Managerの「インターコネクト」ページを使用して、Oracle Clusterware環境を監視できます。「インターコネクト」ページには、次に示すように、クラスタのパブリックおよびプライベートのインタフェース、プライベート・インターコネクトの全体的なスループット、各ネットワーク・インタフェースの個々のスループット、エラー率(発生した場合)およびインターコネクトのデータベース・インスタンスによる負荷が表示されます。

- プライベート・インターコネクトでの全体的なスループット

- 構成ミスのためデータベース・インスタンスがパブリック・インタフェースを使用している場合の通知

- インターコネクトのスループットおよびエラー(発生した場合)

- インスタンスごとのインターコネクトのスループット

これらの情報はすべて、履歴表示を含む収集としても使用することができます。これは、クラスタの待機イベントに関連する問題を診断する場合など、クラスタ・キャッシュ一貫性と併用すると役立ちます。クラスタ・データベースの「ホーム」ページで、「インターコネクト」タブをクリックすると、「インターコネクト」ページにアクセスできます。

また、Oracle Enterprise Managerのクラスタ・データベースの「パフォーマンス」ページには、データベースのパフォーマンス統計のサマリーが表示されます。統計は、グラフのクラスタ・データベース内のすべてのインスタンス間でロールアップされます。グラフの横にあるリンクを使用すると、より詳細な情報を取得して、次のタスクを実行できます。

- パフォーマンスの問題の原因の特定。

- リソースを追加または再分散する必要があるかどうかの判別。

- SQL計画およびスキーマのチューニングによる最適化。

- パフォーマンスの問題の解決

クラスタ・データベースの「パフォーマンス」ページには、次のグラフが含まれます。

- 「クラスタ・ホストのロード平均」グラフ: クラスタ・データベースの「パフォーマンス」ページの「クラスタ・ホストのロード平均」グラフには、データベース外部で発生する可能性がある問題が表示されます。このグラフには、過去1時間のクラスタで使用可能なノードの最大ロード値、平均ロード値および最小ロード値が表示されます。

- 「グローバル・キャッシュ・ブロックのアクセス待機時間」グラフ: 各クラスタ・データベース・インスタンスのシステム・グローバル領域(SGA)には、独自のバッファ・キャッシュが存在します。キャッシュ・フュージョンの使用によって、Oracle RAC環境で各インスタンスのバッファ・キャッシュが論理的に結合され、論理的に結合された単一のキャッシュにデータが存在する場合と同様に、データベース・インスタンスでデータを処理できます。

- 「平均アクティブ・セッション」グラフ: クラスタ・データベースの「パフォーマンス」ページの「平均アクティブ・セッション」グラフには、データベース内で発生する可能性がある問題が表示されます。「カテゴリ」(待機クラスという)には、CPUやディスクI/Oなどのリソースを使用しているデータベースの数が表示されます。CPU時間と待機時間を比較すると、他のプロセスで保留されている可能性のあるリソースを待機している時間ではなく、有効な作業に費やされているレスポンス時間を判別できます。

- 「データベース・スループット」グラフ: 「データベース・スループット」グラフは、「平均アクティブ・セッション」グラフに表示される任意のリソース競合を要約する他、ユーザーやアプリケーションのためにデータベースが実行中の作業の量を示します。「1秒当たり」ビューは、1秒当たりのログオン数に対するトランザクションの数、REDOサイズに対する物理読取りの量を示します。「1トランザクション当たり」ビューは、トランザクション当たりのREDOサイズに対する物理読取りの量を示します。「ログオン」は、データベースにログオンしているユーザー数を示します。

また、クラスタ・データベースの「パフォーマンス」ページの「トップ・アクティビティ」ドリルダウン・メニューでは、待機イベント、サービスおよびインスタンスごとのアクティビティを参照できます。さらに、グラフのスライダーで前のPoint-in-Timeへ移動することによって、SQLおよびセッションの詳細を確認することもできます。

関連項目:
『Oracle Database 2日でReal Application Clustersガイド』

この項には次のトピックが含まれます:

- クラスタ状態モニター

- OCLUMONコマンドのリファレンス

- Diagnostic Record Unique IDを使用したアラート・メッセージ

クラスタ状態モニター

クラスタ状態モニター(CHM)は、オペレーティング・システムのリアルタイム・メトリックをCHMリポジトリに格納し、これは、後でクラスタに問題が発生したときに、Oracleサポートの支援のもとでトリアージに使用できます。

この項ではCHMについて説明します。内容は次のとおりです。

- CHMサービス

- CHMリポジトリ

- CHMデータの収集

CHMサービス

CHMは、次のサービスで構成されています。

- システム監視サービス

- クラスタ・ログ出力サービス

システム監視サービス

各ノードには、1つのシステム監視サービスがあります。システム監視サービス(osysmond)は、監視して、データをクラスタ・ログ出力サービスに送信するオペレーティング・システム・メトリック収集サービスです。クラスタ・ログ出力サービスは、すべてのノードから情報を受信し、CHMリポジトリベースのデータベースを維持します。

クラスタ・ログ出力サービス

クラスタ・ログ出力サービス(ologgerd)は、クラスタ内の1つのノードのみに1つ存在し、別のノードは、マスター・クラスタ・ログ出力サービスのスタンバイを保持するために、クラスタ・ログ出力サービスによって選択されます。(定められた回数の再試行後にサービスが起動できなかったことや、マスターが実行されていたノードが停止したことが原因で)マスター・クラスタ・ログ出力サービスに障害が発生すると、スタンバイが存在するノードがマスターを引き継ぎ、スタンバイ用に新しいノードを選択します。マスターは、CHMリポジトリでオペレーティング・システム・メトリック・データベースを管理し、マスター・オペレーティング・システム・メトリック・データベースのレプリカを管理するためにスタンバイと相互作用します。

CHMリポジトリ

デフォルトでは、CHMリポジトリは、グリッド・インフラストラクチャ・ホームに存在し、クラスタ内のノードごとに1GBのディスク領域を必要とします。このサイズと場所は調整可能であり、共有ストレージに移動することもできます。CHMリポジトリは、OCLUMONを使用して管理します。

CHMデータの収集

ノードでGrid_home/bin/diagcollection.plスクリプトを実行することで、クラスタのいずれのノードからでもCHMデータを収集できます。

注意:

- Grid_home/bin/diagcollection.plスクリプトを実行してCHMデータを収集する場合、クラスタのすべてのノードでスクリプトを実行して、分析に必要なすべての情報を確実に収集します。

- 権限を持つユーザーとしてこのスクリプトを実行する必要があります。

クラスタ・ログ出力サービスが実行中のノードのみでデータ収集スクリプトを実行するには、次の手順を実行します。

1. 次のコマンドを実行して、クラスタ・ログ出力サービスが実行しているノードを識別します。

$ Grid_home/bin/oclumon manage -get master

2. 権限を持つユーザーとしてクラスタ・ログ出力サービス・ノードで次のコマンドを実行して、グリッド・インフラストラクチャ管理リポジトリで使用できるすべてのデータを収集します。

# Grid_home/bin/diagcollection.pl

diagcollection.plスクリプトは、次のように、chmosData_host_name_time_stamp.tar.gzというファイルを作成します。

chmosData_stact29_20121006_2321.tar.gz

収集するデータの量を制限するには、次を実行します。

# Grid_home/bin/diagcollection.pl -collect -chmos
-incidenttime inc_time -incidentduration duration

前述のコマンドでは、-incidenttimeパラメータの書式はMM/DD/YYYY24HH:MM:SSで、-incidentdurationパラメータの書式はHH:MMです。次に例を示します。

# Grid_home/bin/diagcollection.pl -collect -crshome
Grid_home -chmoshome Grid_home -chmos -incidenttime 07/14/201201:00:00
-incidentduration 00:30

OCLUMONコマンドのリファレンス

OCLUMONコマンドライン・ツールは、CHMに付属しており、CHMリポジトリの問合せに使用して、指定した期間のノード固有のメトリックを表示することができます。また、oclumonを使用して、指定した期間のノードにおけるリソースの存続期間と状態を問合せて出力します。これらの状態は、各リソース・メトリックに事前定義されているしきい値に基づいており、重大性が高い順に赤色、オレンジ色、黄色および緑色で示されます。たとえば、過去1時間にnode1というノードのCPUが赤色の状態であった時間(秒)を示すように問い合せることができます。また、OCLUMONを使用して、デバッグ・レベルの変更、CHMバージョンの問合せ、メトリック・データベース・サイズの変更など、様々な管理タスクを実行できます。

この項では、次のOCLUMONコマンドについて説明します。

- oclumon debug

- oclumon dumpnodeview

- oclumon manage

- oclumon version

oclumon debug

oclumon debugコマンドを使用して、CHMサービスのログ・レベルを設定します。

構文

oclumon debug [log daemon module:log_level] [version]

パラメータ

表H-1 oclumon debugコマンドのパラメータ

パラメータ

説明

log daemon module:log_level

デーモンのログ・レベルおよびデーモン・モジュールを変更する場合に、このオプションを使用します。サポートされているデーモンは次のとおりです。

osysmond
ologgerd
client
all
サポートされているデーモン・モジュールは次のとおりです。

osysmond: CRFMOND、CRFMおよびallcomp
ologgerd: CRFLOGD、CRFLDBDB、CRFMおよびallcomp
client: OCLUMON、CRFMおよびallcomp
all: CRFM,allcomp
サポートされているlog_levelの値は0、1、2および3です。

version

デーモンのバージョンを表示する場合に、このオプションを使用します。

例

次の例では、システム監視サービス(osysmond)のログ・レベルを設定します。

$ oclumon debug log osysmond CRFMOND:3

oclumon dumpnodeview

oclumon dumpnodeviewコマンドを使用して、ノード・ビューの形式でシステム監視サービスからログ情報を表示します。

ノード・ビューは、ある時点のノードに対してCHMが収集したすべてのメトリックの集合です。CHMでは、各ノードに対して1秒に1回のメトリックの収集が試行されます。一部のメトリックは静的ですが、その他のメトリックは動的です。

詳細な出力を表示する場合、ノード・ビューは次の7つのビューで構成されています。

- SYSTEM: CPU数、CPU使用率、メモリー使用量などのシステム・メトリックをリストします。

- TOP CONSUMERS: 消費する上位のプロセスを次の形式でリストします。

metric_name: 'process_name(process_identifier) utilization'

- PROCESSES: PID、名前、スレッド数、メモリー使用量、ファイル記述子の数などのプロセス・メトリックをリストします。

- DEVICES: ディスクの読取り速度および書込み速度、キューの長さ、I/O当たりの待機時間などのデバイス・メトリックをリストします。

- NICS: ネットワークの受信速度および送信速度、有効バンド幅、エラー率などのネットワーク・インタフェース・カードのメトリックをリストします。

- FILESYSTEMS: 合計領域、使用済領域、使用可能な領域などのファイル・システムのメトリックをリストします。

- PROTOCOL ERRORS: プロトコル・エラーをリストします。

SYSTEMビューおよびTOP CONSUMERSビューのみを含むサマリー・レポートを生成できます。

「メトリックの説明」に、前述のリストの各ビューに関連付けられたすべてのメトリックの説明を示します。

注意:
TOP CONSUMERSビューに表示されるメトリックは、表H-4「PROCESSESビューのメトリックの説明」を参照してください。

例H-1に、ノード・ビューの例を示します。

構文

oclumon dumpnodeview [[-allnodes] | [-n node1 node2] [-last "duration"] |
[-s "time_stamp" -e "time_stamp"] [-v] [-warning]] [-h]

パラメータ

表H-2 oclumon dumpnodeviewコマンドのパラメータ

パラメータ

説明

-allnodes

クラスタ内のすべてのノードのノード・ビューをダンプするには、このオプションを使用します。

-n node1 node2

ノード・ビューをダンプする1つのノード(または、空白区切りのリストで複数のノード)を指定します。

-last "duration"

最後のメトリックを取得する時間(二重引用符("")で囲んだHH24:MM:SS形式)を指定するには、このオプションを使用します。次に例を示します。

"23:05:00"

-s "time_stamp" -e "time_stamp"

-sオプションを使用して一連の問合せを開始するタイム・スタンプを指定し、-eオプションを使用して一連の問合せを終了するタイム・スタンプを指定します。二重引用符("")で囲んだYYYY-MM-DD HH24:MM:SS形式で時間を指定します。

"2011-05-10 23:05:00"

注意: 範囲を得るには、これらの2つのオプションの両方を指定する必要があります。

-v

ノード・ビューの詳細出力を表示します。-vを指定しない場合、SYSTEMのみが表示されます。

-warning

警告を含むノード・ビューのみを出力するには、このオプションを使用します。

-h

oclumon dumpnodeviewコマンドのオンライン・ヘルプを表示します。

使用上の注意

- デフォルトでは、ノード・ビューが連続的にダンプされます。連続的な表示を停止するには、Linuxでは[Ctrl]+[C]、Windowsでは[Esc]を使用します。

- ノード・ビューのダンプを取得するには、ローカル・システム監視サービス(osysmond)およびクラスタ・ログ出力サービス(ologgerd)の両方が実行されている必要があります。

例

次の例では、過去12時間に収集された、node1、node2およびnode3のノード・ビューをダンプします。

$ oclumon dumpnodeview -n node1 node2 node3 -last "12:00:00"

次の例では、過去15分間に収集された、すべてのノードのノード・ビューを表示します。

$ oclumon dumpnodeview -allnodes -last "00:15:00"

メトリックの説明

この項では、次の表にリストされた、ノード・ビューを構成する7つの各ビューのメトリックについて説明します。

表H-3 SYSTEMビューのメトリックの説明

メトリック

説明

#pcpus

システム内の物理CPUの数

#vcpus

論理演算ユニットの数

chipname

CPUの種類

cpuht

CPUのハイパースレッディングが有効(Y)または無効(N)

cpu

現在のサンプル間隔内での処理装置ごとの平均CPU使用率(%)。

cpuq

現在のサンプル間隔内で、実行キューで待機中のプロセスの数

physmemfree

RAMの空き容量(KB)

physmemtotal

使用可能なRAMの合計容量(KB)

mcache

ファイル・バッファに使用される物理RAMの量にキャッシュ・メモリーとして使用される物理RAMの量を加えたもの(KB)

注意: このメトリックは、SolarisまたはWindowsシステムでは使用できません。

swapfree

スワップ・メモリーの空き容量(KB)

swaptotal

物理スワップ・メモリーの合計容量(KB)

ior

現在のサンプル間隔内での平均の合計ディスク読取り速度(KB/秒)

iow

現在のサンプル間隔内での平均の合計ディスク書込み速度(KB/秒)

ios

現在のサンプル間隔内での平均の合計ディスクI/O操作速度(I/O操作/秒)

swpin

現在のサンプル間隔内での平均スワップ・イン率(KB/秒)

注意: このメトリックは、Windowsシステムでは使用できません。

swpout

現在のサンプル間隔内での平均スワップ・アウト率(KB/秒)

注意: このメトリックは、Windowsシステムでは使用できません。

pgin

現在のサンプル間隔内での平均ページ・イン率(ページ/秒)

pgout

現在のサンプル間隔内での平均ページ・アウト率(ページ/秒)

netr

現在のサンプル間隔内での平均の合計ネットワーク受信速度(KB/秒)

netw

現在のサンプル間隔内での平均の合計ネットワーク送信速度(KB/秒)

procs

プロセスの数

rtprocs

リアルタイム・プロセスの数

#fds

オープン・ファイル記述子の数

Windows上のオープンしているハンドルの数

#sysfdlimit

ファイル記述子の数に対するシステム制限

注意: このメトリックは、Windowsシステムでは使用できません。

#disks

ディスクの数

#nics

ネットワーク・インタフェース・カードの数

nicErrors

現在のサンプル間隔内での平均の合計ネットワーク・エラー率(エラー/秒)

表H-4 PROCESSESビューのメトリックの説明

メトリック

説明

name

実行可能なプロセスの名前

pid

オペレーティング・システムによって割り当てられたプロセス識別子

#procfdlimit

このプロセスのファイル記述子の数に対する制限

注意: このメトリックは、Windows、Solaris、AIXおよびHP-UXシステムでは使用できません。

cpuusage

プロセスのCPU使用率(%)

注意: 使用率の最大値は、処理装置の数の100倍です。

memusage

プロセスのプライベート・メモリー使用量(KB)

shm

プロセスの共有メモリー使用量(KB)

注意: このメトリックは、Windows、SolarisおよびAIXシステムでは使用できません。

workingset

プログラムのワーキング・セット(KB)

注意: このメトリックは、Windowsでのみ使用可能です。

#fd

このプロセスでオープンしているファイル記述子の数

Windows上のこのプロセスでオープンしているハンドルの数

#threads

このプロセスで作成されたスレッドの数

priority

プロセス優先度

nice

プロセスの正常値

表H-5 DEVICESビューのメトリックの説明

メトリック

説明

ior

現在のサンプル間隔内での平均のディスク読取り速度(KB/秒)

iow

現在のサンプル間隔内での平均のディスク書込み速度(KB/秒)

ios

現在のサンプル間隔内での平均のディスクI/O操作速度(I/O操作/秒)

qlen

現在のサンプル間隔内で待機状態のI/Oリクエストの数

wait

現在のサンプル間隔内でのI/O当たりの平均待機時間(ミリ秒)

type

適用可能な場合は、デバイスの使用目的を示します。表示される値は、SWAP、SYS、OCR、ASMおよびVOTINGです。

表H-6 NICSビューのメトリックの説明

メトリック

説明

netrr

現在のサンプル間隔内での平均のネットワーク受信速度(KB/秒)

netwr

現在のサンプル間隔内での平均のネットワーク送信速度(KB/秒)

neteff

現在のサンプル間隔内での平均の有効バンド幅(KB/秒)

nicerrors

現在のサンプル間隔内での平均エラー率(エラー/秒)

pktsin

現在のサンプル間隔内での平均の受信パケット率(パケット/秒)

pktsout

現在のサンプル間隔内での平均の発信パケット率(パケット/秒)

errsin

現在のサンプル間隔内での受信パケットの平均エラー率(エラー/秒)

errsout

現在のサンプル間隔内での発信パケットの平均エラー率(エラー/秒)

indiscarded

現在のサンプル間隔内での受信パケットの平均ドロップ率(パケット/秒)

outdiscarded

現在のサンプル間隔内での発信パケットの平均ドロップ率(パケット/秒)

inunicast

現在のサンプル間隔内での平均のユニキャスト・パケット受信率(パケット/秒)

type

PUBLICまたはPRIVATE

innonunicast

平均のマルチキャスト・パケット受信率(パケット/秒)

latency

このネットワーク・インタフェース・カードの推定待機時間(ミリ秒)

表H-7 FILESYSTEMSビューのメトリックの説明

メトリック

説明

name

ファイルシステムの名前。

mount

ファイルシステムがマウントされるマウント・ポイント

type

マウントされるファイルシステムのタイプ、Local、NTFSまたはEXT2のいずれか

total

領域の合計容量(KB)

used

使用済領域の量(KB)

available

使用可能な領域の量(KB)

used%

使用済領域の割合(%)

mft%

マスター・ファイル表の使用率(%)

ifree%

空きファイル・ノードの割合(%)

注意: このメトリックは、Windowsシステムでは使用できません。

表H-8 PROTOCOL ERRORSビューのメトリックの説明脚注1

メトリック

説明

IPHdrErr

IPv4ヘッダー内のエラーのため破棄された入力データグラムの数

IPAddrErr

IPv4ヘッダーの宛先フィールド内のIPv4アドレスがこのエンティティで受信できる有効なアドレスではなかったため破棄された入力データグラムの数

IPUnkProto

正常に受信されたものの、不明またはサポートされていないプロトコルのため破棄された、ローカルにアドレス指定されたデータグラムの数

IPReasFail

IPv4の再アセンブリ・アルゴリズムによって検出された障害の数

IPFragFail

フラグメンテーション・エラーのため破棄されたIPv4データグラムの数

TCPFailedConn

TCP接続がSYN-SENT状態またはSYN-RCVD状態からCLOSED状態に直接遷移した回数と、TCP接続がSYN-RCVD状態からLISTEN状態に直接遷移した回数

TCPEstRst

TCP接続がESTABLISHED状態またはCLOSE-WAIT状態からCLOSED状態に直接遷移した回数

TCPRetraSeg

再送信されたTCPセグメントの合計数

UDPUnkPort

宛先ポートにアプリケーションが存在しなかった受信済UDPデータグラムの合計数

UDPRcvErr

宛先ポートにアプリケーションが存在しないこと以外の理由で配信できなかった受信済UDPデータグラムの数

脚注1 すべてのプロトコル・エラーは、システムの起動時以降の累積値です。

例H-1 ノード・ビュー例

----------------------------------------
Node: node1 Clock: '07-17-13 23.33.25' SerialNo:34836
----------------------------------------

SYSTEM:
#pcpus: 12 #vcpus: 12 cpuht: N chipname: Intel(R) cpu: 2.43 cpuq: 2
physmemfree: 56883116 physmemtotal: 74369536 mcache: 13615352 swapfree: 18480408
swaptotal: 18480408 ior: 170 iow: 37 ios: 37 swpin: 0 swpout: 0 pgin: 170
pgout: 37 netr: 40.301 netw: 57.211 procs: 437 rtprocs: 33 #fds: 15008
#sysfdlimit: 6815744 #disks: 9 #nics: 5  nicErrors: 0

TOP CONSUMERS:
topcpu: 'osysmond.bin(9103) 2.59' topprivmem: 'java(26616) 296808'
topshm: 'ora_mman_orcl_4(32128) 1222220' topfd: 'ohasd.bin(7594) 150'
topthread: 'crsd.bin(9250) 43'

PROCESSES:

name: 'mdnsd' pid: 12875 #procfdlimit: 8192 cpuusage: 0.19 privmem: 9300
shm: 8604 #fd: 36 #threads: 3 priority: 15 nice: 0
name: 'ora_cjq0_rdbms3' pid: 12869 #procfdlimit: 8192 cpuusage: 0.39
privmem: 10572 shm: 77420 #fd: 23 #threads: 1 priority: 15 nice: 0
name: 'ora_lms0_rdbms2' pid: 12635 #procfdlimit: 8192 cpuusage: 0.19
privmem: 15832 shm: 49988 #fd: 24 #threads: 1 priority: 15 nice: 0
name: 'evmlogger' pid: 32355 #procfdlimit: 8192 cpuusage: 0.0 privmem: 4600
shm: 8756 #fd: 9 #threads: 3 priority: 15 nice: 0
.
.
.

DEVICES:

xvda ior: 0.798 iow: 193.723 ios: 33 qlen: 0 wait: 0 type: SWAP
xvda2 ior: 0.000 iow: 0.000 ios: 0 qlen: 0 wait: 0 type: SWAP
xvda1 ior: 0.798 iow: 193.723 ios: 33 qlen: 0 wait: 0 type: SYS

NICS:

lo netrr: 35.743  netwr: 35.743  neteff: 71.486  nicerrors: 0 pktsin: 22
pktsout: 22  errsin: 0  errsout: 0  indiscarded: 0  outdiscarded: 0
inunicast: 22 innonunicast: 0  type: PUBLIC
eth0 netrr: 7.607  netwr: 1.363  neteff: 8.971  nicerrors: 0 pktsin: 41
pktsout: 18  errsin: 0  errsout: 0  indiscarded: 0  outdiscarded: 0
inunicast: 41  innonunicast: 0  type: PRIVATE latency: <1

FILESYSTEMS:

mount: / type: rootfs total: 155401100 used: 125927608 available: 21452240
used%: 85 ifree%: 93 [ORACLE_HOME CRF_HOME rdbms2 rdbms3 rdbms4 has51]

mount: /scratch type: ext3 total: 155401100 used: 125927608 available: 21452240
used%: 85 ifree%: 93 [rdbms2 rdbms3 rdbms4 has51]

mount: /net/adc6160173/scratch type: ext3 total: 155401100 used: 125927608
available: 21452240 used%: 85 ifree%: 93 [rdbms2 rdbms4 has51]

PROTOCOL ERRORS:

IPHdrErr: 0 IPAddrErr: 19568 IPUnkProto: 0 IPReasFail: 0 IPFragFail: 0
TCPFailedConn: 931776 TCPEstRst: 76506 TCPRetraSeg: 12258 UDPUnkPort: 29132
UDPRcvErr: 148

oclumon manage

oclumon manageコマンドを使用して、システム監視サービスからログ情報を表示します。

構文

oclumon manage [[-repos {resize size | changesize memory_size |
reploc new_location [[-maxtime size] | [-maxspace memory_size]]}] |
[-get key1 key2 ...]]

パラメータ

表H-9 oclumon manageコマンドのパラメータ

パラメータ

説明

-repos {resize size | changesize memory_size |
reploc new_location
[[-maxtime size |
-maxspace memory_size]]

次のCHMリポジトリ関連オプションを指定するには、-reposフラグが必要です。

- resize size: 3600(1時間)から259200(3日間)の範囲内で指定した秒数にCHMリポジトリのサイズを変更する場合に、このオプションを使用します。

- changesize memory_size: 指定したMB数にCHMリポジトリの領域制限を変更する場合に、このオプションを使用します。

- reploc new_location: 指定したディレクトリ・パスにCHMリポジトリの場所を変更し、データ・キャプチャの経過秒数および新しい場所の領域制限の観点からCHMリポジトリのサイズを指定する場合に、このオプションを使用します。

-get key1 key2 ...

次のキーワードを使用してCHMリポジトリ情報を取得する場合に、このオプションを使用します。

repsize: CHMリポジトリの現在のサイズ(秒)
reppath: CHMリポジトリまでのディレクトリ・パス
master: マスター・ノードの名前
replica: スタンバイ・ノードの名前
-getフラグの後のスペース区切りリストに、任意の数のキーワードを指定できます。

-h

oclumon manageコマンドのオンライン・ヘルプを表示します。

使用上の注意

CHMリポジトリのサイズを変更するには、ローカル・システム監視サービスとマスター・クラスタ・ログ出力サービスが実行されている必要があります。

例

次の例では、コマンドと出力例を示します。

$ oclumon manage -repos reploc /shared/oracle/chm

前述の例では、CHMリポジトリが共有ストレージに移動されます。

$ oclumon manage -get reppath
CHM Repository Path = /opt/oracle/grid/crf/db/node1
Done

$ oclumon manage -get master
Master = node1
done

$ oclumon manage -get repsize
CHM Repository Size = 86400
Done

oclumon version

oclumon versionコマンドを使用して、使用中のCHMのバージョンを取得します。

構文

oclumon version

例

このコマンドを実行すると、次のような出力が生成されます。

Cluster Health Monitor (OS), Version 11.2.0.3.0 - Production Copyright 2011
Oracle. All rights reserved.

クラスタウェアのログ・ファイルおよび統合ログ・ディレクトリ構造

Oracle Databaseでは、統合ログ・ディレクトリ構造を使用して、Oracle Clusterwareコンポーネントのログ・ファイルが統合されます。この統合構造は、診断情報の収集を簡素化し、データの取得および問題の分析に役立ちます。

アラート・ファイルは、表H-10に示すディレクトリ構造に格納されます。

表H-10 Oracle Clusterwareコンポーネントのログ・ファイルの場所

コンポーネント

ログ・ファイルの場所脚注1

クラスタ状態モニター(CHM)

システム監視サービスおよびクラスタ・ログ出力サービスは、それぞれ次の場所にログ情報を記録します。

Grid_home/log/host_name/crfmond
Grid_home/log/host_name/crflogd

Oracle Database Quality of Service Management(DBQOS)

Oracle Database QoS Management Grid Operations Managerのログ:

Grid_home/oc4j/j2ee/home/log/dbwlm/auditing

Oracle Database QoS Managementのトレース・ログ:

Grid_home/oc4j/j2ee/home/log/dbwlm/logging

クラスタ・レディ・サービス・デーモン(CRSD)・ログ・ファイル

Grid_home/log/host_name/crsd

クラスタ同期サービス (CSS)

Grid_home/log/host_name/cssd

クラスタ時刻同期化サービス(CTSS)

Grid_home/log/host_name/ctssd

グリッド・プラグ・アンド・プレイ

Grid_home/log/host_name/gpnpd

マルチキャスト・ドメイン名サービス・デーモン(MDNSD)

Grid_home/log/host_name/mdnsd

Oracle Cluster Registry

Oracle Cluster Registryツール(OCRDUMP、OCRCHECK、OCRCONFIG)は、次の場所にログ情報を記録します。脚注2

Grid_home/log/host_name/client

クラスタ・レディ・サービスは、次の場所にOracle Cluster Registryのログ情報を記録します。

Grid_home/log/host_name/crsd

Oracleグリッド・ネーミング・サービス(GNS)

Grid_home/log/host_name/gnsd

Oracle高可用性サービス・デーモン(OHASD)

Grid_home/log/host_name/ohasd

Oracle Automatic Storage Management Cluster File System (Oracle ACFS)

Grid_home/log/host_name/acfsrepl
Grid_home/log/host_name/acfsreplroot
Grid_home/log/host_name/acfssec
Grid_home/log/host_name/acfs

evmdによって生成されたイベント・マネージャ(EVM)情報

Grid_home/log/host_name/evmd

クラスタ検証ユーティリティ(CVU)

Grid_home/log/host_name/cvu

Oracle RAC RACG

Oracle RAC High Availabilityのトレース・ファイルは、次の2つの場所にあります。

Grid_home/log/host_name/racg
$ORACLE_HOME/log/host_name/racg

コア・ファイルは、ログ・ディレクトリのサブディレクトリ内にあります。各RACG実行可能ファイルには、その実行可能ファイルに排他的に割り当てられたサブディレクトリがあります。RACG実行可能ファイルのサブディレクトリの名前は、実行可能ファイルの名前と同じです。

さらに、ログ情報は、VIPの場合はGrid_home/log/host_name/agent/crsd/orarootagent_rootに、データベースの場合は$ORACLE_HOME/log/host_name/racgにあります。

サーバー・マネージャ(SRVM)

Grid_home/log/host_name/srvm

ディスク監視デーモン(diskmon)

Grid_home/log/host_name/diskmon

グリッド・プロセス間通信デーモン(GIPCD)

Grid_home/log/host_name/gipcd

脚注1: ディレクトリ構造は、Linux、UNIXおよびWindowsシステムで同一です。

脚注2: ロギングの量を変更するには、Grid_home/srvm/admin/ocrlog.iniファイルのパスを編集します。

ゾーン委任のテスト

関連項目:
この手順にあるCRSCTLコマンドの使用の詳細は、付録E「CRSCTLユーティリティのリファレンス」を参照してください。

次の手順を使用して、ゾーン委任をテストします。

1. rootとして次のコマンドを実行し、GNS VIPを起動します。

# crsctl start ip -A IP_name/netmask/interface_name

interface_nameは、パブリック・ネットワークのパブリック・インタフェースおよびネットマスクである必要があります。

2. 次のコマンドを実行し、GNS VIPでテストDNSサーバーを起動します(ポート番号が1024より小さい場合はrootとしてこのコマンドを実行する必要があります)。

# crsctl start testdns -address address [-port port]

このコマンドによって、指定したIPおよびポートで、DNSが転送したパケットをリスニングするテストDNSサーバーが起動されます。

3. rootとして次のコマンドを実行し、GNS VIPが他のノードから到達可能であることを確認します。

crsctl status ip -A IP_name

4. 次のコマンドを実行し、直接DNSサーバーに問い合せます。

crsctl query dns -name name -dnsserver DNS_server_address

このコマンドは、次のエラーが発生して失敗します。

CRS-10023: 名前asdf.foo.comのドメイン名参照に失敗しました。オペレーティング・システム・エラー: ホスト名参照エラー

Grid_home/log/host_name/client/odnsd_*.logを参照して、問合せがテストDNSサーバーで受信されたかどうかを確認します。これにより、DNS問合せがファイアウォールによってブロックされていないことが確認されます。

5. 次のコマンドを実行し、GNSドメイン問合せのDNS委任を問い合せます。

crsctl query dns -name name

注意:
この手順と前の手順の違いは、-dnsserver DNS_server_addressオプションを指定しないことのみです。これにより、コマンドは/etc/resolv.confで構成されているネーム・サーバーに問い合せます。前の手順と同様に、コマンドは同じエラーが発生して失敗します。再度、odnsd*.logを参照して、odnsdで問合せが受信されたことを確認します。手順5が成功し、手順6が成功しない場合は、DNS構成を確認する必要があります。

6. 次のコマンドを実行し、テストDNSサーバーを停止します。

crsctl stop testdns -address address

7. rootとして次のコマンドを実行し、GNS VIPを停止します。

crsctl stop ip -A IP_name/netmask/interface_name

Oracleトレース・ファイル・アナライザ・コレクタ

Oracleトレース・ファイル・アナライザ(TFA)コレクタは、Oracle Clusterware、Oracle Grid InfrastructureおよびOracle RACシステムの診断データ収集を簡素化し、ターゲット診断を収集するためのツールです。TFAには、診断データを収集およびパッケージ化し、診断情報の収集を集中化および自動化する機能があります。

TFAは、Oracle Database 11gリリース2 (11.2.0.4)のインストール時、またはOracle Database 11gリリース2 (11.2.0.4)へのアップグレード時に、Oracle Grid Infrastructureホームにインストールされます。TFAデーモンは、関連トレース・ファイル・ディレクトリを検出し、検出されたディレクトリ内のトレース・ファイルを分析して、ファイル・タイプ(たとえば、データベース・トレース・ファイルまたはログ・ファイル、またはOracle Clusterwareトレース・ファイルまたはログ・ファイル)と、それらのファイルの最初と最後のタイムスタンプを特定します。TFAは、このデータを、BerkeleyデータベースのGridホーム所有者のORACLE_BASEディレクトリに格納します。

注意:
Oracle Database 11gリリース2 (11.2.0.4)でTFAはサポートされません。

TFAデーモンは、追加する新しいトレース・ディレクトリを定期的にチェックし(新しいデータベース・インスタンスを作成した場合など)、トレース・ファイル・メタデータの更新が必要かどうかも定期的にチェックします。TFAは、診断データ収集時に、このメタデータを使用します。

TFAによる診断収集は、オンデマンドまたは自動のいずれか2つの方法で実行されます。

- tfactl setを使用して、トレース・ファイル内の一定のエラー・セットの検出時に、診断の自動収集を有効にします。

関連項目:
「tfactl set」

- tfactl diagcollectコマンドは、すべてのコンポーネントの、特定の時間範囲内のトリムされたトレース・ファイルを収集します。

関連項目:
「tfactl diagcollect」

この項には次のトピックが含まれます:

- TFAデーモンの管理

- TFA制御ユーティリティのコマンド・リファレンス

- TFAでのデータ・リダクション

TFAデーモンの管理

TFAは、ノードが起動されるたびに自動的に開始します。TFAを手動で開始または停止するには、次のコマンドを使用します。

- /etc/init.d/init.tfa start: TFAデーモンを起動します

- /etc/init.d/init.tfa stop: TFAデーモンを停止します

- /etc/init.d/init.tfa restart: TFAデーモンを停止し、その後起動します

- /etc/init.d/init.tfa shutdown: TFAデーモンを停止し、適切なオペレーティング・システム構成からエントリを削除します

TFAデーモンが失敗した場合は、オペレーティング・システムによって自動的に再起動されます。

TFA制御ユーティリティのコマンド・リファレンス

TFA制御ユーティリティTFACTLは、TFAのためのコマンドライン・インタフェースで、Grid_home/tfa/binディレクトリに格納されています。通常、rootアクセスのみ可能なトレース・ファイルにアクセスできるように、TFACTLはrootまたはsudoで実行する必要があります。一部のコマンド(tfactl host addなど)には、rootアクセスが必須です。

TFACTLコマンドに、-helpフラグを追加すると、オンラインの使用方法を取得できます。

この項では、次のTFACTLコマンドについて説明します。

- tfactl print

- tfactl purge

- tfactl directory

- tfactl host

- tfactl set

- tfactl diagcollect

tfactl print

tfactl printコマンドを使用して、Berkeleyデータベースから情報を表示します。

構文

tfactl print [status | config | directories | hosts | actions | repository | cookie]

パラメータ

表H-11 tfactl printコマンドのパラメータ

パラメータ

説明

status

クラスタ内のすべてのノードにわたってTFAの状態を表示します。また、TFAのバージョンおよび実行中のポートも表示します。

config

現在のTFA構成設定を表示します。

directories

TFAがトレース・ファイルまたはログ・ファイル・データをスキャンするすべてのディレクトリを表示し、データベース、Oracle ASMおよびインスタンスに割り当てられているトレース・ディレクトリの場所を表示します。

hosts

TFAクラスタの一部で、クラスタ全体のコマンドを受信できるホストを表示します。

actions

TFAに送信される、診断の収集などのすべてのアクションを表示します。デフォルトでは、tfactl print actionsは、最近1時間に実行中または完了したアクションのみを表示します。

repository

リポジトリ・ディレクトリの現在の場所および使用済領域の量を表示します。最初、リポジトリ・ディレクトリの最大サイズは、10GBまたは使用可能なファイルシステム領域の50%のいずれか小さい方になります。最大サイズを超えた場合またはファイルシステム領域が1GB以下になった場合、TFAは操作を一時停止し、リポジトリがクローズされます。tfactl purgeコマンドを使用して、リポジトリからコレクションを消去します。

cookie

tfactl setコマンドで使用する識別コードを生成および表示します。

例

tfactl print configでは次のような出力が戻されます。

Configuration parameter                                Value
------------------------------------------------------------
TFA Version                                          2.5.1.5
Automatic diagnostic collection                          OFF
Trimming of files during diagcollection                   ON
Repository current size (MB) in node1                    526
Repository maximum size (MB) in node1                  10240
Trace Level                                                1

前述の出力例では、次のとおりです。

- Automatic diagnostic collection: ONの場合(デフォルトはOFF)、アラート・ログのスキャンでログ内に特定のイベントが検出されたときに、診断収集がトリガーされます。

- Trimming of files during diagcollection: TFAで、特定の時間範囲内のデータのみを含めるために、大規模なファイルの切捨てを行うかどうかを指定します。OFFの場合、自動診断収集でのトレース・ファイルの切捨ては発生しません。

- Repository current size in MB: リポジトリの現在の使用量です。

- Repository maximum size in MB: リポジトリ内の記憶領域の最大サイズです。最初、最大サイズは、10GBまたは使用可能なファイルシステム領域の50%のいずれか小さい方に設定されています。

- Trace Level: デフォルトは1で、値を2、3および4にすると詳細度が高まります。トレース・レベルは実行中のTFAデーモンに対して動的に設定できますが、トレース・レベルを上げるとTFAのパフォーマンスに大幅に影響するため、My Oracle Supportからリクエストがあった場合にのみ行います。

tfactl purge

tfactl purgeコマンドを使用して、TFAリポジトリから特定の時間より古い診断収集を削除します。

構文

tfactl purge -older number[h | d]

数値の後にhまたはd(それぞれ、時間数と日数)を指定して、特定の時間制約より古いファイルを削除します。次に例を示します。

# tfactl purge -older 30d

前述のコマンドでは、30日間より古いファイルが削除されます。

tfactl directory

tfactl directoryコマンドを使用して、分析されたトレース・ファイルまたはログ・ファイルを格納するディレクトリの一覧にディレクトリを追加したり、一覧からディレクトリを削除できます。また、このコマンドを使用して、ディレクトリ権限を変更できます。自動検出によってディレクトリが追加されるとパブリックとして追加され、そのディレクトリ内のすべてのファイルは、tfactl diagcollectコマンドを実行する権限を持つすべてのユーザーによって収集可能になります。これは、ユーザーにroot以外にsudoによってTFACTLコマンドを実行する権限を与えている場合に重要です。ディレクトリがプライベートとマークされている場合、TFAはTFACTLコマンドを実行しているユーザーを判別し、ユーザーにディレクトリ内のファイルを参照する権限があるか検証してから、ファイルの収集を許可します。

注意:
ユーザーがTFAに追加できるのは読取り権限を持つディレクトリのみで、また、TFAの自動収集は(設定されている場合)rootとして実行されるため、常に、使用可能なすべてのファイルを収集できます。

構文

tfactl directory [add directory | remove directory | modify directory -private | -public]

パラメータ

表H-12 tfactl directoryコマンドのパラメータ

パラメータ

説明

add directory

特定のディレクトリを追加します

remove directory

特定のディレクトリを削除します

modify directory
-private | -public

特定のディレクトリをプライベートまたはパブリックに変更して、情報の収集を、特定のオペレーティング・システム権限を持つユーザーにのみ許可したり(-private)、tfactl diagcollectionコマンドを実行する権限をもつすべてのユーザーに許可できます(-public)

使用上の注意

Berkeleyデータベースにすべてのトレース・ディレクトリ名を追加し、TFAがそのディレクトリ内のファイル・メタデータを収集できるようにする必要があります。検出プロセスでは、ほとんどのディレクトリが検出されますが、新しいまたは未検出のディレクトリが必要な場合tfactl directoryコマンドを使用して、手動でこれらのファイルを追加できます。TFACTLを使用してディレクトリを追加する場合、TFAは、ディレクトリの対象がデータベース、Oracle Clusterware、オペレーティング・システム・ログまたはその他のコンポーネントのどれか、および対象がデータベースかインスタンスかを判別しようと試みます。TFAがこの情報を判別できない場合、エラーが戻され、次のような情報を入力するように求められます。

# tfactl directory add /tmp

Failed to add directory to TFA. Unable to determine parameters for directory: /tmp
Please enter component for this Directory [RDBMS|CRS|ASM|INSTALL|OS|CFGTOOLS] : RDBMS
Please enter database name for this Directory :MYDB
Please enter instance name for this Directory :MYDB1

tfactl host

tfactl hostコマンドを使用して、TFAクラスタにホストを追加したり、TFAクラスタからホストを削除できます。

構文

tfactl host [add host_name | remove host_name]

次の例に示すように、追加または削除するホスト名を指定します。

# tfactl host add myhost.domain.com

使用上の注意

tfactl host addコマンドでは、ネットワーク上のその他のノードがローカルTFAに通知されます。ホストが追加されると、TFAはそのホストに接続し、そのホスト上でTFAが実行中の場合、両方のホストでホスト・リストが同期されます。TFAは、Cookieを使用してホストの追加を認証します。追加するホストが正しいCookieを持たない場合、クラスタ内の既存のホストからCookieを取得し、次の例に示すように、追加するホストに設定する必要があります。

#tfactl host add node2

Failed to add host: node2 as the TFA cookies do not match.
To add the host successfully, try the following steps:
1. Get the cookie in node1 using:
./tfa_home/bin/tfactl print cookie
2. Set the cookie from Step 1 in node2 using:
./tfa_home/bin/tfactl set cookie=<COOKIE>
3. After Step 2, add host again:
./tfa_home/bin/tfactl host add node2

ホストが正常に追加されると、Berkeleyデータベースに登録されているすべてのノードでクラスタ全体のコマンドがアクティブになります。

tfactl set

tfactl setコマンドを使用して、TFAの実行方法を調整できます。

構文

tfactl set [autodiagcollect=ON | OFF | cookie=Xn | trimfiles=ON | OFF |
tracelevel=1 | 2 | 3 | 4 | reposizeMB=number | repositorydir=directory] [-c]

パラメータ

表H-13 tfactl setコマンドのパラメータ

パラメータ

説明

autodiagcollect=ON | OFF

OFFの場合(デフォルト)、自動診断収集は無効になります。ONに設定すると、アラート・ログのスキャン中に特定のパターンが発生した場合、TFAが自動的に診断を収集します。

TFAクラスタのすべてのノードに対して自動収集を設定するには、-cパラメータを指定する必要があります。

cookie=UID

tfactl print cookieコマンドを使用して、Cookieの識別を生成できます。

trimfiles=ON | OFF

ONに設定されている場合、スキャンの一部として診断収集を行うときに、TFAは関連データのみを含むようにファイルの切捨てを行います。

注意: tfactl diagcollectを使用する場合、このコマンドにパラメータを指定して、切捨てに対して時間範囲を指定する必要があります。切捨てされていないデータは非常に大きくなるため、このパラメータをOFFにしないことをお薦めします。

tracelevel=1 | 2 | 3 | 4

My Oracle Supportで指示されないかぎり、トレース・レベルは変更しないでください。

-c

このパラメータを指定して、設定をTFA構成内のすべてのノードに伝播します。

自動診断収集

TFAが最初にトレース・ファイル・メタデータを収集した後、特定の文字列が発生した場合に処理できるように、デーモンはtailを使用して、アラート・ログと判別されるすべてのファイルを監視します。

デフォルトでは、これらのログは、データベース・アラート・ログ、Oracle ASMアラート・ログおよびOracle Clusterwareアラート・ログです。Berkeleyデータベースに保存されているログ内で特定のパターンが発生した場合、自動診断収集が実行されます。

実際に収集されるものは、一致するパターンによって異なります。TFAは、一致するパターンの情報の格納のみを行う場合や、ローカルの診断収集を開始する場合があります。TFAは、ログを常に監視しデータベースに情報を収集しますが、自動診断収集は、最初にtfactl setコマンドを使用して有効にした場合のみ発生します。

tfactl diagcollect

tfactl diagcollectコマンドを使用して、オンデマンドの診断収集を実行できます。いくつかの異なるパラメータを設定して、収集の大きさや詳細度を指定できます。収集するデータに対して、あるインシデントの特定の時刻を指定したり、時間範囲を指定して、関連データを含むファイル全体を収集するか、それらのファイルの中からある時間間隔のデータのみを収集するかを決定できます。

注意:
パラメータを指定しない場合、tfactl diagcollectコマンドは、最近4時間にファイルが更新されたすべてのコンポーネントのすべてのノードからファイルが収集され、過剰なファイルは切捨てられます。この期間より前にインシデントが発生した場合、正しいデータ収集のためにこの項で説明するパラメータを使用してください。

構文

tfactl diagcollect [-all | -database all | database_1,database_2,... | -asm | -crs | -os | -install]
[-node all | local | node_1,node_2,...][-tag description] [-z file_name]
[-since numberh | d | -from "mmm/dd/yyyy hh:mm:ss" -to "mmm/dd/yyyy hh:mm:ss"
| -for "mmm/dd/yyyy hh:mm:ss" [-nocopy] [-nomonitor]]

パラメータ

表H-14 tfactl diagcollectコマンドのパラメータ

パラメータ

説明

-all | -database all
| database_1,database_2,...
| -asm | -crs | -os |
-install

トレース・ファイルまたはログ・ファイルを収集する1つ以上の個別のコンポーネントを選択するか、-allを選択して、インベントリ内のすべてのファイルを収集できます。時間間隔を指定しない場合、TFACTLは最近4時間のファイルを収集します。

-node all | local | node_1,node_2,...

診断情報を収集するカンマ区切りのノード・リストを指定できます。デフォルト値はallです。

-tag description

このパラメータを使用すると、TFAリポジトリ内の収集に対してサブディレクトリを作成できます。

-z file_name

このパラメータを使用すると、出力ファイル名を指定できます。

-since numberh | d |
-from "mmm/dd/yyyy hh:mm:ss"
-to "mmm/dd/yyyy hh:mm:ss" |
-for "mmm/dd/yyyy hh:mm:ss"

- -sinceパラメータを指定すると、過去の特定の時間数(h)または日数(d)の関連データを含むファイルを収集します。デフォルトでは、このパラメータを指定してコマンドを実行すると、大きなファイルは切捨てされ、特定の間隔のファイルのみが表示されます。

- -fromおよび-toパラメータを指定して(この2つのパラメータは両方指定する必要があります)、特定の時間間隔中の関連データを含むファイルを収集し、ファイルが大きい場合、この時刻より前のデータが切捨てられます。

- -forパラメータを指定して、指定した時刻の関連データを含むファイルを収集できます。TFACTLによって収集されるファイルには、-forの後に指定した時刻までの間のタイムスタンプが含まれます。このオプションでは、データの切捨ては行われません。

注意: 日付と時刻の両方を指定する場合、両方の値を二重引用符("")で囲む必要があります。日付のみまたは時刻のみを指定する場合、単一の値を引用符で囲む必要はありません。

-nocopy

このパラメータを使用すると、トレース・ファイルの収集が開始ノードにコピーされません。ファイルは、TFAリポジトリ内の実行ノードに残ります。

-nomonitor

このパラメータを使用すると、コマンドを実行する端末にコマンドの進捗状況が表示されません。

例

- 次のコマンドでは、クラスタ全体の最近4時間に更新されたすべてのファイル(chmosおよびoswデータを含む)が切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect

- 次のコマンドでは、クラスタ全体の最近8時間に更新されたすべてのファイル(chmosおよびoswデータを含む)が切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect –all –since 8h

- 次のコマンドでは、データベース(hrdbおよびfdb)の過去1日間に更新されたすべてのファイルが切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect -database hrdb,fdb -since 1d -z foo

- 次のコマンドでは、node1およびnode2の最近6時間に更新されたすべてのOracle Clusterwareファイル、オペレーティング・システム・ログおよびchmos、oswデータが切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect –crs -os -node node1,node2 -since 6h

- 次のコマンドでは、2013年7月4日の2013年7月5日の午後9時に更新されたnode1のすべてのOracle ASMログが切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect -asm -node node1 -from Jul/4/2013 -to "Jul/5/2013 21:00:00"

- 次のコマンドでは、2013年7月2日に更新されたすべてのログ・ファイルが切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect -for Jul/2/2013

- 次のコマンドでは、2013年7月2日午前9時から2013年7月3日午前9時の間(コマンドに指定した時刻の前後12時間)に更新されたすべてのログ・ファイルが切捨ておよび圧縮され、開始ノードに収集されます。

# tfactl diagcollect -for "Jul/2/2013 21:00:00"

TFAでのデータ・リダクション

ファイル内のデータまたはファイル名のパスを置換して、機密データを非表示にできます。この機能を使用するには、redaction.xmlというファイルをtfa_home/resourcesディレクトリに置きます。TFAはredaction.xmlファイルに含まれるデータを使用して、ファイル名および内容の文字列を置換します。redaction.xmlファイルの書式は次のとおりです。

<replacements>
<replace>
<before>securestring</before>
<after>nonsecurestring</after>
</replace>
<replace>
<before>securestring2</before>
<after>nonsecurestring2</after>
</replace>
Etc…
</replacements>

診断収集スクリプト

Oracle Clusterwareでエラーが発生するたびに、diagcollection.plスクリプトを実行して、Oracle Clusterwareからトレース・ファイルに診断情報を収集します。診断によって、My Oracle Supportが問題を解決するための追加情報を取得できます。このスクリプトは次の場所から実行します。

Grid_home/bin/diagcollection.pl

注意:
このスクリプトは、rootユーザーで実行する必要があります。

Oracle Clusterwareアラート

Oracle Clusterwareは、重要なイベントが発生すると、アラート・メッセージを発行します。CRSDプロセスのアラートの例を次に示します。

2009-07-16 00:27:22.074
[ctssd(12817)]CRS-2403:The Cluster Time Synchronization Service on host stnsp014 is in observer mode.
2009-07-16 00:27:22.146
[ctssd(12817)]CRS-2407:The new Cluster Time Synchronization Service reference node is host stnsp013.
2009-07-16 00:27:22.753
[ctssd(12817)]CRS-2401:The Cluster Time Synchronization Service started on host stnsp014.
2009-07-16 00:27:43.754
[crsd(12975)]CRS-1012:The OCR service started on node stnsp014.
2009-07-16 00:27:46.339
[crsd(12975)]CRS-1201:CRSD started on node stnsp014.

Linux、UNIXおよびWindowsシステム上でのこのアラート・ログの場所は、Grid_home/log/host_nameです。Grid_homeは、Oracle Grid Infrastructureがインストールされている場所の名前を示します。

次に、クラスタ再構成後のOracleクラスタ時刻同期化サービス(OCTSS)の起動例を示します。

[ctssd(12813)]CRS-2403:The Cluster Time Synchronization Service on host stnsp014 is in observer mode.
2009-07-15 23:51:18.292
[ctssd(12813)]CRS-2407:The new Cluster Time Synchronization Service reference node is host stnsp013.
2009-07-15 23:51:18.961
[ctssd(12813)]CRS-2401:The Cluster Time Synchronization Service started on host stnsp014.

Diagnostic Record Unique IDを使用したアラート・メッセージ

Oracle Database 11gリリース2(11.2)以降では、特定のOracle Clusterwareメッセージに、「(:」および「:)」で囲まれたテキスト識別子が含まれます。通常、この識別子は「Details in...」で始まるメッセージ・テキストの一部で、次の例のようなOracle Clusterware診断ログ・ファイルのパスおよび名前が含まれます。この識別子はDRUID(Diagnostic Record Unique ID)と呼ばれます。

2009-07-16 00:18:44.472
[/scratch/11.2/grid/bin/orarootagent.bin(13098)]CRS-5822:Agent '/scratch/11.2/grid/bin/orarootagent_root' disconnected from server. Details at (:CRSAGF00117:) in /scratch/11.2/grid/log/stnsp014/agent/crsd/orarootagent_root/orarootagent_root.log.

DRUIDは、外部製品のメッセージを、診断ログ・ファイルのエントリおよび内部Oracle Clusterwareプログラム・コードの場所に関連付けるために使用されます。これらはユーザーには直接関係ありませんが、主に、問題を診断するときにMy Oracle Supportによって使用されます。

注意:
Oracle Clusterwareでは、ログ・ファイルにファイル・ローテーション方式が使用されます。アラート・ファイル・メッセージの「Details in」セクションで指定されているファイルで指定された参照先が見つからない場合、このファイルは、通常は*.lnumberで終了するロールオーバー・バージョンにロールオーバーされた可能性があります(numberは01から始まる数字で、保持されているログの数まで増分し、数の合計は、ログによって異なります)。通常、My Oracle Supportから指示されないかぎり、参照先をたどる必要はありませんが、ファイルのロールオーバー・バージョンのパスは確認することができます。ただし、ログの保存ポリシーによって、生成されたログの量に応じて古いログがパージされることになっています。

用語集

アクション・スクリプト

リソースのstart、stop、stopおよびcheckアクションを定義するスクリプト。startアクションはリソースの起動中に起動され、stopアクションはリソースを停止するために起動され、checkアクションはリソースの動作ステータスのチェック中に起動されます。

管理者管理型

データベース・リソースを実行するサーバーをデータベース管理者が定義し、必要に応じてリソースを手動で配置します。これは、以前のリリースで使用されていた管理方法です。

可用性ディレクティブ

クラスタに対してサーバーが削除または追加された際にシステムを再構成するためのOracle Clusterwareに対する指示。

カーディナリティ

リソースを同時に実行できるサーバーの数。

クラスタ

エンド・ユーザーおよびアプリケーションからは1つのサーバーとして認識される、相互に接続された複数のコンピュータまたはサーバー。

クラスタ対応

クラスタウェアを使用してデプロイされるように設計されたアプリケーション。

クラスタ・リソース

クラスタ環境を認識し、ノード間のスイッチオーバーとフェイルオーバーの対象となるリソース。

クラスタ時刻同期化サービス

クラスタ内のすべてのノードの内部クロックがすべて同期化されるようにする時刻同期メカニズム。

クラスタ検証ユーティリティ(CVU)

共有ストレージ・デバイス、ネットワーク構成、システム要件、Oracle Clusterware、グループ、ユーザーなどのOracle RACの様々なコンポーネントを検証するツール。

CRS管理者

サーバー・プールの制御を目的とした事前定義済Oracle Clusterware管理者ロール。永続的なCRS管理者は、グリッド・インフラストラクチャ・ホームにOracle Clusterwareをインストールしたユーザー(グリッド・ユーザー)またはシステム・スーパーユーザー(LinuxおよびUNIXではroot、Windowsでは管理者)のいずれかです。

依存性

2つ以上のリソース間の関係、およびそれらの間で示される相互作用。

ディスク・グループ

Oracle ASMディスクは、Oracle ASMで1つの単位として管理されるディスクの集合です。ディスク・グループ内では、Oracle Databaseファイルのファイルシステム・インタフェースがOracle ASMにより公開されます。ディスク・グループ内に保存されたファイルの内容は、均等に分散されるか、またはストライプ化されるため、ホット・スポットがなくなり、ディスク間のパフォーマンスが均一になります。必要に応じて、ディスク・グループ内でOracle ASMファイルをミラー化することもできます。ディスク・グループ内のディスクのパフォーマンスは、RAWデバイスのパフォーマンスと同程度です。

グリッド・インフラストラクチャ

エンタープライズ・グリッド・アーキテクチャ用のインフラストラクチャを提供するソフトウェア。クラスタの場合、このソフトウェアにはOracle Clusterwareと Oracle ASM が含まれます。スタンドアロン・サーバーの場合、このソフトウェアにはOracle RestartとOracle ASMが含まれます。Oracle Database 11gリリース2(11.2)では、これらのインフラストラクチャ製品がグリッド・インフラストラクチャ・ホーム(Grid_home)と呼ばれる1つのソフトウェア・インストールの中に結合されています。

fixupスクリプト

インストールの最小要件を満たしていない場合はOracle Universal Installerによって検知され、要件を満たしていないシステム構成の多くを解決するために、修正スクリプトと呼ばれるシェル・スクリプト・プログラムが作成されます。Oracle Universal Installerは不完全なタスクを検出すると、修正スクリプトを作成してから別のターミナル・セッションで修正スクリプトを実行するように求めます。特定のCVUコマンドで-fixupフラグを使用して、修正スクリプトを生成することもできます。

ローカル・リソース

クラスタのノード上で実行され、ノードの範囲外のものは認識しないリソース。

OCRライター

また、各crsdプロセスもOCRサーバーとして機能します。クラスタのcrsdプロセスの1つに、ディスク・グループまたはファイル、あるいはブロックまたはRAWデバイス対してI/Oを実行するOCRサーバーがあります。

Oracle Automatic Storage Management (Oracle ASM)

Oracle ASMはOracle ClusterwareおよびOracle RACで使用される記憶域ディスクをディスク・グループ内で管理します。デフォルトでは、Oracle ClusterwareはOracle ASMを使用してOCRおよび投票ディスクを格納します。

Oracle Cluster Registry (OCR)

クラスタ・ノード・リストに関する情報およびインスタンスからノードへのマッピング情報を管理するOracle RAC構成情報のリポジトリ。OCRは、カスタマイズされたアプリケーション用のOracle Clusterwareリソース・プロファイルに関する情報も管理します。

Oracle Clusterware

接続されたサーバーのグループ(クラスタ)が動作すること、または1つの単位として制御されることを可能にするソフトウェア。

Oracle Clusterwareスタック

Oracle Clusterwareスタックには、Oracle Clusterware、イベント・マネージャ、クラスタ同期サービスおよびOracle ASM(使用する場合)が含まれます。

ポリシー管理型

データベース管理者は、データベース・リソースを実行するサーバー・プール(汎用および空きを除く)を指定します。Oracle Clusterwareによって、データベース・リソースがサーバーに配置されます。

リソース

Oracle Clusterwareによって管理されるデータベース、アプリケーションまたはプロセス。

リソースの状態

特定の時間の特定のリソースの状態。これによってクラスタの可用性を確認します。

リソース・タイプ

リソースがクラスタ・リソースまたはローカル・リソースのいずれであるかを定義します。

サーバー・プール

アプリケーション、データベースまたはその両方をホスティングするグループに論理的に分割されているクラスタ内のサーバー。

単一クライアント・アクセス名(SCAN)

パブリック・ネットワークで3つのIPアドレスに解決される1つの名前。

起動試行の評価

Oracle Clusterwareがリソースを起動するときに実行する処理。この処理の間、Oracle Clusterwareはリソースのプロファイルに含まれるリソースの依存性を考慮します。

状態

特定のリソースの状態を示す一連の値。

索引
A B C D E F G H I L M N O P R S T U V W

A

ACL

リソース属性, B

アクション・エントリ・ポイント

定義, 6.2

アクション・スクリプト, 6.1.4 アクション・スクリプト

アクション, 6.2

ACTION_FAILURE_EVENT_TEMPLATE

リソース属性, B

ACTION_SCRIPT

リソース属性, B

ACTIVE_PLACEMENT

リソース属性, B

アドレス,手動構成, 1.2.4.3 管理ツール

概要および概念, 1.6

エージェント

定義, 6.1.3

エージェント・フレームワーク

定義, 6.1.3

AGENT_FILENAME

リソース属性, B

エージェント

appagent, 6.1.1

appagent.exe, 6.1.1

scriptagent, 6.1.1

scriptagent.exe, 6.1.1

アラート・メッセージ

CRSD, H.6

ログ・ファイルの場所, H.6

アプリケーション・エージェント, 6.1.1 アプリケーションVIP

作成, 6.3.1

削除, 6.3.1

アプリケーション

VIPアドレスの定義, 1.8

高可用性, 1.8

CLSCRSコマンドを使用した管理, F

attraction起動依存性, 6.2.3.1

修飾子, B

AUTO_START

リソース属性, B

B

バックグラウンド・プロセス, 1.3.1

Baseboard Management Controller(BMC)

「Intelligent Platform Management Interface(IPMI)」を参照

ブロック単位のチェックサム操作, G

C

キャッシュ・フュージョン

通信, D

カーディナリティ, はじめに CARDINALITY

リソース属性, B

ネットワーク・インタフェースの変更

ネットワーク・インタフェース

変更, 2.6.4.4

インタフェース名の変更, 結果, 2.6.4.3 VIPアドレスの変更, 2.6.3 CHECK_INTERVAL

リソース属性, B

チェックサム操作

ブロック単位, G

CHM

「クラスタ状態モニター(CHM)」を参照

クライアント側の診断インフラストラクチャ(CRSD)

アラート, H.6

クローニング

Oracle Clusterware, 5

Oracle Grid Infrastructure, 5

クローニング, クラスタウェアの概要, 1.7 CLSCRS API

コールバック・メカニズム, F

データ構造, F

非推奨, F

エラーの処理およびトレース, F

フィルタ, F

比較フィルタ, F

式フィルタ, F

初期化および永続性, F メモリー管理, F 概要, F スレッドのサポート, F CLSCRSコマンド

概要, F

CLSD-1009メッセージ

解決, 3.1.2.5

CLSD-1011メッセージ

解決, 3.1.2.5

クラスタ状態モニター(CHM), 1.6

デーモン, H.1.1.1

ログ・ファイル, H.2

OCLUMON, H.1.2

サービス

クラスタ・ログ出力, H.1.1.1

システム監視, H.1.1.1

クラスタ状態モニター(crf)

デバッグ, E

クラスタ・インターコネクト

キャッシュ・フュージョン通信, D

プライベート・ネットワーク・アドレスの変更, 2.6.4.1

Cluster Manager(CSS)

ログ・ファイル, H.2

クラスタ・レディ・サービス(crs)

デバッグ, E

クラスタ・レディ・サービス(CRS)

定義, 1.3.1.1

クラスタ・レディ・サービス・デーモン

ログ・ファイル, H.2

クラスタ・リソース, 6.1.2 クラスタ記憶域

OCRによる記録, 1.2.3

クラスタ同期サービス(css)

デバッグ, E

クラスタ同期サービス(CSS), 1.3.1.1

定義, 1.3.1.1

クラスタの時間管理, 2.5 クラスタ時刻同期化サービス(ctss)

デバッグ, E

クラスタ時刻同期化サービス(CTSS), 2.5 クラスタ検証ユーティリティ(CVU)

ログ・ファイル, H.2

「CVU」を参照

CLUSTER_INTERCONNECTインタフェース

OIFCFGによる指定, D

CLUSTER_INTERCONNECTS初期化パラメータ, 2.6.4.4 cluster_resource, 6.1.2 クラスタ対応リソース, 6.1.2 クラスタウェア,クローニングの概要, 1.7 cluvfy

「CVU」を参照

互換性

Oracle Clusterware, Oracle ASMおよびデータベース, 1.4.1

コンポーネントのパラメータ

CRSCTLコマンドへの指定, E

component_nameパラメータ

crsctl set traceコマンドへの指定, E

コンポーネント

デバッグのための初期化ファイル, E

構成

OCRの再初期化, 3.1.6

構成

投票ディスク, 3

CRS

「クラスタ・レディ・サービス(CRS)」を参照

CRS管理者, 2.2.1

管理, 2.2.2

CRSCTL

Oracle Clusterwareステータスの確認, 3.1.2.3

コマンド・リファレンス, E

コマンド

add crs administrator, E

add css votedisk, E

add resource, E

add serverpool, E

add type, E

check cluster, E

check crs, E

check css, E

check ctss, E

check evm, E

check has, E

check resource, E

config crs, E

config has, E

delete crs administrator, E

delete css votedisk, E

delete node, E

delete resource, E

delete serverpool, E

delete type, E

disable crs, E

disable has, E

discover dhcp, E

enable crs, E

enable has, E

get clientid dhcp, E

get css, E

get css ipmiaddr, E

get hostname, E

get nodename, E

getperm resource, E

getperm serverpool, E

getperm type, E

lsmodules, E

modify resource, E

modify serverpool, E

modify type, E

pin css, E

query crs activeversion, E

query crs administrator, E

query crs releaseversion, E

query crs softwareversion, E

query css ipmiconfig, E

query css ipmidevice, E

query css votedisk, E

query dns, E

query has releaseversion, E

query has softwareversion, E

release dhcp, E

relocate resource, E

relocate server, E

replace discoverystring, E

replace votedisk, E

request dhcp, E

set css, E

set css ipmiaddr, E

set css ipmiadmin, E

set log, E

setperm resource, E

setperm serverpool, E

setperm type, E

start cluster, E

start crs, E

start has, E

start ip, E

start testdns, E

status ip, E

status resource, E, E

status server, E

status serverpool, E

status testdns, E

status type, E

stop cluster, E

stop crs, E

stop has, E

stop ip, E

stop resource, E

stop testdns, E

unpin css, E

unset css, E

unset css ipmiconfig, E

デュアル環境のコマンド, E Oracle RAC環境のコマンド, E Oracle Restart環境のコマンド, E CRSCTLコマンド

クラスタ対応, 1.6

コンポーネントのパラメータ, E

component_nameパラメータ, E

デバッグ・ログ, E

debugging_levelパラメータ, E, E

lsmodules, E

module_nameパラメータ, E

概要, 1.6

resource_nameパラメータ, E

set log, E

set trace, E

tracing_levelパラメータ, E

crsctl set log, E crsctl set trace, E crsdバックグラウンド・プロセス

アラート・メッセージ, H.6

ログ・ファイル, H.2

CSS

「クラスタ同期サービス(CSS)」を参照

cssd

ログ・ファイル, H.2

CVU

概要, A

コマンド

cluvfy comp acfs, A

cluvfy comp admprv, A

cluvfy comp asm, A

cluvfy comp cfs, A

cluvfy comp clocksync, A

cluvfy comp clu, A

cluvfy comp clumgr, A

cluvfy comp crs, A

cluvfy comp dns, A

cluvfy comp freespace, A

cluvfy comp gns, A

cluvfy comp gpnp, A

cluvfy comp ha, A

cluvfy comp healthcheck, A

cluvfy comp nodeapp, A

cluvfy comp nodecon, 2.6.3, A

cluvfy comp nodereach, A

cluvfy comp ocr, A

cluvfy comp ohasd, A

cluvfy comp olr, A

cluvfy comp peer, A

cluvfy comp scan, A

cluvfy comp software, A

cluvfy comp space, A

cluvfy comp ssa, A

cluvfy comp sys, A

cluvfy comp vdisk, A

cluvfy stage -post acfscfg, A

cluvfy stage -post cfs, A

cluvfy stage -post crsinst, A

cluvfy stage -post hacfg, A

cluvfy stage -post hwos, A

cluvfy stage -post nodeadd, A

cluvfy stage -pre acfscfg, A

cluvfy stage -pre cfs, A

cluvfy stage -pre crsinst, A

cluvfy stage -pre dbcfg, A

cluvfy stage -pre dbinst, A

cluvfy stage -pre hacfg, A

cluvfy stage -pre nodeadd, A

コンポーネント検証

Oracle ClusterwareおよびOracle Databaseインストールのチェック, A

クラスタの整合性, A

Cluster Managerサブコンポーネント, A

クラスタ・ノード間の接続性, A

CTSSの整合性, A

ドメイン名サービス(DNS), A

空き領域, A

グリッド・プラグ・アンド・プレイ・サービスおよびプロファイル, A

高可用性の整合性A

OCRの整合性, A

ohasdの整合性, A

OLRの整合性, A

Oracle ACFSの整合性, A, A

Oracle ASMの整合性, A

投票ディスクの整合性, A

ノード・アプリケーション, A

ノードの比較, A

Oracle Clusterwareコンポーネント, A

Oracleグリッド・ネーミング・サービス(GNS) A

ノードの到達可能性, A

SCANの構成, A

ノードへのソフトウェア配布, A

記憶域, A

システム要件, A

ユーザーおよび権限, A

runcluvfy.shおよびcluvfy間の差異, A インストール要件, A 既知の問題, A ノード・リストのショートカット, A オンライン・ヘルプ, A 概要および概念, 1.6 検証の実行, A runcluvfy.sh, A ステージ検証

データベースの構成, A

高可用性インストール, A

すべてのノードのネットワークおよび記憶域, A

ノードのインストール, A

Oracle ACFS, A

Oracle ACFS構成, A

Oracle Clusterwareのインストール, A

Oracle RACのインストール, A

UNKNOWNの出力, A 冗長モード, A

D

デバッグ

CRS, CSSおよびEVMモジュール, E

Oracle Clusterwareリソース, E

debugging_levelパラメータ

CRSCTLコマンドへの指定, E, E

ネットワーク・インタフェースの定義

OIFCFGコマンドライン・インタフェース, D

DEGREE

リソース属性, B

delifコマンド

OIFCFGコマンドライン・インタフェース, D

デプロイメント・スキーム

決定, 6.3.2.1

DESCRIPTION

リソース属性, B

DEVICES

ノード・ビュー, H.1.2.2

diagcollection.plスクリプト, H.5 診断収集スクリプト, H.5 診断データ

diagcollection.plスクリプトによる収集, H.5

dispersion起動依存性, 6.2.3.1

修飾子, B

DNS, GNSおよびSCANのエントリの例, 1.2.4.2 動的ホスト構成プロトコル(DHCP), 1.2.4

E

ENABLED

リソース属性, B

Oracle Clusterwareリソースのデバッグの有効化, E CRS,CSSおよびEVMモジュールのデバッグの有効化, E Oracle Clusterwareコンポーネントのトレースの有効化, E エントリ・ポイント

ABORT, 6.1.3

CHECK, 6.1.3

CLSAGFW_FAILED状態, 6.1.3

CLSAGFW_ONLINE状態, 6.1.3

CLSAGFW_PARTIAL状態, 6.1.3

CLSAGFW_PLANNED_OFFLINE状態, 6.1.3

CLSAGFW_UNKNOWN状態, 6.1.3

CLSAGFW_UNPLANNED_OFFLINE状態, 6.1.3

CLEAN, 6.1.3 定義, 6.1.3 監視, 6.1.3 START, 6.1.3 STOP, 6.1.3 イベント管理(EVM)

定義, 1.3.1.1

イベント・マネージャ(evm)

デバッグ, E

EVM

ログ・ファイル, H.2

概要, 1.3.1.1

「イベント・マネージャ(EVM)」を参照

Oracle Databaseホームの拡張

非共有ストレージ, 4.2.1

共有ストレージ

ネットワーク接続ストレージ, 4.2.1

Oracle ACFS, 4.2.1

F

障害グループ, 3.2.1

障害分離

IPMIの構成, 2.4.3.1

FAILURE_INTERVAL

リソース属性, B

FAILURE_THRESHOLD

リソース属性, B

高速アプリケーション通知(FAN), 1.3.1.1 機能, 新規, はじめに, はじめに FILESYSTEMS

ノード・ビュー, H.1.2.2

空きサーバー・プール, 2.1.3.1

説明, 2.1.3.2

G

汎用サーバー・プール

説明, 2.1.3.3

汎用サーバー・プール, 2.1.3.1 getifコマンド

OIFCFGコマンドライン・インタフェース, D

グローバル・インタフェース

格納されるネットワーク・インタフェース, D

GNS, 1.2.4

「Oracleグリッド・ネーミング・サービス(GNS)」を参照

GNSおよびSCAN, 1.2.4.2 GNS, GNS VIP, 1.2.4.1 グリッド・インフラストラクチャ

Oracle Clusterwareのクローニング, 5

構成ウィザード, 2.3

グリッド・プロセス間通信(gipc)

デバッグ, E

グリッド・プロセス間通信(GIPC), 1.3.1.2 グリッド・ネーミング・サービス, 1.2.4 グリッド・プラグ・アンド・プレイ, はじめに グリッド・プラグ・アンド・プレイ(gpnp)

デバッグ, E

グリッド・プラグ・アンド・プレイ(GPNPD), 1.3.1.2

H

HAIP

高可用性IPアドレス, 2.6.4.2

hard起動依存性, 6.2.3.1

修飾子, B

hard停止依存性, 6.2.3.2

修飾子, B

ハードウェア要件, 1.2.1 高可用性

Oracle Clusterware, 1.3.1.1

Application Programming Interface, 1.8

フレームワーク, 1.8

HOSTING_MEMBERS

リソース属性, B

I

iflistコマンド

OIFCFGコマンドライン・インタフェース, D

インポート

OCR, 3.1.6

初期化ファイル

コンポーネント・レベルのデバッグのための作成, E

初期化パラメータ

CLUSTER_INTERCONNECTS, 2.6.4.4

インストール

概要, 1.4

インストール

投票ディスクの構成, 3

Intelligent Management Platform Interface(IPMI), 2.4.1

障害分離のための構成, 2.4.3.1

IPMI構成の変更, 2.4.3.2

IPMI構成の削除, 2.4.3.3

Intelligent Platform Management Interface(IPMI)

CRSCTLコマンド

get css ipmiaddr, E

query css ipmiconfig, E

query css ipmidevice, E

set css ipmiaddr, E

set css ipmiadmin, E

unset css ipmiconfig, E

「インターコネクト」ページ

Oracle Enterprise Managerによるクラスタウェアの監視, H.1

インタフェース名, 変更の結果, 2.6.4.3 INTERNAL_STATE

リソース属性, B

IPMI

管理者の変更, E

IPアドレスの取得, E

IPアドレスの格納, E

「Intelligent Management Platform Interface(IPMI)」を参照

L

LAST_SERVER

リソース属性, B

LAST_STATE_CHANGE

リソース属性, B

リスナー

OCR, 1.2.3

LOAD

リソース属性, B

ローカル・リソース, 6.1.2 local_resource, 6.1.2 ログ・ファイル

クラスタ検証ユーティリティ(CVU), H.2

CSS, H.2

EVM, H.2

Oracle ACFS, H.2

Oracle Cluster Registry, H.2

ログ・レベル

Oracle Clusterwareの設定, E

lsmodulesパラメータ

CRSCTLコマンド, E

M

アプリケーションの管理

CLSCRSコマンド, F

Oracle Clusterwareの管理

CRSCTL, 1.6

アドレスの手動構成, 1.2.4.3 mDNS

「マルチキャスト・ドメイン名サービス(mDNS)」を参照

mDNSResponder

用途, 1.3.2

ミラー化

OCR(Oracle Cluster Registry), 3.1.2

module_nameパラメータ

CRSCTLコマンドへの指定, E

モジュール

デバッグ

crf, E

crs, E

css, E

ctss, E

evm, E

gipc, E

gpnp, E

マルチキャスト・ドメイン名サービス(mDNS)

定義, 1.3.1.2

N

NAME

リソース属性, B

ネットワーク・インタフェース

グローバル, D

ノード固有, D

OIFCFG構文, D

ネットワーク・インタフェース・カード(NIC), 2.6.4.1 ネットワーク・インタフェース

OIFCFGによる定義, D

タイプ, D

subnet分類の更新, D

新機能, はじめに, はじめに NICS

ノード・ビュー, H.1.2.2

ノード・ビュー

定義, H.1.2.2

ノード・ビュー

DEVICES, H.1.2.2

FILESYSTEMS, H.1.2.2

NICS, H.1.2.2

PROCESSES, H.1.2.2

PROTOCOL ERRORS, H.1.2.2

SYSTEMビュー, H.1.2.2

TOP CONSUMERS, H.1.2.2

ノード

クラスタへの追加

LinuxまたはUNIX, 4.2.1

Windows, 4.3, 4.3.1

クラスタからの削除

LinuxまたはUNIX, 4.2.2

VIPアドレス, 1.2.4 ノード固有のインタフェース

格納されるネットワーク・インタフェース, D

O

OCLUMON

コマンド

debug, H.1.2.1

dumpnodeview, H.1.2.2

manage, H.1.2.3

version, H.1.2.4

OCRコンフィギュレーション・ツール

「OCRCONFIGユーティリティ」を参照

OCR(Oracle Cluster Registry)

ログ・ファイル, H.2

OCR(Oracle Cluster Registry)

追加, 3.1.2, 3.1.2.1

自動バックアップ, 3.1.3

バックアップ, 3.1.3

コンテンツ, 3.1

OCRDUMPに関する問題の診断, 3.1.5

ダウングレード, 3.1.8

エクスポート, 3.1.6

インポート

Windowsシステム, 3.1.6.2

内容のインポート

LinuxおよびUNIXシステム, 3.1.6.1

ログ・ファイルの場所, H.2 管理, 3.1 手動バックアップ, 3.1.3 Oracle ASMからの移行, 3.1.1.1 Oracle ASMへの移行, 3.1.1 OCRDUMPユーティリティのコマンド例, G ocr.locファイル, 3.1.2 Oracle ASM, はじめに データ損失保護メカニズムの無効化, 3.1.2.5 クラスタ構成情報の記録, 1.1 クラスタ記憶域の記録, 1.2.3 削除, 3.1.2, 3.1.2.2 修復, 3.1.2, 3.1.2.4 置換, 3.1.2, 3.1.2.3 リストア, 3.1.4

Oracle Restart, 3.1.4

LinuxおよびUNIXシステム, 3.1.4

Windowsシステム, 3.1.4

自動的に生成されたOCRバックアップの使用, 3.1.4

トラブルシューティング, 3.1.5, G アップグレード、3.1.8 OCRDUMPの内容の表示, G OCRCHECKユーティリティ

ロギングの量の変更, G

OLRのステータスのチェック, 3.1.7

OCRの問題の診断, 3.1.5

ログ・ファイル, G

出力例, G

OCRCONFIGユーティリティ

OLRの管理, 3.1.7

コマンド

-add, G

-backuploc, G

-delete, G

-downgrade, G

-export, G

-import, 3.1.6.1, G

-manualbackup, G

-overwrite, G

-repair, G

-replace, G

-restore, G

-showbackup, G

-upgrade, G

ログ・ファイル, G 概要および概念, 1.6 構文, G OCRDUMPユーティリティ

ロギングの量の変更, G

コマンド例, G

コマンド, G

バックアップ, G

OCRの問題の診断, 3.1.5, G OLRの内容のダンプ, 3.1.7 ログ・ファイル, G 出力例, G 構文およびオプション, G SYSTEM.languageキーの出力, G SYSTEM.versionキーの出力, G ocr.locファイル, 3.1.2 ocrlog.iniファイル

編集, G, G

OFFLINE_CHECK_INTERVAL

リソース属性, B

OIFCFGコマンドライン・インタフェース

コマンド, D

インタフェース・タイプ, D, D

起動, D

概要および概念, 1.6, D

構文, D

OLR(Oracle Local Registry)

管理, 3.1.7

バックアップ, 3.1.7

ステータスのチェック, 3.1.7

定義, 3.1.7

内容のダンプ, 3.1.7

ファイルへのエクスポート, 3.1.7

ファイルのインポート, 3.1.7

リストア, 3.1.7

バックアップファイルの表示, 3.1.7

OCRDUMPの内容の表示, G

OLSNODESコマンド

参照, C

ONS

「Oracle Notification Service(ONS)」を参照

オペレーティング・システム

Oracle Clusterwareの要件, 1.1

oraagent

定義, 1.3.1.1

Oracle ACFS

定義, はじめに

ログ・ファイル, H.2

Oracle Agent, 1.3.1.1 Oracle ASM

ディスク・グループ

冗長性, 3.2.1

障害グループ, 3.2.1 OCRの場所の移行, 3.1.1 存在するOCR, はじめに Oracle Automatic Storage Management

「Oracle ASM」を参照

Oracle Automatic Storage Management クラスタ・ファイル・システム

「Oracle ACFS」を参照

Oracle Cluster Registry

「OCR(Oracle Cluster Registry)」を参照

Oracle Clusterware

新規ノードへのホームの追加, 4.2.1

バックグラウンド・プロセス

Windows, 1.3.2

デバッグ

コンポーネント・レベル, E

初期化ファイルの作成, E

動的, E

定義, 1.1 OCR

Oracle ASMからの移行, 3.1.1.1

Oracle ASMへの移行, 3.1.1

プロセス

クラスタ・レディ・サービス(CRS), 1.3.1.1

クラスタ同期サービス(CSS), 1.3.1.1

イベント・マネージメント(EVM), 1.3.1.1

グリッド・プロセス間通信(GIPC), 1.3.1.2

マルチキャスト・ドメイン名サービス(mDNS), 1.3.1.2

oraagent, 1.3.1.1

Oracleグリッド・ネーミング・サービス(GNS) 1.3.1.2

Oracle Notification Service(ONS), 1.3.1.1

orarootagent, 1.3.1.1

アップグレード

アウトオブプレース、1.5

Oracle Clusterware制御(CRSCTL)

「CRSCTL」を参照

Oracle Clusterwareホーム

追加, 4.2.1, 4.3.1

手動で削除, 4.2.2

Oracle Enterprise Manager

リソースの追加, 6.3.3

VIPの追加, 6.3.1

概要および概念, 1.6

「インターコネクト」ページを使用したOracle Clusterwareの監視, H.1

Oracle Grid Infrastructure

クローニング, 5

Oracleグリッド・ネーミング・サービス(GNS)

定義, 1.3.1.2

説明, 1.2.4

Oracle Interface Configurationツール

「OIFCFG」を参照

Oracle Local Registry

「OLR(Oracle Local Registry)」を参照

Oracle Notification Service(ONS)

定義, 1.3.1.1

Oracle RAC One Node, はじめに Oracle Real Application Clusters

管理の概要, 1

Oracle Real Application Clusters One Node, はじめに Oracle Restart

OCRのリストア, 3.1.4

Oracle Root Agent, 1.3.1.1 Oracleトレース・ファイル・アナライザ(TFA)コレクタ

「TFA」を参照

Oracle Universal Installer

Oracle Clusterwareのインストール, 1.4

OracleHAService

用途, 1.3.2

orarootagent

定義, 1.3.1.1

アウトオブプレース・アップグレード, 1.5

P

PLACEMENT

リソース属性, B

プライベート・ネットワーク・アドレス

変更, 2.6.4.1

PROCESSES

ノード・ビュー, H.1.2.2

PROFILE_CHANGE_EVENT_TEMPLATE

リソース属性, B

PROTOCOL ERRORS

ノード・ビュー, H.1.2.2

パブリック・インタフェース

OIFCFGによる指定, D

pullup起動依存性, 6.2.3.1

修飾子, B

R

クラスタ構成情報の記録, 1.1

ノード・メンバーシップ情報の記録

投票ディスク, 1.1

冗長性

投票ディスク, 1.2.3

冗長なインターコネクトの使用, 2.6.4.2 リソースの登録, 6.1.6 リソース属性

ACL, B

ACTION_FAILURE_EVENT_TEMPLATE, B

ACTION_SCRIPT, B

ACTIVE_PLACEMENT, B

AGENT_FILENAME, B

AUTO_START, B

CARDINALITY, B

CHECK_INTERVAL, B

DEGREE, B

DESCRIPTION, B

ENABLED, B

FAILURE_INTERVAL, B

FAILURE_THRESHOLD, B

HOSTING_MEMBERS, B

INTERNAL_STATE, B

LAST_SERVER, B

LAST_STATE_CHANGE, B

LOAD, B

NAME, B

OFFLINE_CHECK_INTERVAL, B

PLACEMENT, B

PROFILE_CHANGE_EVENT_TEMPLATE, B

RESTART_ATTEMPTS, B

RESTART_COUNT, B

SCRIPT_TIMEOUT, B

SERVER_POOLS, B

START_DEPENDENCIES, B

START_TIMEOUT, B

STATE_CHANGE_EVENT_TEMPLATE, B

STATE_DETAILS, B

STOP_DEPENDENCIES, B

STOP_TIMEOUT, B

TARGET, B

TYPE, B

UPTIME_THRESHOLD, B

リソース依存性

定義, 6.2.3

起動依存性, 6.2.3.1

attraction, 6.2.3.1, B

dispersion, 6.2.3.1, B

hard, 6.2.3.1, B

pullup, 6.2.3.1, B

weak, 6.2.3.1, B

停止依存性, 6.2.3.2

hard, 6.2.3.2, B

リソース権限

変更, 6.3.4

リソース・タイプ

cluster_resource, 6.1.2

定義, 6.1.2

local_resource, 6.1.2

resource_nameパラメータ

CRSCTLコマンドへの指定, E

リソース

追加, 6.3.2

Oracle Enterprise Manager, 6.3.3

定義, 6.1.1 Oracle Clusterwareに登録, 6.1.6 RESTART_ATTEMPTS

リソース属性, B

RESTART_COUNT

リソース属性, B

リストア

OCR, 3.1.6

ロール別管理, 2.2.1

CRS管理者, 2.2.1

水平実装, 2.2.1

垂直実装, 2.2.1

runcluvfy.sh, A

S

スケーラビリティ

ノードおよびインスタンスの追加, クイック・スタート形式, 4.2

SCRIPT_TIMEOUT

リソース属性, B

サーバー制御ユーティリティ(SRVCTL), 1.2.3

「SRVCTL」を参照

サーバー・プール

説明, 2.1.3.1

空き, 2.1.3.1

汎用, 2.1.3.1

SERVER_POOLS

リソース属性, B

サーバー中心のリソース, 6.1.2 サーバー

説明, 2.1.2

Oracle Clusterwareでの割当て方法, 2.1.4

Oracle Clusterwareの要件, 1.1

状態, 2.1.2

setifコマンド

OIFCFGコマンドライン・インタフェース, D

単一クライアント・アクセス名(SCAN), 1.2.4.2 時刻の同期化(Slew), 2.5 ソフトウェア要件, 1.2.3 SRVCTL

概要および概念, 1.6

srvctl stop nodeappsコマンド, 2.6.3 起動試行の評価

説明, 6.2.4

START_DEPENDENCIES

リソース属性, B

START_TIMEOUT

リソース属性, B

OIFCFGインタフェースの起動, D STATE_CHANGE_EVENT_TEMPLATE

リソース属性, B

STATE_DETAILS

リソース属性, B

時刻の同期化(Step), 2.5 STOP_DEPENDENCIES

リソース属性, B

STOP_TIMEOUT

リソース属性, B

サブネット

変更, 2.6.4.4

VIPアドレスの構成, 1.2.4

構文

OCRDUMPユーティリティ, G

SYSTEM

ノード・ビュー, H.1.2.2

SYSTEM.languageキー

出力, G

SYSTEM.versionキー

出力, G

T

TARGET

リソース属性, B

TFA, H.4

自動診断収集, H.4.2.5

データ・リダクション機能, H.4.3

オンデマンド診断収集, H.4.2.6

TFACTL

コマンド

tfactl diagcollect, H.4.2.6

tfactl directory, H.4.2.3

tfactl host, H.4.2.4

tfactl print, H.4.2.1

tfactl purge, H.4.2.2

tfactl set, H.4.2.5

TFAコマンドライン・ユーティリティ, H.4.2 スレッド・セーフティ, F TOP CONSUMERS

ノード・ビュー, H.1.2.2

トレース

Oracle Clusterwareの有効化, E

Oracle Clusterwareコンポーネントの有効化, E

Oracle Clusterwareコンポーネント, E

tracing_levelパラメータ

crsctl set traceコマンドへの指定, E

トラブルシューティング

OCR, G

TYPE

リソース属性, B

U

アップグレード

記憶域の移行, 3.1.1, 3.1.1.1

アウトオブプレース、1.5

アップグレード

SCAN, 2.6.3

UPTIME_THRESHOLD

リソース属性, B

V

バージョン

Oracle Clusterware, Oracle ASMおよびOracle Databaseソフトウェアの互換性, 1.4.1

VIP, 1.2.4, 6.3.1

追加

Oracle Enterprise Manager, 6.3.1

アドレス

変更, 2.6.3

アプリケーションの定義, 1.8

要件, 1.2.4

仮想インターネット・プロトコル・アドレス(VIP), 6.3.1 仮想IP

「VIP」を参照

投票ディスク, 1.2.3

追加, 3.2.4

Oracle ASM以外の記憶域への追加, 3.2.4

Oracle ASMへの追加, 3.2.4

管理, 3

バックアップ, 3.2.2

削除, 3.2.4, 3.2.4

ファイル・ユニバーサル識別子(FUID)

取得, 3.2.4, 3.2.4

管理, 3.2 移行, 3.2.4 Oracle ASMへの移行, 3.2.4, 3.2.4 Oracle ASMに格納されていない場合の変更, 3.2.4 Oracle ASMに格納されている場合の変更, 3.2.4 Oracle ASM, はじめに ASM以外の記憶域での置換, 3.2.4 リストア, 3.2.3 Oracle ASMに格納, 3.2.1

W

weak起動依存性, 6.2.3.1

修飾子, B

Windowsシステム

クラスタウェア用のサービス, 1.3.2, 1.3.2

オラクル社の法律上の注意点について

コピーライトについて

Copyright © 1994-2015, Oracle and/or its affiliates.All rights reserved.

商標と登録商標について

OracleおよびJavaはOracle Corporationおよびその関連企業の登録商標です。その他の名称は、それぞれの所有者の商標または登録商標です。

Intel、Intel Xeonは、Intel Corporationの商標または登録商標です。すべてのSPARCの商標はライセンスをもとに使用し、SPARC International, Inc.の商標または登録商標です。AMD、Opteron、AMDロゴ、AMD Opteronロゴは、Advanced Micro Devices, Inc.の商標または登録商標です。UNIXは、The Open Groupの登録商標です。

ライセンス制約の保証と結果的に生じる損害の免責

このソフトウェアおよび関連ドキュメントの使用と開示は、ライセンス契約の制約条件に従うものとし、知的財産に関する法律により保護されています。ライセンス契約で明示的に許諾されている場合もしくは法律によって認められている場合を除き、形式、手段に関係なく、いかなる部分も使用、複写、複製、翻訳、放送、修正、ライセンス供与、送信、配布、発表、実行、公開または表示することはできません。このソフトウェアのリバース・エンジニアリング、逆アセンブル、逆コンパイルは互換性のために法律によって規定されている場合を除き、禁止されています。

保証免責

ここに記載された情報は予告なしに変更される場合があります。また、誤りが無いことの保証はいたしかねます。誤りを見つけた場合は、オラクル社までご連絡ください。

制限付権利

このソフトウェアまたは関連ドキュメントを、米国政府機関もしくは米国政府機関に代わってこのソフトウェアまたは関連ドキュメントをライセンスされた者に提供する場合は、次の通知が適用されます。

U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are "commercial computer software" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations.As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs.No other rights are granted to the U.S. Government.

危険な用途への使用について

このソフトウェアもしくはハードウェアは様々な情報管理アプリケーションでの一般的な使用のために開発されたものです。このソフトウェアもしくはハードウェアは、危険が伴うアプリケーション（人的傷害を発生させる可能性があるアプリケーションを含む）への用途を目的として開発されていません。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用する際、安全に使用するために、適切な安全装置、バックアップ、冗長性（redundancy）、その他の対策を講じることは使用者の責任となります。このソフトウェアもしくはハードウェアを危険が伴うアプリケーションで使用したことに起因して損害が発生しても、オラクル社およびその関連会社は一切の責任を負いかねます。

第三者のコンテンツ、製品、サービスに対する免責事項

このソフトウェアまたはハードウェア、そしてドキュメントは、第三者のコンテンツ、製品、サービスへのアクセス、あるいはそれらに関する情報を提供することがあります。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスに関して一切の責任を負わず、いかなる保証もいたしません。オラクル社およびその関連会社は、第三者のコンテンツ、製品、サービスへのアクセスまたは使用によって損失、費用、あるいは損害が発生しても一切の責任を負いかねます。

ドラフトのアルファ版およびベータ版ドキュメントについて

このドキュメントが試作版の場合:

このドキュメントは試作版であり、デモおよび暫定使用のみを目的としたものです。このソフトウェアを使用するハードウェアに限定するものではありません。オラクル社およびその関連会社は、このドキュメントに関して一切の責任を負わず、いかなる保証もいたしません。また、このドキュメントを使用したことによって損失、費用、あるいは損害が発生しても、一切の責任を負いかねます。