Cluster Server 8.0.2 Agent for Oracle インストールおよび設定ガイド - Linux

Last Published:
Product(s): InfoScale & Storage Foundation (8.0.2)
Platform: Linux
  1. Cluster Server Agent for Oracle の導入
    1.  
      Cluster Server Agent for Oracle について
    2.  
      Oracle ASM のエージェントについて
    3.  
      Oracle の VCS エージェントのサポート対象ソフトウェア
    4. エージェントが Oracle の高可用性を保証するしくみ
      1.  
        Oracle エージェントと Netlsnr エージェントがインテリジェントなリソース監視をサポートするしくみ
      2.  
        エージェントが Oracle ASM インスタンスの高可用性を確保する方法
      3.  
        エージェントの Oracle コンテナデータベース (CDB) とプラグ可能データベース (PDB) のサポート方法
    5. Oracle 用 Cluster Server エージェントの機能について
      1. Oracle エージェント関数
        1.  
          Oracle エージェントの起動オプションと停止オプション
        2.  
          従来のデータベースおよびコンテナデータベース内の Oracle エージェントに対する監視オプション
        3.  
          PDB の起動オプションと停止オプション
        4.  
          プラグ可能なデータベースの監視
        5.  
          コンテナデータベース(CDB)の起動モードに基づくプラグ可能なデータベース(PDB)の推奨起動モード
        6.  
          詳細監視での Oracle エラーコードの操作
        7.  
          Cluster Server agent for Oracle の Info エントリポイント
        8.  
          Cluster Server agent for Oracle の Action エントリポイント
        9. Oracle エージェントによる診断監視のサポートのしくみ
          1.  
            Oracle 診断監視に必要な実行可能ファイルの生成
          2.  
            build_oraapi.sh スクリプトを使用して Oracle ライブラリをリンクするための前提条件
          3.  
            build_oraapi.sh を実行するための注意事項
          4.  
            build_oraapi.sh スクリプトを使った Oracle エージェントの実行可能ファイルの構築
      2.  
        Netlsnr エージェント関数
      3. ASMInst エージェントの機能
        1.  
          ASMInst エージェントの起動オプション
        2.  
          ASMInst エージェントのシャットダウンオプション
      4.  
        ASMDG エージェントの機能
    6.  
      VCS クラスタにおける標準的な Oracle 設定
    7.  
      VCS クラスタでの Oracle 設定について
  2. Oracle のインストールと設定
    1.  
      VCS 環境での Oracle のインストール
    2.  
      VCS 環境に Oracle をインストールする前に
    3. Oracle のインストールのための VCS の必要条件について
      1.  
        $ORACLE_HOME の場所
      2.  
        ホットバックアップ中に VCS ノードに障害が発生した後の Oracle のフェールオーバー
    4. VCS のための Oracle インストールタスクについて
      1.  
        共有ディスクで行う $ORACLE_HOME のインストールタスク
      2.  
        ローカルディスクで行う $ORACLE_HOME のインストールタスク
      3.  
        ASM を使用する Oracle のインストールタスク
    5. VCS 環境での ASM バイナリのインストール
      1.  
        Oracle Restart 機能をサポートするための VCS 設定
    6. クラスタの最初のノードでの Oracle ASM の設定
      1.  
        ASM で管理されたデータベースのためのクラスタデーモンの有効化
      2.  
        ASM の自動起動の無効化
    7.  
      残りのノードでの ASM の構成と起動
    8. クラスタの最初のノードへの Oracle バイナリのインストール
      1.  
        Oracle クラスタデーモンを無効にします
    9.  
      Oracle データベースの設定
    10.  
      $ORACLE_BASE/admin/SID ディレクトリのコピー
    11.  
      Oracle ASM の初期化パラメータファイルのコピー
    12.  
      Oracle データベースへのアクセスの確認
  3. Oracle 用エージェントのインストールと削除
    1.  
      Oracle 用エージェントをインストールまたはアップグレードする前に
    2.  
      VCS agent for Oracle ソフトウェアのインストール
    3. VCS agent for Oracle のアップグレード
      1.  
        VCS agent for Oracle のアップグレード
    4.  
      Cluster Server Agent for Oracle の無効化
    5.  
      Cluster Server Agent for Oracle の削除
  4. Oracle 用 VCS サービスグループの設定
    1.  
      Oracle 用サービスグループの設定について
    2. VCS における Oracle インスタンスの設定
      1.  
        VCS における単一の Oracle インスタンスの設定
      2.  
        VCS における複数の Oracle インスタンス(単一リスナー)の設定
      3.  
        VCS における複数の Oracle インスタンス(複数リスナー)の設定
      4.  
        VCS における共有サーバーサポートの Oracle インスタンスの設定
    3. Oracle の VCS サービスグループを設定する前に
      1.  
        Cluster Server agent for Oracle のタイプ定義ファイルのインポート
    4. Oracle のための VCS サービスグループの設定
      1.  
        Cluster Manager(Java コンソール)を使った Oracle 用 VCS サービスグループの設定
      2. コマンドラインを使った Oracle 用 VCS サービスグループの設定
        1.  
          Oracle データベースのユーザーパスワードとリスナーパスワードの暗号化
      3. VCS agent for Oracle の詳細監視の設定
        1. Oracle に対する詳細監視の設定
          1.  
            Oracle リソースに対する詳細監視の有効化と無効化
        2.  
          Netlsnr に対する詳細監視の設定
      4. エージェントに対するインテリジェントなリソース監視の手動による有効化と無効化
        1.  
          AMF カーネルドライバの管理
  5. Veritas High Availability 設定ウィザードを使った Oracle 用 VCS サービスグループの設定
    1.  
      仮想環境の標準 VCS クラスタ設定
    2.  
      VMware 用 Veritas High Availability ソリューションを使用したアプリケーション監視の設定について
    3.  
      ウィザードを使用した VCS サービスグループの設定の準備
    4.  
      アプリケーション監視を設定する前に
    5.  
      Veritas High Availability 設定ウィザードの起動
    6.  
      Oracle を監視するためのエージェントの設定
    7. サービスグループの設定について
      1.  
        リソースの依存関係(Resource Dependency)
      2.  
        サービスグループの依存関係
      3.  
        インフラサービスグループ
    8. 設定シナリオについて
      1.  
        VCS で単一インスタンス/複数のインスタンスを設定する
      2.  
        ウィザードの複数実行機能を使って VCS で Oracle の複数インスタンスを設定する
      3.  
        複数のアプリケーションを設定する
    9.  
      Veritas High Availability 設定ウィザードの制限事項
    10. トラブルシューティング
      1.  
        Veritas High Availability 設定ウィザードで空白のパネルが表示される
      2.  
        Veritas High Availability 設定ウィザードに「hadiscover は内部コマンドまたは外部コマンドとして認識されていません (hadiscover is not recognized as an internal or external command)」というエラーが表示される
      3.  
        hastop - all コマンドを実行すると、仮想ディスクが切断される
      4.  
        ログファイル
    11. 設定例
      1.  
        単一 Oracle インスタンス用の VCS 設定ファイルの例(VxVM)
      2.  
        単一 Oracle インスタンス用の VCS 設定ファイルの例(LVM)
  6. Oracle 用 VCS サービスグループの管理
    1.  
      VCS サービスグループの管理について
    2.  
      サービスグループのオンライン化
    3.  
      サービスグループのオフライン化
    4.  
      サービスグループの切り替え
    5.  
      サービスグループ設定の修正
  7. プラグ可能データベース (PDB) の移行
    1.  
      コンテナデータベース (CDB) 間でのプラグ可能データベース (PDB) の移行
  8. Cluster Server Agent for Oracle のトラブルシューティング
    1.  
      Cluster Server Agent for Oracle のトラブルシューティングについて
    2.  
      Oracle エージェントと Netlsnr エージェントに共通のエラーメッセージ
    3.  
      Oracle エージェント固有のエラーメッセージ
    4.  
      Netlsnr エージェント固有のエラーメッセージ
    5.  
      ASMInst エージェント固有のエラーメッセージ
    6.  
      ASMDG エージェント固有のエラーメッセージ
    7.  
      VCS 環境における Oracle 固有の問題のトラブルシューティング
    8. Oracle 診断バイナリと Oracle のインスタンスの意図的なオフライン化の検証
      1.  
        VCS Oracle エージェントの意図的なオフライン動作の検証
    9.  
      PDB リソースの IMF の無効化
  9. 付録 A. リソースタイプの定義
    1.  
      リソースタイプの定義と属性の定義について
    2. Oracle エージェントのリソースタイプ定義
      1.  
        systemD サポート用のソースタイプ定義
      2.  
        Oracle エージェントの属性の定義
      3.  
        ポリシー管理データベースの Sid 属性について
      4. Oracle アプリケーションサービスでの systemD 属性の使用
        1.  
          キーと値のペアの SystemDAttrList 属性への追加
        2.  
          systemD 属性を使用した Oracle サービスユニットファイルのカスタマイズ
        3.  
          Linux 上の Oracle への HugePages の設定
    3. Netlsnr エージェントのリソースタイプ定義
      1.  
        Netlsnr エージェントの属性定義
    4. ASMInst エージェントのリソースタイプ定義
      1.  
        systemD をサポートする ASMInst エージェントのリソースタイプ定義
      2.  
        ASMInst エージェントの属性定義
    5. ASMDG エージェントのリソースタイプ定義
      1.  
        ASMDG エージェントの属性定義
  10. 付録 B. 設定例
    1.  
      Oracle Enterprise Agent の設定例について
    2. Oracle 単一インスタンスの設定例
      1.  
        単一 Oracle インスタンスの VCS 設定ファイルの例
    3. 複数の Oracle インスタンス(単一リスナー)の設定例
      1.  
        複数の Oracle インスタンス(単一リスナー)の VCS 設定ファイルの例
    4. 複数のインスタンス(複数リスナー)の設定例
      1.  
        複数の Oracle インスタンス(複数リスナー)の VCS 設定ファイルの例
    5. 共有サーバーサポートの Oracle の設定例
      1.  
        共有サーバーサポートで設定された Oracle インスタンスの VCS 設定ファイルの例
    6. Oracle ASM の設定例
      1. RAW ディスクとしての ASM ディスクの設定例
        1.  
          ASM で管理された Oracle インスタンスの VCS 設定ファイルの例
      2. VxVM ボリュームとしての ASM ディスクの設定例
        1.  
          VxVM ディスクとしての ASM ディスクの VCS 設定ファイル例
      3. CVM ボリュームとしての ASM ディスクの設定例
        1.  
          CVM ボリュームを使う ASM の VCS 設定ファイルの例
    7.  
      main.cf の Oracle プラグ可能なデータベース(PDB)リソースの設定例
    8.  
      main.cf の移行可能な Oracle プラグ可能データベース (PDB) リソースの設定例
    9.  
      systemD でサポートされる Oracle の設定例
    10.  
      systemD でサポートされる ASMInst の設定例
  11. 付録 C. ベストプラクティス
    1.  
      VCS 環境で複数の Oracle インスタンスを設定する場合のベストプラクティス
  12. 付録 D. Oracle の VCS クラスタ での SPFILE の使用
    1.  
      Oracle 初期化パラメータファイルについて
    2.  
      Oracle インスタンスの起動
    3.  
      VCS クラスタでの SPFILE の使用
  13. 付録 E. 単一インスタンスのデータベース環境での OHASD
    1.  
      単一インスタンスのデータベース環境での OHASD について
    2.  
      OHASD の高可用性を確保するための Application エージェントの設定

Oracle エージェントの属性の定義

Oracle エージェントの属性は、必須、オプション、内部に分類されます。

次の必須属性には、値を割り当てる必要があります。

表: Oracle エージェントの必須属性

必須属性

データ形式と値のタイプ

定義

SID

文字列 - スカラー

Oracle インスタンスを表す $ORACLE_SID 変数。Oracle エージェントと Oracle データベースサーバーでは Sid の大文字小文字が区別されます。

ポリシー管理データベースでは、Sid の属性は Sid プレフィックスに設定する必要があります。

Owner

文字列 - スカラー

データベースインスタンスを開始または停止する権限がある Oracle ユーザー。

エージェントでは、Oracle ユーザーとして LDAP ユーザーもサポートされます。

Home

文字列 - スカラー

Oracle バイナリファイルと設定ファイルへの $ORACLE_HOME パス。たとえば、パスとして /opt/ora_home を指定できます。

メモ:

パスの最後にスラッシュ (/) は付けないでください。

次のオプションの属性は、設定に必要な場合に設定できます。

表: Oracle エージェントのオプションの属性

オプション属性

データ形式と値のタイプ

定義

DBAUser

文字列 - スカラー

データベースを開始または停止する sysdba 権限があるデータベースユーザー。

DBAPword

文字列 - スカラー

DBAUser 用の暗号化されたパスワード。

コマンドラインで入力する場合にのみパスワードを暗号化します。パスワードは、VCS Encrypt ユーティリティ (/opt/VRTSvcs/bin/vcsencrypt) を使って暗号化する必要があります。

StartUpOpt

文字列 - スカラー

Oracle インスタンスの起動オプション。この属性は従来のデータベースおよびコンテナデータベースに対しては次の値をとります。

  • STARTUP

  • STARTUP_FORCE

  • RESTRICTED

  • RECOVERDB

  • SRVCTLSTART

  • CUSTOM

  • SRVCTLSTART_FORCE

デフォルトは STARTUP_FORCE です。

プラグ可能データベース内の Oracle インスタンスの起動オプション。この属性は次の値をとることができます。

  • STARTUP

  • STARTUP_FORCE

  • RESTRICTED

  • OPEN_RO

ShutDownOpt

文字列 - スカラー

Oracle インスタンスの停止オプション。この属性は従来のデータベースおよびコンテナデータベースに対しては次の値をとります。

  • IMMEDIATE

  • TRANSACTIONAL

  • SRVCTLSTOP

  • CUSTOM

  • SRVCTLSTOP_TRANSACT

  • SRVCTLSTOP_ABORT

  • SRVCTLSTOP_IMMEDIATE

デフォルトは IMMEDIATE です。

プラグ可能データベース内の Oracle インスタンスのシャットダウンオプションは IMMEDIATE です。

EnvFile

文字列 - スカラー

エントリポイントスクリプトによって提供されるファイルの絶対パス名。このファイルには、Oracle データベースサーバー環境のユーザーが設定する LD_LIBRARY_PATH、NLS_DATE_FORMAT などの環境変数が含まれます。

ファイル内容の構文は、Owner のログインシェルによって異なります。ファイルは Owner が読み取ることができなければなりません。ファイルにユーザー入力を求めるプロンプトが含まれていてはいけません。

メモ:

Oracle 21c 以降のバージョンでは、クライアントが EnvFile 属性に .env ファイルパスを設定することが必須です。Oracle の仮想ファイアドリル機能に対して作業するには、このファイルに ORACLE_BASE パスを追加する必要があります。

Oracle 21c の ORACLE_BASE パスを含む EnvFile の内容の例

[root@inaqalnx013 Oracle]# cat /opt/VRTSagents/ha/bin/Oracle/envfile ORACLE_BASE="/u02/app/oracle/product/21.0.0/dbhome_1/"; export ORACLE_BASE;

属性値の例

EnvFile = "/opt/VRTSagents/ha/bin/Oracle/envfile"

Pfile

文字列 - スカラー

起動プロファイルの絶対パスを指定した初期化パラメータの名前。

また、サーバーパラメータファイルを使用することもできます。SPFILE パラメータのみを含むオンラインのテキスト初期化パラメータファイルを作成します。詳しくは、Oracle のマニュアルを参照してください。

メモ:

この属性は従来のデータベースおよびコンテナデータベースにのみ適用されます。

AutoEndBkup

ブール - スカラー

AutoEndBkup 属性をゼロ以外の値に設定すると、オンライン時にデータベースのデータファイルをバックアップモードから解除します。

デフォルト: 1

メモ:

コンテナデータベースまたはプラグ可能データベースのホットバックアップ中にノードに障害が発生した場合は、対応する CDB リソースの AutoEndBkup 属性を 1 に設定する必要があります。CDB の AutoEndBkup が 1 に設定されている場合、オンライン時に CDB と PDB の両方のバックアップも終了します。

Oracle のインストールのための VCS の必要条件についてを参照してください。

MonitorOption

整数 - スカラー

Oracle インスタンスの監視オプション。この属性には 0 または 1 を指定できます。

従来のデータベースおよびコンテナデータベースの場合:

  • 0 - プロセスチェック監視 (推奨)

  • 1 - 診断監視

プラグ可能データベースの場合:

  • 0 - 基本監視

エージェントの意図的なオフライン機能を使うには、この属性の値を 1 に設定する必要があります。

デフォルト: 0

この属性値を 0 に設定した場合にのみ、エージェントは従来の DB および CDB に対するインテリジェントなリソース監視をサポートします。

IMF

整数 - 関連付け

このリソースタイプレベルの属性は、Oracle エージェントがインテリジェントなリソース監視を実行する必要があるかどうかを決定します。リソースレベルでこの属性の値を上書きすることもできます。

この属性は次のキーを含んでいます。

  • Mode: この属性を定義して、インテリジェントなリソースの監視を有効または無効にします。

    次に、有効な値を示します。

    • 0 - インテリジェントなリソースの監視を実行しない

    • 1 - オフラインリソースについてはインテリジェントなリソースの監視を実行し、オンラインリソースについてはポーリングベースの監視を実行する

    • 2 - オンラインリソースについてはインテリジェントなリソースの監視を実行し、オフラインリソースについてはポーリングベースの監視を実行する

    • 3 - オンラインリソースとオフラインリソースの両方についてインテリジェントなリソースの監視を実行する

    デフォルト: 3

  • MonitorFreq: このキー値は、エージェントが監視エージェント機能を呼び出す頻度を指定します。このキーの値は整数です。

    デフォルト: 5

    エージェントがポーリングベースの監視とインテリジェントなリソースの監視の両方を実行する必要がある場合は、このキーをゼロ以外の値に設定できます。値が 0 の場合、エージェントはポーリングベースのプロセスチェック監視を実行しません。

    リソースが AMF カーネルドライバに登録されると、エージェントは次のように監視エージェント機能を呼び出します。

    • オンラインリソースの場合は(MonitorFreq x MonitorInterval)秒おき

    • オフラインリソースの場合は (MonitorFreq x OfflineMonitorInterval) 秒おき

  • RegisterRetryLimit: インテリジェントなリソース監視を有効にすると、エージェントは oracle_imf_register エージェント関数を呼び出して、リソースを AMF カーネルドライバに登録します。RegisterRetryLimit キーの値によって、エージェントがリソースの登録を再試行する必要がある回数が決まります。エージェントが、指定された制限内にリソースを登録できない場合、リソースの状態が変化するか、Mode キーの値が変更されるまで、インテリジェントな監視は無効になります。

    デフォルト: 3

メモ:

IMF は従来のデータベースおよびコンテナデータベースでのみサポートされます。

エージェントに対するインテリジェントなリソース監視の手動による有効化と無効化を参照してください。

MonScript

文字列 - スカラー

詳細な監視のために提供されているスクリプトへのパス名。デフォルト (基本監視) では、データベース PID のみが監視されます。

メモ:

MonScript 属性の値が無効であったり、空の文字列を設定したりしている場合、詳細監視は無効になります。

提供されている詳細監視スクリプトへのパス名は /opt/VRTSagents/ha/​bin/Oracle/SqlTest.pl です。

また、MonScript には /opt/VRTSagents/ha への相対パス名も指定できます。相対パス名は、パス ./bin/Oracle/SqlTest.pl のように「./」で始まる必要があります。

User

文字列 - スカラー

内部データベースユーザー。詳細監視のためにデータベースに接続します。

LevelTwo​MonitorFreq

整数 - スカラー

このリソースタイプのエージェントが第 2 レベル、つまり詳細な監視を実行する必要がある頻度を指定します。リソースレベルでこの属性の値を上書きすることもできます。

この値は、エージェントが Oracle を詳細に監視する監視サイクルの数を示します。たとえば、値 5 は、エージェントが 5 つのオンライン監視間隔ごとに Apache を詳細に監視することを意味します。

VCS 8.0.2 エージェントに手動でアップグレードし、以前のバージョンの詳細監視を有効にしている場合は、LevelTwoMonitorFreq 属性の値を適切に設定します。

メモ:

AutoEndBkup 属性の値を 0 に設定した場合は、LevelTwoMonitorFreq 属性の値が詳細な監視用の 1 になっていることを確認します。

デフォルト: 0

Pword

文字列 - スカラー

内部データベースユーザー認証のための暗号化されたパスワード。

コマンドラインで入力する場合にのみパスワードを暗号化します。パスワードは、VCS Encrypt ユーティリティ (/opt/VRTSvcs/bin/vcsencrypt) を使って暗号化する必要があります。

メモ:

この属性は PDB リソースには適用されません。

Table

文字列 - スカラー

User/Pword による更新用の表。

Encoding

文字列 - スカラー

表示される Oracle の出力の Oracle エンコードに対応するオペレーティングシステムのエンコードを指定します。

デフォルトは "" です。

メモ:

この属性は PDB リソースには適用されません。

IntentionalOffline

このリソースタイプレベルの属性は、Oracle が VCS 制御の外側で意図的に停止されている場合に、VCS が反応する方法を定義します。

VCS の制御下にない Oracle の従来型データベースおよびコンテナデータベースを停止すると、エージェントの動作は次のようになります。

  • 0 - Oracle エージェントは障害を登録して、サービスグループのフェールオーバーを開始します。

  • 1 - 診断監視が有効になっている場合、Oracle エージェントは Oracle リソースをオフラインで取得します。

    診断監視が有効になっていない場合、エージェントは障害を登録して、サービスグループのフェールオーバーを開始します。

メモ:

エージェントの意図的なオフラインの機能を使う場合は、MonitorOption 属性の値に 1 を設定して、CDB で診断監視を有効にする必要があります。

メモ:

CDB リソースが IntentionalOffline によって設定されていて、この CDB が VCS の制御外で停止した場合、PDB リソースもオフラインとして報告されます。この機能を有効にするには、PDB リソースの IntentionalOffline 属性を 1 に設定します。

『Cluster Server 管理者ガイド』を参照してください。

DBName

文字列 - スカラー

この属性は、データベースがポリシー管理の RAC データベースの場合にのみ設定します。この属性の値は一意のデータベース名に設定する必要があります。

ManagedBy

文字列 - スカラー

この属性のデフォルト値は ADMIN です。ポリシー管理の RAC データベースでは、この属性は POLICY に設定する必要があります。

PDBName

文字列 - スカラー

PDB にこの属性を設定する必要があります。PDB データベース名に値を設定する必要があります。従来のデータベースおよび CDB データベースの場合、この属性を設定しないでください。

UseSystemD

ブール

systemD は、Linux オペレーティングシステム用のシステムおよびサービスマネージャです。systemD 機能をサポートする Linux の配布版全体でアプリケーションの管理を支援します。

online エントリポイントが、有効になった UseSystemD 属性で呼び出されると、Oracle リソースが system.slice 内のサービスとしてオンラインになります。UseSystemD 属性を有効にしない場合、通常の online エントリポイントが user.slice 内のリソースを開始します。

注意事項: システムの再ブート時に、アプリケーションリソースが user.slice 下で開始された場合、プロセスが適切に停止しない可能性があります。これにより、データベースが破損する場合があります。この動作は、Oracle アプリケーションのバージョンごとに異なります。このため、システム上で Oracle の UseSystemD 属性を有効にします。

アプリケーションプロセスは、vcs-<resource_name>.service (/etc/systemd/system 内) として表示できます。

UseSystemD 値を 0 または 1 に設定します。

SystemDAttrList

文字列 - スカラー

UseSystemD が有効になっていることを確認してから、キーと値のペアを SystemDAttrList 属性で設定します。詳しくは、Red Hat Web サイトを参照してアプリケーションに適用できる異なる制限を確認してください。

次に例を示します。

# hares -modify oracle SystemDAttrList LimitLOCKS 44433

ここで、LimitLOCKS はキーで、44433 はキーの値です。

表: Oracle エージェントの内部属性は、Oracle エージェントの内部属性をリストします。この属性は内部使用のみを目的としています。Veritas は、この属性の値を変更しないよう推奨します。

表: Oracle エージェントの内部属性

オプション属性

データ形式と値のタイプ

定義

AgentDirectory

静的 - 文字列

Oracle エージェントに関連付けられているバイナリやスクリプトなどのファイルの場所を指定します。

デフォルトは /opt/VRTSagents/ha/bin/Oracle です。