ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Entitlements Server管理者ガイド
11gリリース2 (11.1.2.2)
B71695-05
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

14 障害時リカバリ・ソリューションの構成

エンタープライズ・デプロイメント用のOracle Fusion Middleware障害時リカバリ・ソリューションでは、Oracle Data Guardを使用して、ストレージ・レプリケーション・テクノロジを使用します。このテクノロジは、スタンドアロン配布としてインストールされたOracle Entitlements Serverを含む、各種のOracle製品スイートのコンポーネントをサポートします。この章では、Oracle Entitlements ServerでOracle Data Guardを使用して、マルチサイト・デプロイメントでの障害リカバリ用にデータを同期するための設定方法について説明します。

この章では、次の項目について説明します。


注意:

Oracle Entitlements Serverでマルチサイト・デプロイメントでの障害時リカバリ・ソリューションを設定する前に、Oracle Fusion Middlewareディザスタ・リカバリ・ガイドのOracle Fusion Middlewareの障害時リカバリ・ソリューションに関する情報を確認してください。

14.1 マルチサイト・デプロイメントの概要

Oracle Databaseの障害保護はOracle Data Guardによって提供されます。マルチサイト・デプロイメントでは、データベースをプライマリ・サイトとスタンバイ・サイトの両方にインストールして構成します。このリリースでは、Oracle Entitlements Serverは、データベース・サービスの高可用性ソリューションとしてOracle Data Guardをサポートしています。Oracle Data Guardでは、本番データベース(プライマリ・データベース)の1つ以上の同期化されたレプリカ(スタンバイ・データベース)を作成および保持する機能が提供されます。Oracle Data Guardのスタンバイ・データベースは、読取り専用で開かれますが、Oracle Data Guardのプライマリ・データベースは、読取りと書込みの両方が可能です。Oracle Data Guardの構成の推奨事項の詳細は、『Oracle Fusion Middlewareディザスタ・リカバリ・ガイド』のOracle Identity Managementの推奨事項に関する項を参照してください。

マルチサイト・デプロイメントでは、Oracle Entitlements Server管理サーバーは、MAPI操作をサポートするために、Oracle Data Guardのプライマリ・データベースをポリシー・ストアに構成します。Oracle Entitlements Serverセキュリティ・モジュールは、ポリシー配布用に、プライマリ・データベースまたはスタンバイ・データベースの1つをポリシー・ストアに構成します。

Oracle Entitlements Server管理サーバーは、ポリシー問合せサービスを提供するために、読取り専用のOracle Data Guardスタンバイ・データベースにデプロイされます。Oracle Data Guardデータベースでロール・トランジション(スタンバイ・データベースがプライマリ・データベースになります)が発生した場合は、Oracle Entitlements Server管理サーバーは、WebLogic Serverを再起動することなく、新しいプライマリ・データベースで管理サービスを提供できます。

Oracle Entitlements Serverのマルチサイト・デプロイメントには、次のものが含まれます。

  • Oracle Entitlements Server管理コンソール: データ・センター全体のポリシー管理用の単一のマスター。

  • セキュリティ・モジュール: 次の場所に接続するSM

    • データの読取り用のローカル・サイト・データベース(マスターまたはスレーブ)。

    • データの書込み用のマスター・サイト・データベース(マスター)。

  • ポリシー・データ・レプリケーション: データ・レプリケーションのモード。

14.2 マルチサイト・デプロイメント・トポロジ

このリリースでは、次の構成が必要です。

  • 常にマスターとして動作する1つのサイト。すべての書込み操作は、現在マスター・サイトとして構成されているポリシー・ストアに対して実行されます。

  • すべてのセキュリティ・モジュールは、制御プル・モードで構成されます。非制御モードおよび制御プッシュ・モードはサポートされません。

  • 混合モードで構成されたポリシー・ストアはサポートされません。

  • IDMドメインのOracle Entitlements Server管理コンソールは、マルチサイト機能を利用できません。

  • Oracle Entitlements Serverは、スタンドアロン配布としてインストールされます。

図14-1に、マルチサイト・デプロイメントとして構成した場合のOracle Entitlements Serverコンポーネント間の関係を示します。

図14-1 マルチサイト・デプロイメント・トポロジ

図14-1の説明が続きます
「図14-1 マルチサイト・デプロイメント・トポロジ」の説明

図に示すとおり、マルチサイト・デプロイメントでは次の関係が存在します。

  • ポリシー配布: セキュリティ・モジュールは、すべてのサイトで制御プル・モードで構成されます。スナップショットはマスター・サイトで管理サーバーによって生成され、Oracle Data Guardを使用してセカンダリ・サイトおよび3次サイトにレプリケートされます。セカンダリ・サイトおよび3次サイトのPDPは、ローカル・ポリシー・ストアからのスナップショットを取得します。

  • 構成: PDPは、複数のJDBC URLで構成されます。プライマリJDBC URLは、ローカル・ポリシー・ストアに構成されます。ローカル・ポリシー・ストアへの接続に障害が発生した場合は、セカンダリJDBC URLへの接続が試みられます。これによって、障害発生時にもポリシー・ストアがアクセス可能になります。

  • SM ConfigUI: フェイルオーバー機能のサポートに必要なJDBC URLの構成に使用できます。

14.3 タスク・ロードマップ

表14-1に、Oracle Data Guardを使用してマルチサイト・デプロイメントでの障害リカバリ用にデータを同期するためのOracle Entitlements Serverの構成での高レベル・タスクをリストします。

表14-1 障害時リカバリ・ソリューションの構成フロー

番号 タスク 情報

1

Oracle Fusion Middlewareの障害時リカバリ・ソリューションについての情報の確認

Oracle Fusion Middlewareディザスタ・リカバリ・ガイド


2

前提条件を実施したことを確認

14.4項「前提条件」


Oracle Data Guardの構成

3

プライマリ・サーバー・サイトの構成

4

スタンバイ・サーバー・サイトの構成

5

ログ・ファイル転送をテストするためにプライマリ・サーバーからスタンバイ・サーバーへ強制的にスイッチオーバー

14.5.3項「ログ転送のテスト」


6

Oracle Data Guard Brokerの構成

7

プライマリ・サーバーとスタンバイ・サーバー間の手動フェイルオーバーおよびスイッチオーバーのテスト

14.5.5項「フェイルオーバーおよびスイッチオーバーのテスト」


8

Oracle ASMの仮想デバイスの構成

14.5.6項「Oracle ASMの仮想デバイスの構成」


9

Oracle Restartの構成

14.5.7項「Oracle Restartの構成」


10

必要に応じて、スタンドアロン・サーバー用のOracle Grid Infrastructureをインストール

Oracle Entitlements Serverの構成

11

RCUを使用してOracle Entitlements ServerのOPSSデータベース・スキーマの作成

12

プライマリ・サーバーへのOracle Entitlements Server管理コンソールのインストール

13

スタンバイ・サーバーへのOracle Entitlements Server管理コンソールのインストール

14

マルチサイト・デプロイメント用のセキュリティ・モジュールの構成


14.4 前提条件

  1. Oracle Databaseがインストールされた2つのサーバー。11g R2 (11.1.2)は、Oracle Data Guardサポートを提供するために必要な最低バージョンです。

    次の例で、プライマリ・サイトのサーバー名はprimary_hostです。スタンバイ・サイトのサーバー名はstandby_hostです。

  2. プライマリ・サイトのサーバー(primary_host)には稼働中のインスタンスがあります。この例では、データベース名および一意の名前はどちらもdb11gです。

  3. スタンバイ・サイトのサーバー(standby_host)は、ソフトウェアのみのインストールです。この例で、データベース名はdb11gで、データベースの一意の名前はdb11g_stbyです。

    スタンバイ・データベースのDB_NAMEは、プライマリと同じですが、DB_UNIQUE_NAME値は異なる値である必要があります。

  4. primary_hostおよびstandby_hostはどちらも、同じORACLE_HOMEディレクトリおよび構造です。

    これは制約ではありませんが、インストールを簡略化するためにお薦めします。

  5. スタンドアロン・サーバー用の11gR2 (11.1.2) Oracle Grid Infrastructureが、primary_hoststandby_hostの両方にインストールされています。

    Oracle RestartとOracle Automatic Storage Management (Oracle ASM)の両方が必要であり、構成が必要です。これらはどちらも、スタンドアロン・サーバー用Oracle Grid Infrastructureのインストール時に含まれています。

14.5 Oracle Entitlements Serverの障害時リカバリの構成

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

14.5.1 プライマリ・サーバーの設定

プライマリ・サーバーとして動作するデータベースをインストールするには、次の手順を実行します。

  1. forced loggingを構成します。プライマリ・データベースがarchivelogモードになっていることを確認します。noarchivelogモードの場合は、archivelogモードに変更し、forced loggingを有効化します。たとえば、次のように入力します。

    sqlplus sys/welcome1 as sysdba
    select log_mode from v$database;
    shutdown immediate;
    startup mount;
    alter database archivelog;
    alter database open;
    alter database force logging;
    
  2. DB_NAMEパラメータおよびDB_UNIQUE_NAMEパラメータの設定を確認します。この例では、どちらもプライマリ・データベースのdb11gに設定されています。スタンバイ・データベースのDB_NAMEは、プライマリと同じですが、DB_UNIQUE_NAME値は異なる値である必要があります。初期化パラメータをREDOログ適用に設定します。たとえば、次のように入力します。

    show parameter db_name;
    show parameter db_unique_name;
    ALTER SYSTEM SET LOG_ARCHIVE_CONFIG='DG_CONFIG=(db11g,db11g_stby)';
    ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=db11g_stby NOAFFIRM ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=db11g_stby';
    ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE;
    ALTER SYSTEM SET LOG_ARCHIVE_FORMAT='%t_%s_%r.arc' SCOPE=SPFILE;
    ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=5;
    ALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE SCOPE=SPFILE;
    ALTER SYSTEM SET FAL_SERVER=db11g_stby;
    ALTER SYSTEM SET STANDBY_FILE_MANAGEMENT=AUTO;
    
  3. データベースの停止たとえば、次のように入力します。

    shutdown immediate;
    startup mount;
    
  4. 両方のサーバーの$ORACLE_HOME/network/admin/tnsnames.oraファイルに、プライマリ・データベースおよびスタンバイ・データベースの値を指定します。たとえば、次のように入力します。

    db11g =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = primary_host)(PORT = 1521))
    )
    (CONNECT_DATA =
    (SERVICE_NAME = db11g.example.com)
    )
    )
     
    db11g_stby =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = standby_host)(PORT = 1521))
    )
    (CONNECT_DATA =
    (SERVICE_NAME = db11g.example.com)
    )
    )
    
  5. プライマリ・サーバーのlistener.oraに次の値を設定します。

    SID_LIST_LISTENER =
        (SID_LIST =
        (SID_DESC =
         (GLOBAL_DBNAME = db11g_DGMGRL.example.com)
         (ORACLE_HOME = /scratch/example_user/app/example_user/product/11.2.0/dbhome_1)
         (SID_NAME = db11g)
        )
        (SID_DESC =
         (GLOBAL_DBNAME = db11g_DGB.example.com)
         (ORACLE_HOME = /scratch/example_user/app/example_user/product/11.2.0/dbhome_1)
         (SID_NAME = db11g)
       )
      )
     
    LISTENER =
        (DESCRIPTION_LIST =
            (DESCRIPTION =
                (ADDRESS = (PROTOCOL = TCP)(HOST = primary.example.com)(PORT = 1521))
            )
            (DESCRIPTION =
                (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
            )
        )
     
    ADR_BASE_LISTENER = /scratch/example_user/app/example_user
     
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent
    
  6. スタンバイ・データベース用の制御ファイルおよびパラメータ・ファイルを作成します。エントリがスタンバイ・データベースと関連するようにPFILEを修正します。たとえば、次のように入力します。

    ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/tmp/db11g_stby.ctl';
    CREATE PFILE='/tmp/initdb11g_stby.ora' FROM SPFILE;
     
    *.db_unique_name='db11g_stby'
    *.fal_server='db11g'
    *.log_archive_dest_2='SERVICE=db11g ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=db11g'
    

14.5.2 セカンダリ・サーバー(重複)の設定

次に、重複であるスタンバイ・サーバーをインストールして構成する必要があります。このサーバーはソフトウェアのみのインストールです。

スタンバイ・サーバー(重複)として動作するデータベースをインストールするには、次の手順を実行します。

  1. スタンバイ・サーバーに必要なディレクトリを作成し、プライマリ・サーバー(primary_host)からスタンバイ・サーバー(standby_host)にファイルをコピーします。この例で、データベース名はdb11gで、データベースの一意の名前はdb11g_stbyです。

    tnsnames.ora
    $ mkdir -p /scratch/example_user/app/example_user/oradata/db11g
    $ mkdir -p /scratch/example_user/app/example_user/fast_recovery_area/db11g
    $ mkdir -p /scratch/example_user/app/example_user/admin/db11g/adump
    $ # Standby controlfile to all locations.
    $ scp example_user@primary_host:/tmp/db11g_stby.ctl /scratch/example_user/app/example_user/oradata/db11g/control01.ctl
    $ cp /scratch/example_user/app/example_user/oradata/db11g/control01.ctl /scratch/example_user/app/example_user/fast_recovery_area/db11g/control02.ctl
     
    $ # Parameter file.
    $ scp example_user@primary_host:/tmp/initdb11g_stby.ora /tmp/initdb11g_stby.ora
     
    $ # Remote login password file.
    $ scp example_user@primary_host:$ORACLE_HOME/dbs/orapwdb11g $ORACLE_HOME/dbs
    
  2. 次のエントリを含むようにリスナー構成ファイルlisten.oraを編集します。

    SID_LIST_LISTENER =
        (SID_LIST =
            (SID_DESC =
                (GLOBAL_DBNAME = db11g.example.com)
                (ORACLE_HOME = /scratch/example_user/app/example_user/product/11.2.0/dbhome_1)
                (SID_NAME = db11g)
            )
            (SID_DESC =
                 (GLOBAL_DBNAME = db11g_stby_DGMGRL.example.com)
                 (ORACLE_HOME = /scratch/example_user/app/example_user/product/11.2.0/dbhome_1)
                 (SID_NAME = db11g)
            )
            (SID_DESC =
                 (GLOBAL_DBNAME = db11g_stby_DGB.example.com)
                 (ORACLE_HOME = /scratch/example_user/app/example_user/product/11.2.0/dbhome_1)
                 (SID_NAME = db11g)
            )
        )
     
    LISTENER =
        (DESCRIPTION_LIST =
            (DESCRIPTION =
                (ADDRESS = (PROTOCOL = TCP)(HOST = standby_host.example.com)(PORT = 1521))
            )
            (DESCRIPTION =
                (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
            )
        )
     
    ADR_BASE_LISTENER = /scratch/example_user/app/example_user
    ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER=ON # line added by Agent
    
  3. リスナーがスタンバイ・サーバーで開始されることを確認します。

    $ lsnrctl start
    
  4. DUPLICATEコマンドを使用して、プライマリ・サーバーにスタンバイREDOログを作成します。スタンバイREDOログは、プライマリ・データベースがスイッチオーバー用に構成されるように、プライマリ・サーバーに作成されます。たとえば、次のように入力します。

    ALTER DATABASE ADD STANDBY LOGFILE ('/scratch/example_user/app/example_user/oradata/db11g/standby_redo01.log') SIZE 50M;
    ALTER DATABASE ADD STANDBY LOGFILE ('/scratch/example_user/app/example_user/oradata/db11g/standby_redo02.log') SIZE 50M;
    ALTER DATABASE ADD STANDBY LOGFILE ('/scratch/example_user/app/example_user/oradata/db11g/standby_redo03.log') SIZE 50M;
    ALTER DATABASE ADD STANDBY LOGFILE ('/scratch/example_user/app/example_user/oradata/db11g/standby_redo04.log') SIZE 50M;
    
  5. DUPLICATEコマンドを使用して、スタンバイを作成します。

    1. 一時init.oraファイルを使用して、スタンバイ・サーバーで補助インスタンスを開始します。たとえば、次のように入力します。

      $ export ORACLE_SID=db11g
      $ sqlplus / as sysdba
       
      SQL> STARTUP NOMOUNT PFILE='/tmp/initdb11g_stby.ora';
      
    2. TARGETAUXILLARYの両方のインスタンスの完全な接続文字列を指定して、RMANに接続します。OS認証は使用しないでください。

      $ rman TARGET sys/password@db11g AUXILIARY sys/password@db11g_stby
      
    3. 次のDUPLICATEコマンドを実行します。

      DUPLICATE TARGET DATABASE
      FOR STANDBY
      FROM ACTIVE DATABASE
      DORECOVER
      SPFILE
      SET db_unique_name='db11g_stby' COMMENT 'Is standby'
      SET LOG_ARCHIVE_DEST_2='SERVICE=db11g ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=db11g'
      SET FAL_SERVER='db11g' COMMENT 'Is primary'
      NOFILENAMECHECK;
      
  6. 再起動します。

    SHUTDOWN IMMEDIATE;
    STARTUP MOUNT;
    ALTER DATABASE OPEN READ ONLY;
    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
    select status,instance_name,database_role,open_mode from v$database,v$instance;
    
    

14.5.3 ログ転送のテスト

2つのサイト間でログ・ファイルが転送されることを確認するために、プライマリ・サーバーからスタンバイ・サーバーに強制的にスイッチオーバーします。

2つのサイトでログ・ファイルの転送を確認するには、次の手順を実行します。

  1. プライマリ・サーバーで、最新のアーカイブREDOログを確認し、ログ切替えを強制します。たとえば、次のように入力します。

    ALTER SESSION SET nls_date_format='DD-MON-YYYY HH24:MI:SS';
     
    SELECT sequence#, first_time, next_time
    FROM v$archived_log
    ORDER BY sequence#;
     
    ALTER SYSTEM SWITCH LOGFILE;
    
  2. スタンバイ・サーバーで、新しいアーカイブREDOログが到着し、適用されたことを確認します。たとえば、次のように入力します。

    ALTER SESSION SET nls_date_format='DD-MON-YYYY HH24:MI:SS';
     
    SELECT sequence#, first_time, next_time, applied
    FROM v$archived_log
    ORDER BY sequence#;
    

14.5.4 Oracle Data Guard Brokerの構成

Oracle Data Guard Brokerを構成するには、次の手順を実行します。

  1. プライマリ・データベースおよびスタンバイ・データベースで、DMONバックグラウンド・プロセスを開始します。

    connect sys/welcome1@db11g as sysdba
    alter system set dg_broker_start=true;
     
    connect sys/welcome1@db11g_stby as sysdba
    alter system set dg_broker_start=true;
    
  2. Oracle Data Guard Managerのラインモードを呼び出して構成します。たとえば、次のように入力します。

    dgmgrl
    Help
     
    connect sys/welcome1@db11g
    create configuration myconfig as primary database is db11g connect identifier is db11g;
    add database db11g_stby as connect identifier is db11g_stby maintained as physical;
    enable configuration;
    show configuration;
    
  3. MA保護モードに変更します。

    edit database db11g set property LogXptMode=SYNC;
    edit database db11g_stby set property LogXptMode=SYNC;
    edit configuration set protection mode as maxavailability;
    

ファスト・スタート・フェイルオーバーでは、プライマリ・データベースが消失した場合、ブローカにより、事前に選択されたスタンバイ・データベースに自動的にフェイルオーバーできます。ファスト・スタート・フェイルオーバーでは、ターゲット・スタンバイ・データベースがプライマリ・データベース・ロールに迅速かつ確実にフェイルオーバーされます。このとき、手動手順を実行してフェイルオーバーを起動する必要はありません。ファスト・スタート・フェイルオーバーはブローカ構成でのみ使用でき、DGMGRLまたはEnterprise Managerによってのみ構成できます。

ファスト・スタート・フェイルオーバーを有効化するには、次の手順を実行します。

  1. ファスト・スタート・フェイルオーバーを有効化します。

    EDIT DATABASE db11g SET PROPERTY FastStartFailoverTarget = db11g_stby;
    EDIT DATABASE db11g_stby SET PROPERTY FastStartFailoverTarget = db11g;
    EDIT CONFIGURATION SET PROPERTY FastStartFailoverThreshold = 30;
    SQL> select flashback_on from v$database;
    SQL> alter database flashback on;
    

    注意:

    Editコマンドは、DGMGRLコンソールで実行してください。

  2. 別のホストでオブザーバを起動します。

    DGMGRL> connect sys/welcome1@db11g_stby
    DGMGRL> START OBSERVER;
    Turn on flashback by sqlplus
    
  3. DGMGRLコンソールで次のコマンドを実行します。

    ENABLE FAST_START FAILOVER;\
    

14.5.5 フェイルオーバーおよびスイッチオーバーのテスト

手動スイッチオーバーおよびフェイルオーバーをテストするには、次の手順を実行します。

  1. スイッチオーバーおよびフェイルオーバーを次のようにテストします。

    1. スイッチオーバーをテストするには、次を実行します。

      dgmgrl>connect sys/welcome1@db11g
       
      dgmgrl>switchover to db11g_stby;
      
    2. フェイルオーバーをテストするには、次を実行します。

      dgmgrl>connect sys/oracle@db11g_stby
       
      dgmgrl>failover to db11g_stby;
      
  2. 障害をシミュレーションして、ファスト・スタート・フェイルオーバーをテストします。たとえば、次のように入力します。

    1. 障害をシミュレーションするために、現在のプライマリ・データベースを停止します。

      SQL> connect sys/welcome1@db11g as sysdba
       
      SQL> shutdown abort 
      
    2. 20秒間待機し、オブザーバによってファイルオーバーが開始されたことを確認します。

      After 20 seconds has lapsed, The observer has initiated a failover.
       
      00:37:13.65 Thursday, May 30, 2013
       
      Initiating Fast-Start Failover to database "db11g_stby"...
       
      Performing failover NOW, please wait...
       
      Failover succeeded, new primary is "db11g_stby"
       
      00:37:20.67 Thursday, May 30, 2013 
      
    3. 新しいプライマリ・サーバーがdb11g_stbyであることを確認します。

      DGMGRL> show configuration 
      

14.5.6 Oracle ASMの仮想デバイスの構成

Oracle ASMには仮想デバイスが必要です。losetupコマンドを使用して、実際のディスク・デバイスのかわりに仮想デバイスを作成します。

rootでログインし、次の例のように、Oracle ASM用の仮想デバイスを作成します。

mkdir /scratch/example_user/asmdisks
chown example_user:dba /asmdisks
 
dd if=/dev/zero of=/scratch/example_user/asmdisks/_file_disk1 bs=1k count=100000
dd if=/dev/zero of=/scratch/example_user/asmdisks/_file_disk2 bs=1k count=100000
dd if=/dev/zero of=/scratch/example_user/asmdisks/_file_disk3 bs=1k count=100000
dd if=/dev/zero of=/scratch/example_user/asmdisks/_file_disk4 bs=1k count=100000
 
 
"/sbin/losetup /dev/loop1 /scratch/example_user/asmdisks/_file_disk1"
"/sbin/losetup /dev/loop2 /scratch/example_user/asmdisks/_file_disk2"
"/sbin/losetup /dev/loop3 /scratch/example_user/asmdisks/_file_disk3"
"/sbin/losetup /dev/loop4 /scratch/example_user/asmdisks/_file_disk4"
 
"/bin/raw /dev/raw/raw1 /dev/loop1"
"/bin/raw /dev/raw/raw2 /dev/loop2"
"/bin/raw /dev/raw/raw3 /dev/loop3"
"/bin/raw /dev/raw/raw4 /dev/loop4"
 
"chown jianxliu:dba /dev/raw/raw1"
"chown jianxliu:dba /dev/raw/raw2"
"chown jianxliu:dba /dev/raw/raw3"
"chown jianxliu:dba /dev/raw/raw4"
 
"chmod 660 /dev/raw/raw1"
"chmod 660 /dev/raw/raw2"
"chmod 660 /dev/raw/raw3"
"chmod 660 /dev/raw/raw4"

14.5.7 Oracle Restartの構成

Oracle Databaseの後にOracle Restartをインストールした場合は、srvctlコマンドを使用してデータベース・コンポーネントをOracle Restartに登録する必要があります。


注意:

サービスの再起動によって次のことが適用されます。
  • distribution.example.comサービスは、redoを使用して情報が物理スタンバイに伝播されるように、プライマリ・データベース上でSRVCTL START SERVICEを使用して明示的に開始し、SRVCTL STOP SERVICEを使用して停止する必要があります。例: srvctl start service -d db11g_stby -s distribution.example.com

  • Oracle Data Guardの自動または手動フェイルオーバー後にロール変更が発生した場合は、常に、管理サービスと分散サービスの両方が開始され、プライマリ・サーバーとスタンバイ・サーバーの両方で実行されていることを確認してください。実行されていない場合は、サービスを開始してください。


データベースの後にOracle Restartがインストールされた場合にデータベース・コンポーネントを登録するには、プライマリ・サーバーとスタンバイ・サーバーの両方で次の手順を実行します。

  1. データベースを追加し、ORACLE_HOMEがデータベース・ホームに設定されていることを確認します。たとえば、次のように入力します。

    srvctl add database -d db11g -o $ORACLE_HOME -r PRIMARY
    srvctl add database -d db11g_stby -o $ORACLE_HOME -r PHYSICAL_STANDBY -s MOUNT
    
  2. リスナーがデータベース・ホームから開始された場合は、ORACLE_HOMEがデータベース・ホームに設定されていることを確認して、リスナーを追加します。

    srvctl add listener -o $ORACLE_HOME
    
  3. Oracle BrokerのOracle通知サービス(ONS/eONS)を追加し、ORACLE_HOMEがOracle Grid Infrastructureホームに設定されていることを確認します。たとえば、次のように入力します。

    srvctl add ons
    srvctl enable ons
    srvctl start ons
    srvctl status ons
     
    srvctl add eons
    srvctl enable eons
    srvctl start eons
    srvctl status eons
    

    デフォルトでは、ローカル・クライアント接続用のONSリスニング・ポートは6100で、リモート・ホストからの接続用は6200です。

  4. データベース・サービスを追加し、ORACLE_HOMEがデータベース・ホームに設定されていることを確認します。たとえば、次のように入力します。

    1. プライマリ・データベース:

      srvctl add service -d db11g -s manage.example.com -l PRIMARY -y AUTOMATIC -q FALSE -e NONE -m NONE -w 0 -z 0
      srvctl add service -d db11g -s distribution.example.com -l PHYSICAL_STANDBY,PRIMARY -y AUTOMATIC -q FALSE -e NONE -m NONE -w 0 -z 0
       
      
    2. スタンバイ・データベース:

      srvctl add service -d db11g_stby -s manage.example.com -l PRIMARY -y AUTOMATIC -q FALSE -e NONE -m NONE -w 0 -z 0
      srvctl add service -d db11g_stby -s distribution.example.com -l PHYSICAL_STANDBY,PRIMARY -y AUTOMATIC -q FALSE -e NONE -m NONE -w 0 -z 0
      
  5. サービスの追加後に、Oracle Databaseを再起動します。

    shutdown immediate;
    startup;
    

14.5.8 スタンドアロン・サーバー用のOracle Grid Infrastructureのインストール

Oracle RestartとOracle Automatic Storage Management (Oracle ASM)の両方が必要であり、構成する必要があります。これらはどちらも、スタンドアロン・サーバー・インストール用のOracle Grid Infrastructureに含まれています。

スタンドアロン・サーバー・インストール用のOracle Grid Infrastructureがprimary_hoststandby_hostの両方にない場合は、『Oracle Databaseインストレーション・ガイド』の指示に従ってください。

14.5.9 OPSSスキーマのインストール

プライマリ・データベースでOracle Fusion Middlewareリポジトリ作成ユーティリティ(RCU)を実行します。終了後、OPSSスキーマはスタンバイ・データベースに伝播が可能になります。RCUの使用方法の詳細は、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のデータベース要件に関する説明を参照してください。

14.5.10 プライマリ管理コンソールのインストール

プライマリOracle Entitlements Server管理コンソールをインストールします。Oracle Entitlements Server管理コンソールのインストール手順については、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』の「Oracle Entitlements Serverのインストールと構成」を参照してください。

インストールの際に次の点に注意してください。

  • Weblogicドメインをインストールするためにconfig.shスクリプトを実行する場合は、GridLinkを選択してデータソースを作成します。

  • GridLinkデータソース用のリスナーを入力する場合は、第1リスナーとしてプライマリ・データベースを追加します。

  • configureSecurityStore.pyスクリプトを実行する場合は、-m createオプションがパラメータに追加されていることを確認します。たとえば、次のように入力します。

    MW_HOME/oracle_common/common/bin/wlst.sh MW_HOME/Oracle_IDM1/common/tools/configureSecurityStore.py
    -d /scratch/example_user/Oracle/Middleware/user_projects/domains/domainname/ -t DB_ORACLE -j cn=jpsroot -m create -p welcome1
    
  • HAフェイルオーバー・モードの操作をサポートするように、JPS構成ファイルを次のように編集します。

    $MW_HOME/user_projects/domains/domainname/config/fmwconfig/jps-config.xml
    
    

    opss-jdbc.xmlにデータソース・プロパティ用に構成されたGridlinkのJDBC URLは、WebLogic Serverで切替えに使用されます。jps-config.xmlファイルを編集して、props.db.1の下で次のプロパティ・エントリをコメント・アウトします。

    jdbc.url
     
    jdbc.driver
     
    bootstrap.security.principal.map
     
    bootstrap.security.principal.key
     
    

    $MW_HOME/user_projects/domains/domainname/config/fmwconfig/jps-config-jse.xmlを次のように編集します。

    <property name="jdbc.url" value="jdbc:oracle:thin:@(DESCRIPTION_LIST = (LOAD
    _BALANCE = off) (FAILOVER = on)(DESCRIPTION = (ADDRESS_LIST = (ADDRESS =
     (PROTOCOL = TCP)(HOST = primary.example.com)(PORT = 1521)))(CONNECT_DATA =
     (SERVICE_NAME = manage.example.com)))(DESCRIPTION = (ADDRESS_LIST = (ADDRESS
     = (PROTOCOL = TCP)(HOST = standby.example.com)(PORT = 1521)))(CONNECT_DATA =
     (SERVICE_NAME = manage.example.com))))"/>
    

    $MW_HOME/user_projects/domains/domainname/config/jdbc/opss-jdbc.xmlを次のように編集します。

    <url>jdbc:oracle:thin:@(DESCRIPTION_LIST = (LOAD_BALANCE = off) (FAILOVER =
     on)(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =
     primary.example.com)(PORT = 1521)))(CONNECT_DATA = (SERVICE_NAME =
     manage.example.com)))(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
     TCP)(HOST = standby.example.com)(PORT = 1521)))(CONNECT_DATA = (SERVICE_NAME
     = manage.example.com))))</url>
    

14.5.11 セカンダリ管理コンソールのインストール

セカンダリOracle Entitlements Server管理コンソールをインストールします。インストールの際に次の点に注意してください。

  • 14.5.10項「プライマリ管理コンソールのインストール」の手順に従ってGridLinkデータソースを作成し、manage.example.comのかわりにdistribution.example.comを使用し、第1ホストはスタンバイ・データベースにします。

  • プライマリ・ドメインからEncryptionKeyをエクスポートします。たとえば、次のように入力します。

    exportEncryptionKey(jpsConfigFile="/scratch/example_user/Oracle/Middleware/
    user_projects/domains/domainname/config/fmwconfig/jps-config.xml",keyFilePath="/net/
    standby_host/scratch/example_user/keydir",keyFilePassword="welcome1")
    
  • configureSecurityStore.pyスクリプトを実行する場合は、-m joinオプションが追加されていること、およびファーム名がプライマリ管理コンソールのインストール時に使用したものに設定されていることを確認します。たとえば、次のように入力します。

    MW_HOME/oracle_common/common/bin/wlst.sh MW_HOME/Oracle_IDM1/common/tools/configureSecurityStore.py
    -d /scratch/example_user/Oracle/Middleware/
    user_projects/domains/domainname/ -t DB_ORACLE -j cn=jpsroot -m join -f
     domainname -p welcome1 -k /net/standby_host/scratch/example_user/keydir -w welcome1 --create_diagnostic_data
    
  • HAフェイルオーバー・モードの操作をサポートするように、JPS構成ファイルを編集します。たとえば、次のように入力します。

    $MW_HOME/user_projects/domains/domainname/config/fmwconfig/jps-config.xml
    

    opss-jdbc.xmlにデータソース・プロパティ用に構成されたGridlinkのJDBC URLは、WebLogic Serverで切替えに使用されます。jps-config.xmlファイルを編集して、props.db.1の下で次のプロパティ・エントリをコメント・アウトします。

    dbc.url
     
    jdbc.driver
     
    bootstrap.security.principal.map
     
    bootstrap.security.principal.key
     
    

    $MW_HOME/user_projects/domains/domainname/config/fmwconfig/jps-config-jse.xmlを次のように編集します。

    property name="jdbc.url" value="jdbc:oracle:thin:@(DESCRIPTION_LIST = (LOAD
    _BALANCE = off) (FAILOVER = on)(DESCRIPTION = (ADDRESS_LIST = (ADDRESS =
     (PROTOCOL = TCP)(HOST = standby.example.com)(PORT = 1521)))(CONNECT_DATA =
     (SERVICE_NAME = distribution.example.com)))(DESCRIPTION = (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = primary.example.com)(PORT =
     1521)))(CONNECT_DATA = (SERVICE_NAME = distribution.example.com))))"/>
    

    $MW_HOME/user_projects/domains/domainname/config/jdbc/opss-jdbc.xmlを次のように編集します。

    <url>jdbc:oracle:thin:@(DESCRIPTION_LIST = (LOAD_BALANCE = off) (FAILOVER =
     on)(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =
     standby.example.com)(PORT = 1521)))(CONNECT_DATA = (SERVICE_NAME =
     distribution.example.com)))(DESCRIPTION = (ADDRESS_LIST = (ADDRESS =
     (PROTOCOL = TCP)(HOST = primary.example.com)(PORT = 1521)))(CONNECT_DATA =
     (SERVICE_NAME = distribution.example.com))))</url>
    
  • インストール後に、WebLogic Server Consoleを起動して、GridLinkデータソースのJDBC接続の第1ホストを、ローカルのstandby_hostに変更します。

14.5.12 セキュリティ・モジュールの構成

マルチサイト環境で稼働する場合、セキュリティ・モジュールは制御プル・モードに構成する必要があります。

セキュリティ・モジュール構成するには、次の手順を実行します。

  1. マルチサイト構成を有効化するための-multisiteパラメータとともにconfig.shコマンドを使用して、ドメイン(プル・モード)を構成します。

    • WebLogic Serverドメインの場合:

      config.sh -smType wls -smConfigId wlsPullDomain -serverLocation  <MiddlewareHome>/wlsserver10.3 -multisite
      
    • Tomcatドメインの場合:

      config.sh -smType tomcat -smConfigId tomcatSmPull -serverLocation /scratch/oesuser/tomcat7/ -multisite
      
  2. primary JdbcURLの入力が求められた場合は、次の例のような情報を指定します。

    jdbc:oracle:thin:@(DESCRIPTION_LIST = (LOAD_BALANCE = off) (FAILOVER =
     on)(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =
     primary-host.example.com)(PORT = 1522)))(CONNECT_DATA = (SERVICE_NAME =
     manage.example.com)))(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
     TCP)(HOST = standby-host.example.com)(PORT = 1521)))(CONNECT_DATA = (SERVICE
    _NAME = manage.example.com))))
    
  3. Onsserverの入力が求められた場合は、次の例のような情報を指定します。

    nodes=primary-host.example.com:6200,standby-host.example.com:6200
    
  4. スタンバイ・サイトのsmconfig.prpファイルを編集して、次の例のようなエントリを含めます。

    #  Policy distribution mode.
    oracle.security.jps.runtime.pd.client.policyDistributionMode=controlled-pull
     
         # Policy Store URL for DB policy store
    jdbc.url=jdbc:oracle:thin:@(DESCRIPTION_LIST = (LOAD_BALANCE = off)
     (FAILOVER = on)(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
     TCP)(HOST = standby-host.example.com)(PORT = 1521)))(CONNECT_DATA = (SERVICE
    _NAME = distribution.example.com)))(DESCRIPTION = (ADDRESS_LIST = (ADDRESS =
     (PROTOCOL = TCP)(HOST = primary-host.example.com)(PORT = 1521)))(CONNECT_DATA
     = (SERVICE_NAME = distribution.example.com))))
     
        # Primary Policy Store URL for Mutli-site Deployment
    oracle.security.jps.runtime.pd.client.multisite.primaryJdbcUrl=jdbc:oracle:th
    in:@(DESCRIPTION_LIST = (LOAD_BALANCE = off) (FAILOVER = on)(DESCRIPTION =
     (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST =
     primary-host.example.com)(PORT = 1522)))(CONNECT_DATA = (SERVICE_NAME =
     manage.example.com)))(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
     TCP)(HOST = standby-host.example.com)(PORT = 1521)))(CONNECT_DATA = (SERVICE
    _NAME = manage.example.com))))
     
        # Oracle Notification Servers for Mutli-site Deployment
    oracle.security.jps.runtime.pd.client.multisite.onsserver=nodes=primary-host.
    example.com:6200,standby-host.example.com:6200
    
  5. プライマリ・サイトのsmconfig.prpファイルを編集して、次の例のようなエントリを含めます。スタンバイ・サイトのsmconfig.prpファイルとは次のような違いがあります。

    • jdbc.urlプロパティは、SERVICE_NAMEmanage.example.comとして参照します。

    • URLの第1ホストはプライマリ・ホストで、次にスタンバイ・ホストが続きます。

     jdbc.url=jdbc:oracle:thin:@(DESCRIPTION_LIST = (LOAD_BALANCE = off)
     (FAILOVER = on)(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL =
     TCP)(HOST = primary-host.example.com)(PORT = 1521)))(CONNECT_DATA = (SERVICE
    _NAME = manage.example.com)))(DESCRIPTION = (ADDRESS_LIST = (ADDRESS =
     (PROTOCOL = TCP)(HOST = standby-host.example.com)(PORT = 1521)))(CONNECT_DATA
     = (SERVICE_NAME = manage.example.com))))