Oracle Database 2日でReal Application Clustersガイド 11g リリース1(11.1) E05737-03 |
|
この章では、Oracle Clusterware環境の管理方法について説明します。ここでは、投票ディスクおよびOracle Cluster Registry(OCR)の管理方法について次の項で説明します。
Oracle Real Application Clusters(Oracle RAC)は、複数のノードを結び付けて単一のサーバーとして機能させるためのインフラストラクチャとしてOracle Clusterwareを使用します。Oracle Clusterwareは、Oracle Databaseに統合された移植性の高いクラスタ管理ソリューションです。Oracle RAC環境では、Oracle ClusterwareはすべてのOracleコンポーネント(インスタンスやリスナーなど)を監視します。障害が発生すると、障害の発生したコンポーネントの再起動を自動的に試行し、使用可能なコンポーネントに処理をリダイレクトします。
Oracle Clusterwareには、クラスタ上で実行されるアプリケーションを管理するための高可用性フレームワークが含まれています。Oracle Clusterwareでは、システムの起動時にアプリケーションが起動されるようにアプリケーションを管理します。また、アプリケーションが常に使用可能であるようにアプリケーションを監視します。たとえば、あるアプリケーション・プロセスで障害が発生した場合、Oracle Clusterwareでは、カスタマイズされたスクリプトに基づいてプロセスの再起動を試行します。クラスタ内のあるノードで障害が発生した場合は、障害が発生したノードで通常実行されるアプリケーション・プロセスがクラスタ内の別のノードで再起動されるようにプログラムできます。
Oracle Clusterwareには、投票ディスクとOCRという2つの重要なコンポーネントがあります。投票ディスクは、ノードのメンバーシップに関する情報を管理するファイルであり、OCRは、クラスタおよびOracle RACデータベースの構成情報を管理するファイルです。
Oracle Clusterwareのインストール・プロセス中に、投票ディスクとOCRが共有記憶域に作成されます。インストール・プロセス中に通常の冗長コピーのオプションを選択すると、Oracle Clusterwareによってこれらのファイルの冗長コピーが自動的に保持され、ファイルがシングル・ポイント障害となることを阻止します。また、通常の冗長性機能により、サード・パーティの記憶域冗長ソリューションが不要になります。通常の冗長性を使用すると、Oracle Clusterwareにより、OCRファイルのコピー2つと投票ディスク・ファイルのコピー3つが自動的に保持されます。
高可用性を備えた構成には、シングル・ポイント障害を回避することにより操作を維持する冗長なハードウェアとソフトウェアが含まれています。コンポーネントが停止した場合、Oracle Clusterwareは管理対象のリソースをバックアップ・コンポーネントにリダイレクトします。
投票ディスクには、ノードのメンバーシップ情報が記録されます。ノードは、過半数の投票ディスクに随時アクセスできる必要があります。複数の投票ディスクが同時に失われないようにするため、各投票ディスクは、他の投票ディスクに使用されるストレージ・デバイスとコンポーネント(コントローラやインターコネクトなど)を共有していないストレージ・デバイスに存在する必要があります。
たとえば、5つの投票ディスクが構成されている場合、ノードは常に3つ以上の投票ディスクにアクセス可能である必要があります。ノードは、必要最小限の数の投票ディスクにアクセスできない場合、クラスタから削除されます。障害の原因が修正されて、投票ディスクへのアクセスがリストアされた後、障害ノードをリカバリしてクラスタにリストアするようにOracle Clusterwareに指示できます。
ノードのメンバーシップ情報は通常は変更されないため、投票ディスクを毎日バックアップする必要はありません。ただし、次の状況では、投票ディスクをバックアップする必要があります。
投票ディスクのバックアップの作成にdd
コマンドを使用する場合、バックアップはクラスタ・レディ・サービス(CRS)・プロセスがアクティブなときに実行できます。投票ディスクのバックアップを取る前にcrsd.bin
プロセスを停止する必要はありません。
voting_disk_name
がアクティブな投票ディスクの名前であり、backup_file_name
が投票ディスクの内容のバックアップ先であるファイルの名前であり、次の例に示すようにLinuxのdd
コマンドを使用します。
dd if=voting_disk_name of=backup_file_name
必要に応じて、すべての投票ディスク上でこの操作を実行します。
voting_disk_name
にデバイス名を使用します。次に例を示します。
dd if=/dev/sdd1 of=/tmp/voting.dmp
投票ディスクが破損して、Oracle Clusterwareで使用不可能になった場合、バックアップ・ファイルがあれば投票ディスクをリカバリできます。
backup_file_name
は投票ディスクのバックアップ・ファイルの名前であり、voting_disk_name
はアクティブ投票ディスクの名前です。
dd if=backup_file_name of=voting_disk_name
Oracle RACのインストール後に、投票ディスクを動的に追加および削除できます。これを行うには、次のコマンドを使用します。path
には、追加する投票ディスクの完全修飾パスを指定します。
root
ユーザーで次のコマンドを実行します。
crsctl add css votedisk path
root
ユーザーで次のコマンドを実行します。
crsctl delete css votedisk path
Oracle Clusterwareでは、OCRのバックアップが4時間ごとに自動的に作成されます。4時間前、1日前、1週間前の3つの最新のOCRバックアップ・コピーが常に保持されます。
バックアップの頻度やOracle Clusterwareで保持されるファイルの数はカスタマイズできません。任意のバックアップ・ソフトウェアを使用すると、自動的に生成されたバックアップ・ファイルを、プライマリOCRファイルとは別のデバイスに1日に1回以上コピーできます。Red Hat Linuxシステムでバックアップが生成されるデフォルトの場所はCRS_home/cdata/
cluster_name
です。ここで、cluster_name
はクラスタの名前、CRS_homeはOracle Clusterwareがインストールされているホーム・ディレクトリです。
この項の内容は次のとおりです。
ocrconfig
ユーティリティを使用して、Oracle Clusterwareで自動的に生成されたバックアップを表示します。
OCR情報は重要であるため、ocrconfig
ユーティリティを使用して、自動的に作成されたバックアップ・ファイルのコピーを少なくとも1日に1回は作成することをお薦めします。
自動的に作成されたOCRバックアップ・ファイルを使用するのみでなく、環境のノードの追加や削除、Oracle Clusterwareリソースの変更、データベースの作成などの重要な構成変更を行う前と後には、OCRの内容をファイルにエクスポートする必要もあります。OCRの内容をファイルにエクスポートすると、構成変更によりエラーが発生した場合にOCRをリストアできます。たとえば、解決できない構成の問題がある場合や、構成の変更後にクラスタ・データベースを再起動できない場合は、保存したOCRの内容を有効な構成からインポートすることで構成をリストアできます。
root
ユーザーとしてログインします。
backup_file_name
の場合、次のコマンドを使用します。
[root]# ocrconfig -export backup_file_name
OCRのリカバリには2つの方法があります。第1の方法では自動的に生成されたOCRファイルのコピーを使用し、第2の方法では手動で作成したOCRのエクスポート・ファイルを使用します。
この項の内容は次のとおりです。
障害が発生した場合は、OCRのリストアを試行する前にOCRが使用不可能であることを確認します。
ocrcheck
「デバイス・ファイルの整合性チェックが成功しました」
というメッセージが表示されない場合は、元のOCRとミラー化されたOCRの両方に障害が発生しています。バックアップからOCRをリストアする必要があります。
自動的に生成されたバックアップからOCRをリストアする場合、まずリカバリに使用するバックアップ・ファイルを決定する必要があります。
root
ユーザーとしてログインします。
ocrconfig
コマンドを使用して、使用可能なOCRバックアップを特定します。
[root]# ocrconfig -showbackup
ocrdump
コマンドを使用して、バックアップの内容を確認します。ここで、file_name
はOCRバックアップ・ファイルの名前です。
[root]# ocrdump -backupfile file_name
root
ユーザーとして、次のコマンドを実行して、Oracle RACクラスタ内のすべてのノードでOracle Clusterwareを停止します。
[root]# crsctl stop crs
Oracle RACクラスタ内の各ノードで、このコマンドを繰り返し実行します。
root
ユーザーとして、手順1で特定したOCRバックアップ・ファイルを次のコマンドを使用して適用し、OCRをリストアします。ここで、file_name
はリストアするOCRの名前です。このコマンドを実行する前に、OCR構成に指定するOCRデバイスが存在すること、およびそれらのOCRデバイスが有効であることを確認してください。
[root]# ocrconfig -restore file_name
root
ユーザーとして、各ノードを再起動するか、または次のコマンドを実行して、クラスタ内のすべてのノードでOracle Clusterwareを再起動します。
[root]# crsctl start crs
Oracle RACクラスタ内の各ノードで、このコマンドを繰り返し実行します。
-n all
を指定すると、クラスタの一部として構成されているすべてのクラスタ・ノードのリストが取得されます。
[root]# cluvfy comp ocr -n all [-verbose]
ocrconfig -export
コマンドを使用してOCRのバックアップを作成すると、構成の変更によりエラーが発生した場合に、-import
オプションを使用してOCRをリストアできます。
ocrconfig -export
コマンドを使用して以前作成したOCRエクスポート・ファイルを配置します。
root
ユーザーとして、次のコマンドを実行して、Oracle RACクラスタ内のすべてのノードでOracle Clusterwareを停止します。
[root]# crsctl stop crs
Oracle RACクラスタ内の各ノードで、このコマンドを繰り返し実行します。
root
ユーザーとして次のコマンドを使用して、OCRエクスポート・ファイルの内容をインポートすることにより、OCRデータをリストアします。ここで、file_name
はOCRエクスポート・ファイルの名前です。
[root]# ocrconfig -import file_name
root
ユーザーとして、各ノードを再起動するか、または次のコマンドを実行して、クラスタ内のすべてのノードでOracle Clusterwareを再起動します。
[root]# crsctl start crs
Oracle RACクラスタ内の各ノードで、このコマンドを繰り返し実行します。
-n all
引数により、クラスタの一部として構成されているすべてのクラスタ・ノードのリストが取得されます。
[root]# cluvfy comp ocr -n all [-verbose]
この項では、OCRの管理方法について説明します。OCRには、クラスタ・ノード・リストに関する情報、どのインスタンスがどのノード上で実行中であるかという情報、Oracle Clusterwareによって管理されるように変更されたアプリケーションに対するOracle Clusterwareのリソース・プロファイルに関する情報が含まれます。
この項の内容は次のとおりです。
アップグレード後またはOracle RACのインストールの完了後は、OCRの場所を追加できます。すでにOCRのミラーがある場合は、OCRの場所を追加する必要はありません。OCRの通常の冗長性の構成時に2つのOCRがOracle Clusterwareによって自動的に管理されます。Oracle RAC環境では、プライマリOCRおよびセカンダリOCRの2つ以外のOCRはサポートしていません。
destination_file
またはdisk
のいずれかを使用してプライマリOCRのターゲットの場所を指定します。
ocrconfig -replace ocr destination_file ocrconfig -replace ocr disk
destination_file
またはdisk
のいずれかを使用してセカンダリOCRのターゲットの場所を指定します。
ocrconfig -replace ocrmirror destination_file ocrconfig -replace ocrmirror disk
既存のOCRの場所を変更、または障害の発生したOCRの場所を有効な場所に変更する必要がある場合、1つのOCRファイルがオンラインであれば、次の手順を使用できます。
ocrcheck
crsctl check crs
destination_file
またはdisk
でターゲットOCRの場所を指定して実行し、プライマリOCRを置換します。
ocrconfig -replace ocr destination_file ocrconfig -replace ocr disk
destination_file
またはdisk
でターゲットOCRの場所を指定して実行し、セカンダリOCRを置換します。
ocrconfig -replace ocrmirror destination_file ocrconfig -replace ocrmirror disk
ocrconfig -repair ocr [device_name]
あるノードが停止している間にOCR構成を変更した場合は、そのノードのOCR構成を修復する必要がある場合があります。たとえば、OCRの追加、置換または削除を行っているときに停止したノードでは、OCRを修復する必要がある場合があります。
ocrconfig -repair ocrmirror [device_name]
この操作では、このコマンドを実行したノードのOCR構成のみが変更されます。
たとえば、OCRミラーは/dev/raw1
という名前のディスク上に存在する場合、次のコマンドを使用してそのOCR構成を修復します。
ocrconfig -repair ocrmirror /dev/raw1
OCRの場所を削除するには、少なくとも1つのOCRがオンラインである必要があります。OCR関連のオーバーヘッドを削減するため、またはOCRのRedundant Array of Independent Disks(RAID)などの冗長ストレージ・システムへの移動によりOCRのミラー化を停止するため、OCRの場所を削除できます。
ocrcheck
ocrconfig -replace ocr
このコマンドを実行すると、Oracle Clusterwareが実行されているすべてのノードでOCR構成が更新されます。
この項には、Oracle Cluster Registry(OCR)のトラブルシューティングについての次の項が含まれます。
OCRCHECKユーティリティでは、OCRで使用されるデータ・ブロック形式のバージョン、OCR内の使用可能な領域および使用済領域、OCRに使用されるID、およびOCR用に構成した場所が表示されます。OCRCHECKユーティリティでは、構成したすべてのOCRのあらゆるデータ・ブロックのチェックサムを計算して、各ブロックの整合性が検証されます。OCR全体の整合性チェックの結果だけでなく、各OCRファイルの個別のステータスも返されます。OCRCHECKの出力のサンプルを次に示します。
Status of Oracle Cluster Registry is as follows : Version : 2 Total space (kbytes) : 262144 Used space (kbytes) : 16256 Available space (kbytes) : 245888 ID : 1918913332 Device/File Name : /dev/raw/raw1 Device/File integrity check succeeded Device/File Name : /oradata/mirror.ocr Device/File integrity check succeeded Cluster registry integrity check succeeded
OCRCHECKユーティリティでは、次のディレクトリにログ・ファイルが作成されます。ここで、CRS_homeはインストール済のOracle Clusterwareソフトウェアの場所、hostname
はローカル・ノードの名前を表します。
CRS_home/log/
hostname/client
ログ・ファイルの名前は、orcheck_
nnnnn
.log
という形式になります。ここで、nnnnn
はocrcheck
コマンドを発行した操作のセッションのプロセスIDです。
表5-1に、OCRの一般的な問題とその解決策を示します。
問題 | 解決策 |
---|---|
OCRがミラー化されていません。 |
|
OCRのミラー化が失敗し、それを置換する必要があります。エラー・メッセージがOracle Enterprise ManagerまたはOCRログ・ファイルでレポートされています。 |
|
OCRが誤って更新されました。 |
|
OCRの処理によってパフォーマンスに重大な影響が及ぼされたか、または他の理由のためにOCRを削除します。 |
|
|
![]() Copyright © 2006, 2008 Oracle Corporation. All Rights Reserved. |
|