ヘッダーをスキップ

Oracle Database 2日でReal Application Clustersガイド
11g リリース1(11.1)

E05737-03
目次
目次
索引
索引

戻る 次へ

5 Oracle Clusterwareコンポーネントの管理

この章では、Oracle Clusterware環境の管理方法について説明します。ここでは、投票ディスクおよびOracle Cluster Registry(OCR)の管理方法について次の項で説明します。

Oracle Clusterwareの概要

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プロセスを停止する必要はありません。

投票ディスクのバックアップ・コピーを作成するには、次の手順を実行します。
  1. voting_disk_nameがアクティブな投票ディスクの名前であり、backup_file_nameが投票ディスクの内容のバックアップ先であるファイルの名前であり、次の例に示すようにLinuxのddコマンドを使用します。

    dd if=voting_disk_name of=backup_file_name
    
    

    必要に応じて、すべての投票ディスク上でこの操作を実行します。

  2. 投票ディスクがRAWデバイスに格納されている場合は、voting_disk_nameにデバイス名を使用します。次に例を示します。

    dd if=/dev/sdd1 of=/tmp/voting.dmp
    
    

投票ディスクのリカバリ

投票ディスクが破損して、Oracle Clusterwareで使用不可能になった場合、バックアップ・ファイルがあれば投票ディスクをリカバリできます。

バックアップから投票ディスクをリカバリするには、次の手順を実行します。
  1. 次のコマンドを実行します。backup_file_nameは投票ディスクのバックアップ・ファイルの名前であり、voting_disk_nameはアクティブ投票ディスクの名前です。

    dd if=backup_file_name of=voting_disk_name
    

投票ディスクの追加および削除

Oracle RACのインストール後に、投票ディスクを動的に追加および削除できます。これを行うには、次のコマンドを使用します。pathには、追加する投票ディスクの完全修飾パスを指定します。

投票ディスクを追加または削除するには、次の手順を実行します。
  1. 投票ディスクを追加するには、rootユーザーで次のコマンドを実行します。

    crsctl add css votedisk path
    
    
  2. 投票ディスクを削除するには、rootユーザーで次のコマンドを実行します。

    crsctl delete css votedisk path
    
    


    注意:

    クラスタが停止中であり、アクティブなOracle Clusterwareデーモンと対話せずに前述のいずれかのコマンドを使用する場合は、-forceオプションを使用して投票ディスクの構成を変更できます。ただし、クラスタ・ノードがアクティブなときに-forceオプションを使用すると、クラスタ構成を破損する場合があります。 


Oracle Cluster Registryのバックアップおよびリカバリの概要

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がインストールされているホーム・ディレクトリです。

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

使用可能なOCRバックアップの表示

ocrconfigユーティリティを使用して、Oracle Clusterwareで自動的に生成されたバックアップを表示します。

OCRの最終バックアップを検索するには、次の手順を実行します。
  1. クラスタ内のノードで次のコマンドを実行します。

    ocrconfig -showbackup
    
    

OCRのバックアップ

OCR情報は重要であるため、ocrconfigユーティリティを使用して、自動的に作成されたバックアップ・ファイルのコピーを少なくとも1日に1回は作成することをお薦めします。

自動的に作成されたOCRバックアップ・ファイルを使用するのみでなく、環境のノードの追加や削除、Oracle Clusterwareリソースの変更、データベースの作成などの重要な構成変更を行う前と後には、OCRの内容をファイルにエクスポートする必要もあります。OCRの内容をファイルにエクスポートすると、構成変更によりエラーが発生した場合にOCRをリストアできます。たとえば、解決できない構成の問題がある場合や、構成の変更後にクラスタ・データベースを再起動できない場合は、保存したOCRの内容を有効な構成からインポートすることで構成をリストアできます。

OCRの内容をファイルにエクスポートするには、次の手順を実行します。
  1. rootユーザーとしてログインします。

  2. 作成するOCRバックアップ・ファイルの名前がbackup_file_nameの場合、次のコマンドを使用します。

    [root]# ocrconfig -export backup_file_name
    
    

OCRのリカバリの概要

OCRのリカバリには2つの方法があります。第1の方法では自動的に生成されたOCRファイルのコピーを使用し、第2の方法では手動で作成したOCRのエクスポート・ファイルを使用します。

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

OCRのステータスのチェック

障害が発生した場合は、OCRのリストアを試行する前にOCRが使用不可能であることを確認します。

OCRのステータスをチェックするには、次の手順を実行します。
  1. 次のコマンドを実行します。

    ocrcheck 
    
    
  2. このコマンドによって、1つ以上のOCRのコピーに対して「デバイス・ファイルの整合性チェックが成功しました」というメッセージが表示されない場合は、元のOCRとミラー化されたOCRの両方に障害が発生しています。バックアップからOCRをリストアする必要があります。

  3. 1つ以上のOCRのコピーが使用可能である場合、そのコピーを使用してOCRの他のコピーをリストアします。

    参照:

     

自動生成されたOCRバックアップからのOCRのリストア

自動的に生成されたバックアップからOCRをリストアする場合、まずリカバリに使用するバックアップ・ファイルを決定する必要があります。

Red Hat Linuxシステムで自動生成されたバックアップからOCRをリストアするには、次の手順を実行します。
  1. rootユーザーとしてログインします。

  2. ocrconfigコマンドを使用して、使用可能なOCRバックアップを特定します。

    [root]# ocrconfig -showbackup
    
  3. 次に示すocrdumpコマンドを使用して、バックアップの内容を確認します。ここで、file_nameはOCRバックアップ・ファイルの名前です。

    [root]# ocrdump -backupfile file_name
    
    
  4. rootユーザーとして、次のコマンドを実行して、Oracle RACクラスタ内のすべてのノードでOracle Clusterwareを停止します。

    [root]# crsctl stop crs
    
    

    Oracle RACクラスタ内の各ノードで、このコマンドを繰り返し実行します。

  5. rootユーザーとして、手順1で特定したOCRバックアップ・ファイルを次のコマンドを使用して適用し、OCRをリストアします。ここで、file_nameはリストアするOCRの名前です。このコマンドを実行する前に、OCR構成に指定するOCRデバイスが存在すること、およびそれらのOCRデバイスが有効であることを確認してください。

    [root]# ocrconfig -restore file_name
    
    
  6. rootユーザーとして、各ノードを再起動するか、または次のコマンドを実行して、クラスタ内のすべてのノードでOracle Clusterwareを再起動します。

    [root]# crsctl start crs
    
    

    Oracle RACクラスタ内の各ノードで、このコマンドを繰り返し実行します。

  7. クラスタ検証ユーティリティ(CVU)を使用して、OCRの整合性を検証します。次のコマンドを実行します。引数-n allを指定すると、クラスタの一部として構成されているすべてのクラスタ・ノードのリストが取得されます。

    [root]# cluvfy comp ocr -n all [-verbose]
    
    

OCRエクスポート・ファイルからのOCRのリカバリ

ocrconfig -exportコマンドを使用してOCRのバックアップを作成すると、構成の変更によりエラーが発生した場合に、-importオプションを使用してOCRをリストアできます。

OCRに格納されている以前の構成をOCRエクスポート・ファイルからリストアするには、次の手順を実行します。
  1. ディスク上のアクセス可能なディレクトリに、ocrconfig -exportコマンドを使用して以前作成したOCRエクスポート・ファイルを配置します。

  2. rootユーザーとして、次のコマンドを実行して、Oracle RACクラスタ内のすべてのノードでOracle Clusterwareを停止します。

    [root]# crsctl stop crs
    
    

    Oracle RACクラスタ内の各ノードで、このコマンドを繰り返し実行します。

  3. rootユーザーとして次のコマンドを使用して、OCRエクスポート・ファイルの内容をインポートすることにより、OCRデータをリストアします。ここで、file_nameはOCRエクスポート・ファイルの名前です。

    [root]# ocrconfig -import file_name
    
    
  4. rootユーザーとして、各ノードを再起動するか、または次のコマンドを実行して、クラスタ内のすべてのノードでOracle Clusterwareを再起動します。

    [root]# crsctl start crs
    
    

    Oracle RACクラスタ内の各ノードで、このコマンドを繰り返し実行します。

  5. CVUを使用してOCRの整合性を検証します。次のコマンドを実行します。-n all引数により、クラスタの一部として構成されているすべてのクラスタ・ノードのリストが取得されます。

    [root]# cluvfy comp ocr -n all [-verbose]
    
    


    注意:

    ocrconfigコマンドは、OCRエクスポート・ファイルのみのインポートに使用できます。OCRバックアップ・ファイルのインポートには使用できません。 


    参照:

     

Oracle Cluster Registryの構成の変更の概要

この項では、OCRの管理方法について説明します。OCRには、クラスタ・ノード・リストに関する情報、どのインスタンスがどのノード上で実行中であるかという情報、Oracle Clusterwareによって管理されるように変更されたアプリケーションに対するOracle Clusterwareのリソース・プロファイルに関する情報が含まれます。

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

OCRの場所の追加

アップグレード後またはOracle RACのインストールの完了後は、OCRの場所を追加できます。すでにOCRのミラーがある場合は、OCRの場所を追加する必要はありません。OCRの通常の冗長性の構成時に2つのOCRがOracle Clusterwareによって自動的に管理されます。Oracle RAC環境では、プライマリOCRおよびセカンダリOCRの2つ以外のOCRはサポートしていません。

プライマリおよびセカンダリOCRの場所を追加するには、次の手順を実行します。
  1. 次のコマンドを実行し、destination_fileまたはdiskのいずれかを使用してプライマリOCRのターゲットの場所を指定します。

    ocrconfig -replace ocr destination_file
    ocrconfig -replace ocr disk
    
    
  2. 次のコマンドを実行し、destination_fileまたはdiskのいずれかを使用してセカンダリOCRのターゲットの場所を指定します。

    ocrconfig -replace ocrmirror destination_file 
    ocrconfig -replace ocrmirror disk
    
    


    注意:

    ocrconfigコマンドを実行するには、rootユーザーとしてログインする必要があります。 


OCRの置換

既存のOCRの場所を変更、または障害の発生したOCRの場所を有効な場所に変更する必要がある場合、1つのOCRファイルがオンラインであれば、次の手順を使用できます。

OCRの場所を変更するには、次の手順を実行します。
  1. OCRCHECKユーティリティを使用して、置換しようとしているOCR以外のOCRのコピーがオンラインであるかどうかを検証します。使用するコマンドは次のとおりです。

    ocrcheck 
    
    


    注意:

    置換するOCRは、オンラインまたはオフラインのいずれの状態でもかまいません。  


  2. 次のコマンドを使用して、置換操作を実行しようとしているノードでOracle Clusterwareが実行されていることを確認します。

    crsctl check crs
    
    
  3. 次のコマンドをdestination_fileまたはdiskでターゲットOCRの場所を指定して実行し、プライマリOCRを置換します。

    ocrconfig -replace ocr destination_file
    ocrconfig -replace ocr disk
    
    
  4. 次のコマンドをdestination_fileまたはdiskでターゲットOCRの場所を指定して実行し、セカンダリOCRを置換します。

    ocrconfig -replace ocrmirror destination_file
    ocrconfig -replace ocrmirror disk
    
    
  5. 現行のOracle RACクラスタの一部であるノードのいずれかが停止している場合、停止しているノードに対して次のコマンドを実行し、そのノードが再起動された後に再びクラスタに参加できるようにします。

    ocrconfig -repair ocr [device_name]
    
    

ローカル・ノードでのOCR構成の修復

あるノードが停止している間にOCR構成を変更した場合は、そのノードのOCR構成を修復する必要がある場合があります。たとえば、OCRの追加、置換または削除を行っているときに停止したノードでは、OCRを修復する必要がある場合があります。

OCR構成を修復するには、次の手順を実行する必要があります。
  1. Oracle Clusterwareのデーモンを停止したノードで次のコマンドを実行します。

    ocrconfig -repair ocrmirror [device_name] 
    
    


    注意:

    この操作は、Oracle Clusterwareデーモンが実行中のノードでは、実行できません。 


    この操作では、このコマンドを実行したノードのOCR構成のみが変更されます。

    たとえば、OCRミラーは/dev/raw1という名前のディスク上に存在する場合、次のコマンドを使用してそのOCR構成を修復します。

    ocrconfig -repair ocrmirror /dev/raw1
    
    

OCRの削除

OCRの場所を削除するには、少なくとも1つのOCRがオンラインである必要があります。OCR関連のオーバーヘッドを削減するため、またはOCRのRedundant Array of Independent Disks(RAID)などの冗長ストレージ・システムへの移動によりOCRのミラー化を停止するため、OCRの場所を削除できます。

Oracle RACクラスタからOCRの場所を削除するには、次の手順を実行します。
  1. OCRCHECKユーティリティを使用して、削除するOCRの他に、1つ以上のOCRがオンライン状態になっていることを確認します。

    ocrcheck
    
    


    注意:

    1つ以上のアクティブなOCRがオンラインでないかぎり、OCRの削除手順は実行しないでください。 


  2. クラスタの任意のノードで次のコマンドを実行し、OCRのコピーを1つ削除します。

    ocrconfig -replace ocr
    
    

    このコマンドを実行すると、Oracle Clusterwareが実行されているすべてのノードでOCR構成が更新されます。

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

この項には、Oracle Cluster Registry(OCR)のトラブルシューティングについての次の項が含まれます。

OCRCHECKユーティリティの概要

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という形式になります。ここで、nnnnnocrcheckコマンドを発行した操作のセッションのプロセスIDです。

Oracle Cluster Registryの一般的な問題の解決

表5-1に、OCRの一般的な問題とその解決策を示します。

表5-1    OCRの一般的な問題および解決策 
問題  解決策 

OCRがミラー化されていません。 

-replaceオプションを指定してocrconfigコマンドを実行します。詳細は、「OCRの置換」を参照してください。 

OCRのミラー化が失敗し、それを置換する必要があります。エラー・メッセージがOracle Enterprise ManagerまたはOCRログ・ファイルでレポートされています。 

-replaceオプションを指定してocrconfigコマンドを実行します。詳細は、「OCRの場所の追加」を参照してください。 

OCRが誤って更新されました。 

-repairオプションを指定してocrconfigコマンドを実行します。詳細は、「ローカル・ノードでのOCR構成の修復」を参照してください。 

OCRの処理によってパフォーマンスに重大な影響が及ぼされたか、または他の理由のためにOCRを削除します。 

-repairオプションを指定してocrconfigコマンドを実行します。詳細は、「ローカル・ノードでのOCR構成の修復」を参照してください。 

参照:

 


戻る 次へ
Oracle
Copyright © 2006, 2008 Oracle Corporation.

All Rights Reserved.
目次
目次
索引
索引