管理サーバーのフェイルオーバーの設定

独立デプロイメントのEssbaseは管理対象サーバーとして実行され、プライマリ・ノードで障害が発生した場合に起動、停止およびフェイルオーバー・モードに移行するために、WebLogic管理サーバーに依存します。

Essbaseは、プライマリ・ホストが使用できなくなった場合に、複数のホストでフェイルオーバー・モードで設定できます。また、Essbaseフェイルオーバー・ノードを確実に初期化できるように、高可用性のためにWebLogic管理サーバーを設定することをお薦めします。

このトピックでは、Essbaseフェイルオーバー構成でAdminServerの高可用性を設定するためのガイドラインを示します。WebLogic AdminServerの高可用性の詳細は、管理サーバーの高可用性を参照してください。

Essbase管理対象サーバーの高可用性の事前構成

Essbaseに使用されるWebLogic管理対象サーバーの高可用性を有効にするには、次の構成を完了します。

  1. WebLogicサーバー管理コンソールにログインします。

  2. ホーム・ページの「ドメイン構造」で、Essbaseドメイン名(essbase_domainなど)をクリックします。


    WebLogicコンソールでは、essbase_domainはドメイン構造のルートです。

  3. タブを使用して、「セキュリティ」→「組込みLDAP」に移動します。


    essbase_domainで「セキュリティ」→「組込みLDAP」タブを開いたWebLogicコンソール。

  4. 次のオプションの選択を解除し、「保存」をクリックします。


    WebLogicの「組込みLDAP」設定の「マスター優先」オプションの選択が解除されています。

  5. ホスト1にSSHでアクセスし、Essbase (AdminServerと両方の管理対象サーバー)を再起動します(「サーバーの停止、起動および確認」を参照)。

    ノート:

    EPM Shared Servicesデプロイメントでのみ、Essbase管理対象サーバーを起動する前にEPMのWebLogicサーバーを起動する必要があります。

    各サーバーの起動と停止を個別に行うために、-iパラメータでサーバー名を指定します。

    Linuxの例(起動):

    <Domain Home>/esstools/bin/start.sh -i essbase_server1

    Windowsの例(起動):

    <Domain Home>\esstools\bin\start.cmd -i essbase_server1

管理サーバーの高可用性の設定

前提条件

Essbaseフェイルオーバー環境でWebLogic管理サーバー高可用性を設定するには、次のようにします。

  1. プライマリ・ノード(ホスト1)に仮想IPアドレス(VIP)を作成します。

    Linuxのipコマンドを使用します。構文は、次のとおりです:

    ip addr add <VIP>/<NETMASK> dev <INTERFACE> label <LABEL_NAME>

    例:

    ip addr add 100.xx.xx.1/20 dev ens3 label ens3:2
  2. Essbaseフェイルオーバー環境を設定します(「フェイルオーバー設定スクリプトを使用したEssbaseフェイルオーバー環境の設定」を参照)。

  3. Essbaseフェイルオーバー環境の設定が成功したことをテストします(「Essbaseフェイルオーバー構成の開始と検証」を参照)。

  4. WebLogicサーバー管理コンソールにログインします。

  5. ホーム・ページの「ドメイン構成」→「環境」で、「サーバー」に移動し、「AdminServer」をクリックします。

  6. 「チェンジ・センター」ペインで、「ロックして編集」をクリックします。


    「ロックして編集」ボタンがフォーカスされているWebLogic管理コンソールの「チェンジ・センター」セクション

  7. 「リスニング・アドレス」を仮想IP (VIP)アドレスに変更します。

  8. 「保存」をクリックします。

  9. 「変更のアクティブ化」をクリックします。


    WebLogic管理コンソールの「チェンジ・センター」セクション。「変更のアクティブ化」ボタンに注目しています

  10. 管理サーバーを再起動します。

  11. WebLogicサーバー管理コンソールに再度ログインします。

  12. ドメイン構造の下で、「環境」→「マシン」に移動します。


    WebLogicコンソール・ドメイン構造ツリー。essbase_domainの下で、「環境」が展開され、「マシン」が選択されています。

  13. 「ロックして編集」をクリックし、「新規」をクリックしてadminmachineという名前の新しいマシンを追加します。「マシンのOS」を「Unix」に設定し、「次」をクリックします。


    WebLogicコンソールの「新しいマシンの作成」ワークフローの「マシン・アイデンティティ」セクション

  14. ノード・マネージャの「タイプ」をSSLに設定し、「リスニング・アドレス」を仮想IP (VIP)アドレスに設定して、ポートを9557に設定します。「終了」をクリックします。


    WebLogicコンソールの「新しいマシンの作成」ワークフローの「ノード・マネージャのプロパティ」セクション

  15. 「マシンのサマリー」表で、新しいadminmachineのリンクをクリックし、「構成」タブ、「サーバー」タブの順にクリックします。

  16. 「追加」をクリックし、「AdminServer」を選択して「終了」をクリックします。


    WebLogicコンソールの「マシンにサーバーを追加」ダイアログ

  17. Essbaseプライマリ・ノード(ホスト1)にSSH接続し、<Domain_Home>/servers/AdminServerに移動して、ディレクトリnodemanagerを作成します。

  18. nodemanagerディレクトリに移動し、nodemanager.domainsおよびnodemanager.propertiesという2つの新しいファイルを作成します。

    nodemanager.domainsのサンプル(自分でインストールしたEssbaseドメイン名およびパスと一致するように値を置き換えます):

    essbase_domain=/u01/oracle/user_projects/domains/essbase_domain

    nodemanager.propertiesのサンプル(自分でインストールしたEssbaseドメイン名およびパスと一致するように値を置き換えます):

    DomainsFile=/u01/oracle/user_projects/domains/essbase_domain/servers/AdminServer/nodemanager/nodemanager.domains
    LogLimit=0
    PropertiesVersion=12.2.1.1.0
    AuthenticationEnabled=true
    NodeManagerHome=/u01/oracle/user_projects/domains/essbase_domain/servers/AdminServer/nodemanager
    JavaHome=/u01/app/oracle/product/JAVA/jdk
    LogLevel=INFO
    DomainsFileEnabled=true
    ListenAddress=100.xx.xx.1
    NativeVersionEnabled=true
    ListenPort=9557
    LogToStderr=true
    weblogic.StartScriptName=startWebLogic.sh
    SecureListener=true
    LogCount=1
    QuitEnabled=false
    LogAppend=true
    weblogic.StopScriptEnabled=false
    StateCheckInterval=500
    CrashRecoveryEnabled=false
    weblogic.StartScriptEnabled=true
    LogFile=/u01/oracle/user_projects/domains/essbase_domain/servers/AdminServer/nodemanager/nodemanager.log
    LogFormatter=weblogic.nodemanager.server.LogFormatter
    ListenBacklog=50
  19. <Domain_Home>/binに移動します。例:

    cd /u01/oracle/user_projects/domains/essbase_domain/bin
  20. ノード・マネージャの起動スクリプトのコピーを新しい名前startNodeManagerAdmin.shで作成します。例:

    cp startNodeManager.sh startNodeManagerAdmin.sh
  21. startNodeManagerAdmin.shを開いて編集します。NODEMGR_HOMEの値を"<Domain_Home>/servers/AdminServer/nodemanager"に変更し、ファイルを保存します。例:

    NODEMGR_HOME="/u01/oracle/user_projects/domains/essbase_domain/nodemanager"
    
  22. <Domain_Home>/esstools/binに移動します。例:

    cd /u01/oracle/user_projects/domains/essbase_domain/esstools/bin
  23. AdminServerを停止します。例:

    ./stop.sh -i AdminServer
  24. <Domain_Home>/binに戻り、バックグラウンドでstartNodeManagerAdmin.shを実行します。例:

    cd /u01/oracle/user_projects/domains/essbase_domain/bin
    ./startNodeManagerAdmin.sh &
  25. ドメイン環境を設定します。例:

    source /u01/oracle/user_projects/domains/essbase_domain/bin/setDomainEnv.sh
  26. <ORACLE_HOME>/oracle_common/common/binにあるWebLogic Scripting Toolを実行します。例:

    /u01/oracle/user_projects/oracle_common/common/bin/wlst.sh
  27. wls:/offline>プロンプトで、ノード・マネージャに接続し、AdminServerを起動します。たとえば、次のコマンドを使用します(<variables>を値に置き換えます):

    wls:/offline> nmConnect('<WebLogic_admin_user>','<WebLogic_admin_password>', '<Virtual-IP-address>','9557','<DOMAIN_NAME>','<DOMAIN_HOME>','ssl')
    wls:/nm/mydomain> nmStart('AdminServer')

    例:

    wls:/offline> nmConnect('wladmin','wlpa55w0rD', '<100.xx.xx.1>','9557','essbase_domain','/u01/oracle/user_projects/domains/essbase_domain','ssl')
    wls:/nm/mydomain> nmStart('AdminServer')
  28. wlstを開いたままにして、仮想IPアドレスを使用してWebLogicサーバー管理コンソールにアクセスできることを確認します。例: http://100.xx.xx.1:7001/console

  29. AdminServerを停止します。

    wls:/nm/mydomain> nmKill('AdminServer')
  30. WebLogic Scripting Toolを終了します。例:

    exit()
  31. 共有ネットワーク・ドライブに移動し、Essbase <DOMAIN_NAME>と同じ名前の新しいディレクトリを作成します。例:

    cd /nfs/essbase_data
    mkdir essbase_domain
  32. Essbaseドメイン・サブディレクトリbinconfigおよび/servers/AdminServerを共有ドライブの新しいディレクトリに移動します。例:

    mv /u01/oracle/user_projects/domains/essbase_domain/bin /nfs/essbase_data/essbase_domain/
    mv /u01/oracle/user_projects/domains/essbase_domain/config /nfs/essbase_data/essbase_domain/
    mv /u01/oracle/user_projects/domains/essbase_domain/servers/AdminServer /nfs/essbase_data/essbase_domain/
  33. <Domain_Home>に戻り、共有ドライブ上のEssbaseドメイン・フォルダへのシンボリック・リンクを作成します。例:

    cd /u01/oracle/user_projects/domains/essbase_domain/
    ln -s /nfs/essbase_data/essbase_domain/bin .
    ln -s /nfs/essbase_data/essbase_domain/config .
    cd servers/
    ln -s /nfs/essbase_data/essbase_domain/AdminServer .
  34. Essbaseセカンダリ・ノード(ホスト2)にSSH接続し、<Domain_Home>に移動して、ディレクトリ構造/tmp/adminを作成します。例:

    cd /u01/oracle/user_projects/domains/essbase_domain
    mkdir /tmp/admin
  35. ドメイン・サブディレクトリbinconfigおよび/servers/AdminServer/tmp/adminに移動します。例:

    mv bin /tmp/admin/
    mv config /tmp/admin/
    mv ./servers/AdminServer /tmp/admin/
  36. 共有ドライブ上のEssbaseドメイン・フォルダへのシンボリック・リンクを作成します。例:

    
    ln -s /nfs/essbase_data/essbase_domain/bin .
    ln -s /nfs/essbase_data/essbase_domain/config .
    cd servers/
    ln -s /nfs/essbase_data/essbase_domain/AdminServer .

AdminServerの高可用性の検証

Essbaseフェイルオーバー環境でWebLogic AdminServerの高可用性を正常に設定したことを確認するには、Essbaseプライマリ・ノードおよびフェイルオーバー・ノードから、仮想IPアドレスを使用してWebLogicサーバー管理コンソールにアクセスできることをテストします。

  1. Essbaseプライマリ・ノード(ホスト1)にSSH接続し、<Domain_Home>/binに移動して、バックグラウンドでstartNodeManagerAdmin.shを実行します。例:

    cd /u01/oracle/user_projects/domains/essbase_domain/bin
    ./startNodeManagerAdmin.sh &
  2. ドメイン環境を設定します。例:

    source /u01/oracle/user_projects/domains/essbase_domain/bin/setDomainEnv.sh
  3. <ORACLE_HOME>/oracle_common/common/binにあるWebLogic Scripting Toolを実行します。例:

    /u01/oracle/user_projects/oracle_common/common/bin/wlst.sh
  4. wls:/offline>プロンプトで、ノード・マネージャに接続し、AdminServerを起動します。たとえば、次のコマンドを使用します(<variables>を値に置き換えます):

    wls:/offline> nmConnect('<WebLogic_admin_user>','<WebLogic_admin_password>', '<Virtual-IP-address>','9557','<DOMAIN_NAME>','<DOMAIN_HOME>','ssl')
    wls:/nm/mydomain> nmStart('AdminServer')

    例:

    wls:/offline> nmConnect('wladmin','wlpa55w0rD', '<100.xx.xx.1>','9557','essbase_domain','/u01/oracle/user_projects/domains/essbase_domain','ssl')
    wls:/nm/mydomain> nmStart('AdminServer')
  5. 仮想IPアドレスを使用してWebLogicサーバー管理コンソールにアクセスできることを確認します。例: http://100.xx.xx.1:7001/console

  6. AdminServerを停止します。

    wls:/nm/mydomain> nmKill('AdminServer')
  7. WebLogic Scripting Toolを終了します。例:

    exit()
  8. Essbaseセカンダリ・ノード(ホスト2)にSSH接続し、<Domain_Home>/binに移動して、バックグラウンドでstartNodeManagerAdmin.shを実行します。例:

    cd /u01/oracle/user_projects/domains/essbase_domain2/bin
    ./startNodeManagerAdmin.sh &
  9. ドメイン環境を設定します。例:

    source /u01/oracle/user_projects/domains/essbase_domain2/bin/setDomainEnv.sh
  10. <ORACLE_HOME>/oracle_common/common/binにあるWebLogic Scripting Toolを実行します。例:

    /u01/oracle/user_projects/oracle_common/common/bin/wlst.sh
  11. wls:/offline>プロンプトで、ノード・マネージャに接続し、AdminServerを起動します。たとえば、次のコマンドを使用します(<variables>を値に置き換えます):

    wls:/offline> nmConnect('<WebLogic_admin_user>','<WebLogic_admin_password>', '<Virtual-IP-address>','9557','<DOMAIN_NAME>','<DOMAIN_HOME>','ssl')
    wls:/nm/mydomain> nmStart('AdminServer')

    例:

    wls:/offline> nmConnect('wladmin','wlpa55w0rD', '<100.xx.xx.1>','9557','essbase_domain','/u01/oracle/user_projects/domains/essbase_domain2','ssl')
    wls:/nm/mydomain> nmStart('AdminServer')
  12. 仮想IPアドレスを使用してWebLogicサーバー管理コンソールにアクセスできることを確認します。例: http://100.xx.xx.1:7001/console