設定管理伺服器容錯移轉
獨立部署中的 Essbase 會以受管理伺服器的形式執行,並視 WebLogic 管理伺服器而定,以便在主要節點發生故障時啟動、停止及進入容錯移轉模式。
本主題包含使用 Essbase 容錯移轉組態設定 AdminServer 高可用性的準則。如需有關 WebLogic AdminServer 高可用性的一般資訊,請參閱管理伺服器高可用性。
預先設定 Essbase 受管理伺服器的高可用性
若要為用於 Essbase 的 WebLogic 受管理伺服器啟用高可用性,請完成下列組態。
-
登入 WebLogic 伺服器管理主控台。
-
在首頁的網域結構下,按一下 Essbase 網域名稱 (例如 essbase_domain)。

-
使用頁籤瀏覽至「安全性」>「嵌入式 LDAP」。

-
取消選取下列選項,然後按一下「儲存」。

-
SSH 至主機 1 並重新啟動 Essbase (AdminServer 和受管理伺服器),如停止、啟動及檢查伺服器中所述。
附註:
僅在 EPM Shared Services 部署中,應先啟動 EPM WebLogic Server ,再啟動 Essbase 受管理伺服器。若要個別啟動和停止每部伺服器,請將 -i 參數與伺服器名稱一起使用。
Linux 範例 (啟動):
<Domain Home>/esstools/bin/start.sh -i essbase_server1Windows 範例 (啟動):
<Domain Home>\esstools\bin\start.cmd -i essbase_server1
設定管理伺服器高可用性
先決條件
- 您已完成 Essbase 容錯移轉先決條件。
-
您有一個共用網路磁碟機,可供您設定容錯移轉的 Essbase 主機 (或全部) 存取。可以與 Essbase 容錯移轉先決條件中提及的位置相同。
若要設定 WebLogic 管理伺服器高可用性與 Essbase 容錯移轉環境,
-
在主要節點 (主機 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 -
設定 Essbase 容錯移轉環境,如使用容錯移轉設定指令碼設定 Essbase 故障移轉環境中所述。
-
測試 Essbase 容錯移轉環境設定是否成功 (請參閱啟動與驗證 Essbase 容錯移轉組態 )。
-
登入 WebLogic 伺服器管理主控台。
-
在首頁的「網域組態」>「環境」下,瀏覽至「伺服器」,然後按一下「管理伺服器」。
-
在變更中心窗格中,按一下鎖定並編輯。

-
將「監聽位址」變更為虛擬 IP (VIP) 位址。
-
按一下儲存。
-
按一下啟用變更。

-
重新啟動「管理伺服器」。
-
再次登入 WebLogic 伺服器管理主控台。
-
在網域結構下,瀏覽至「環境」>「機器」。

-
按一下鎖定與編輯,然後按一下「新建」以新增名為 adminmachine 的新機器。將機器作業系統設為 Unix,然後按一下「下一步」。

-
將「節點管理程式」類型設為 SSL,將「監聽位址」設為虛擬 IP (VIP) 位址,並將連接埠設為 9557。按一下「完成」。

-
在機器摘要表格中,按一下新管理機器的連結,然後按一下組態頁籤,再按一下伺服器頁籤。
-
按一下「新增」,選取 AdminServer ,然後按一下「完成」。

-
SSH 至 Essbase 主要節點 (主機 1),導覽至
<Domain_Home>/servers/AdminServer,然後製作目錄nodemanager。 -
瀏覽至
nodemanager目錄並建立兩個新檔案:nodemanager.domains和nodemanager.properties。nodemanager.domains範例 (取代值以符合您自己安裝的 Essbase 網域名稱和路徑):essbase_domain=/u01/oracle/user_projects/domains/essbase_domainnodemanager.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 -
瀏覽至
<Domain_Home>/bin。範例:cd /u01/oracle/user_projects/domains/essbase_domain/bin -
複製「節點管理程式」啟動命令檔,新名稱為
startNodeManagerAdmin.sh。範例:cp startNodeManager.sh startNodeManagerAdmin.sh -
開啟
startNodeManagerAdmin.sh進行編輯。將 NODEMGR_HOME 的值變更為"<Domain_Home>/servers/AdminServer/nodemanager",然後儲存檔案。範例:NODEMGR_HOME="/u01/oracle/user_projects/domains/essbase_domain/nodemanager" -
瀏覽至
<Domain_Home>/esstools/bin。範例:cd /u01/oracle/user_projects/domains/essbase_domain/esstools/bin -
停止 AdminServer。範例:
./stop.sh -i AdminServer -
導覽回
<Domain_Home>/bin,並在背景中執行startNodeManagerAdmin.sh。範例:cd /u01/oracle/user_projects/domains/essbase_domain/bin ./startNodeManagerAdmin.sh & -
設定網域環境。範例:
source /u01/oracle/user_projects/domains/essbase_domain/bin/setDomainEnv.sh -
執行位於
<ORACLE_HOME>/oracle_common/common/bin的 WebLogic Scripting Tool。範例:/u01/oracle/user_projects/oracle_common/common/bin/wlst.sh -
在
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') -
保持 wlst 開啟,檢查是否可使用虛擬 IP 位址存取 WebLogic 伺服器管理主控台。例如,
http://100.xx.xx.1:7001/console。 -
停止 AdminServer。
wls:/nm/mydomain> nmKill('AdminServer') -
結束 WebLogic 指令碼工具。範例:
exit() -
移至共用網路磁碟機,並使用與 Essbase <DOMAIN_NAME> 相同的名稱建立新目錄。範例:
cd /nfs/essbase_data mkdir essbase_domain -
將 Essbase 網域子目錄
bin、config和/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/ -
導覽回
<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 . -
SSH 至 Essbase 次要節點 (主機 2),導覽至
<Domain_Home>,然後將目錄結構設為/tmp/admin。範例:cd /u01/oracle/user_projects/domains/essbase_domain mkdir /tmp/admin -
將網域子目錄
bin、config和/servers/AdminServer移至/tmp/admin。範例:mv bin /tmp/admin/ mv config /tmp/admin/ mv ./servers/AdminServer /tmp/admin/ -
將符號連結到共用磁碟機上的 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 高可用性,請測試您是否可以使用虛擬 IP 位址,從 Essbase 主要節點和任何容錯移轉節點存取 WebLogic 伺服器管理主控台。
-
SSH 至 Essbase 主要節點 (主機 1),導覽至
<Domain_Home>/bin,然後在背景執行startNodeManagerAdmin.sh。範例:cd /u01/oracle/user_projects/domains/essbase_domain/bin ./startNodeManagerAdmin.sh & -
設定網域環境。範例:
source /u01/oracle/user_projects/domains/essbase_domain/bin/setDomainEnv.sh -
執行位於
<ORACLE_HOME>/oracle_common/common/bin的 WebLogic Scripting Tool。範例:/u01/oracle/user_projects/oracle_common/common/bin/wlst.sh -
在
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') -
檢查是否可以使用虛擬 IP 位址存取 WebLogic 伺服器管理主控台。例如,
http://100.xx.xx.1:7001/console。 -
停止 AdminServer。
wls:/nm/mydomain> nmKill('AdminServer') -
結束 WebLogic 指令碼工具。範例:
exit() -
SSH 至 Essbase 次要節點 (主機 2),導覽至
<Domain_Home>/bin,然後在背景執行startNodeManagerAdmin.sh。範例:cd /u01/oracle/user_projects/domains/essbase_domain2/bin ./startNodeManagerAdmin.sh & -
設定網域環境。範例:
source /u01/oracle/user_projects/domains/essbase_domain2/bin/setDomainEnv.sh -
執行位於
<ORACLE_HOME>/oracle_common/common/bin的 WebLogic Scripting Tool。範例:/u01/oracle/user_projects/oracle_common/common/bin/wlst.sh -
在
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') -
檢查是否可以使用虛擬 IP 位址存取 WebLogic 伺服器管理主控台。例如,
http://100.xx.xx.1:7001/console。