本章說明如何規劃、設定與配置 Sun Cluster 節點上的 Sun Cluster HA for SAP。
本章包含下列程序。
Sun Cluster HA for SAP 為 SAP應用程式提供錯誤監視與自動故障轉移的功能,以排除 SAP 系統中各部份的錯誤。下表列出在 Sun Cluster 配置中,提供 SAP 元件最佳保護的資料服務。您可以將 Sun Cluster HA for SAP 配置成具有故障轉移功能或具有延伸性的應用程式。
關於故障轉移和延伸性服務的概念性資訊,請參閱 Sun Cluster 3.0 12/01 概念。
表 B-1 SAP 元件受到的保護
SAP 元件 |
受此功能保護 |
---|---|
SAP 資料庫 |
若資料庫是 Oracle,則受到 Sun Cluster HA for Oracle 保護 |
SAP 中央實例 |
Sun Cluster HA for SAP,資源類型為 SUNW.sap_ci 或 SUNW.sap_ci_v2 |
SAP 應用程式伺服器 |
Sun Cluster HA for SAP,資源類型為 SUNW.sap_as 或 SUNW.sap_as_v2 |
NFS 檔案系統 |
Sun Cluster HA for NFS |
使用 scinstall(1M) 指令安裝 Sun Cluster HA for SAP。Sun Cluster HA for SAP 需要一個正常運作,且已安裝初始框架的叢集。關於叢集與資料服務軟體初始安裝的詳細資訊,請參閱 Sun Cluster 3.0 12/01 軟體安裝手冊。在您成功安裝 Sun Cluster 的基本元件與 SAP 軟體後,請註冊 Sun Cluster HA for SAP。
下表列出說明安裝與配置作業的段落。
表 B-2 對應作業:安裝與配置 Sun Cluster HA for SAP
作業 |
如需相關說明,請參閱... |
---|---|
規劃 SAP 安裝 |
"Sun Cluster HA for SAP 的配置準則"
|
|
|
升級 Sun Cluster HA for SAP | |
|
|
安裝 SAP 與資料庫,並將其配置成具有故障轉移功能的應用程式伺服器 |
|
或 |
|
安裝 SAP 與資料庫,並將其配置成具有延伸性的應用程式伺服器 |
|
|
|
配置適用於 DBMS 的 Sun Cluster HA | |
|
|
將 Sun Cluster HA for SAP 配置成擁有故障轉移功能的應用程式伺服器 |
"如何註冊與配置 Sun Cluster HA for SAP 中央實例"
|
或 |
|
將 Sun Cluster HA for SAP 配置成具有延伸性的應用程式伺服器 |
"如何註冊與配置 Sun Cluster HA for SAP 中央實例"
|
|
|
確認 Sun Cluster HA for SAP 的安裝與配置 |
"如何確認 Sun Cluster HA for SAP、中央實例與 DBMS 的安裝與配置"
"如何確認具有故障轉移功能之應用程式伺服器上所使用 Sun Cluster HA for SAP 的安裝與配置"
|
|
|
配置 SAP 的延伸屬性 | |
|
|
瞭解 Sun Cluster HA for SAP 錯誤監視器 |
規劃 Sun Cluster HA for SAP 的安裝之前,請閱讀以下資訊。
下表列出 Sun Cluster HA for SAP 支援的套件。
表 B-3 Sun Cluster 3.0 7/01 提供的 Sun Cluster HA for SAP 套件
資源類型 |
說明 |
---|---|
SUNW.sap_ci |
增加對故障轉移中央實例的支援 |
SUNW.sap_as |
增加對故障轉移應用程式伺服器的支援。 |
表 B-4 Sun Cluster 3.0 12/01 提供的 Sun Cluster HA for SAP 套件
資源類型 |
說明 |
---|---|
SUNW.sap_ci |
與 Sun Cluster 3.0 7/01 相同。請參閱 表 B-3。 |
SUNW.sap_as |
與 Sun Cluster 3.0 7/01 相同。請參閱 表 B-3。 |
SUNW.sap_ci_v2 |
在資源類型註冊 (Resource Type Registration,RTR) 檔案內新增資源屬性 Network_resources_used。 |
|
保留對故障轉移中央實例的支援。 |
SUNW.sap_as_v2 |
在 RTR 檔案中新增資源屬性 Network_resources_used。 增加對延伸性應用程式伺服器的支援。 |
|
保留對故障轉移應用程式伺服器的支援。 |
設計 Sun Cluster HA for SAP 配置時,請考慮以下準則。
使用符合 Sun Cluster 3.0 要求的 SAP 軟體版本。
使用具有自動重連佇列機制功能的 SAP 軟體版本 - Sun Cluster HA for SAP 需要這項功能。SAP 4.0 版軟體與修補資訊和更新版次,都應具有自動重連佇列機制的能力。
取得 sapstart 執行檔的最新修補程式 - 此修補程式可讓 Sun Cluster HA for SAP 使用者配置鎖定檔案。關於此修補程式其益處的詳細資訊,請參閱 "設立鎖定檔案"。
針對要安裝在 Sun Cluster 配置上的 SAP 軟體版次與資料庫,請閱讀所有相關的 SAP 線上服務系統注意事項 - 找出任何已知的安裝問題與解決方法
請查閱 SAP 軟體文件中,關於記憶體與交換區的建議 - SAP 軟體會耗用大量記憶體與交換區。
以較寬鬆的方式估計主管中央實例、資料庫實例與應用程式伺服器 (若採用內部應用程式伺服器) 之所有節點可能的總負載 - 若您希望發生故障時,叢集能確保中央實例、資料庫實例與應用程式伺服器都會出現在一個節點上,則請務必遵循此準則。
將用應用程式伺服器安裝在主管中央實例的同一個叢集上或另一個叢集上 - 若您在叢集環境之外安裝並配置任何應用程式伺服器,則 Sun Cluster HA for SAP 不會進行錯誤監視,也不會自動重新啟動,遇到故障時也不會進行這些應用程式伺服器的故障轉移。此時您必須手動啟動及關閉您在叢集環境之外所安裝和配置的應用程式伺服器。
節點的名稱應依照 SAP 安裝指南中的規定命名 - 這是 SAP 軟體的需求之一。
在多個叢集節點上建立所有的應用程式伺服器時,請使用相同的實例編號與 SID - 如此一來,只要使用一組指令即可維護多個節點上的所有應用程式伺服器,使維護與管理工作大幅簡化。
應用程式伺服器應該安裝在本機的叢集節點上,而不是在叢集檔案系統上 - 此準則能確保應用程式伺服器的 log/data/work/sec 目錄不會被另一支應用程式覆寫。
確定 SAPSIDadm 主目錄位於叢集檔案系統上 - 此準則讓您只需維護一組程序檔,便能提供所有節點上執行的應用程式伺服器實例使用。但如果有一些應用程式伺服器必須另外配置 (例如,使用不同設定檔的應用程式伺服器),則安裝這些應用程式伺服器時請使用不同的實例編號,並將它們配置到不同的資源群組內。
如果您希望較高優先順序的資源進行故障轉移時,能使用 RGOffload 的功能關閉一個或多個應用程式伺服器,則請將應用程式伺服器分散放在多個資源群組內 - 如果您想使用 RGOffload 的功能 (不同的資源類型) 卸載一個或多個資料庫的應用程式伺服器,此準則可提供您較富彈性與可用性的方式。此準則提供的功能,遠超過將應用程式伺服器置於一個大型群組內所帶來的簡化使用程度。關於使用 RGOffload 資源類型的詳細資訊,請參閱第 332 頁上的「卸載較不重要的資源群組以釋放節點資源」的說明。
關於目前所支援的最新版 SAP,請向您的「企業服務」代表洽詢。下圖顯示 Sun Cluster HA for SAP 配置的範例。
圖 B-2 中的配置是舊版 Sun Cluster 相當常見的配置方式。使用 Sun Cluster 3.0 軟體時,若要將其功能發揮到淋漓盡致,建議您依照 圖 B-1 或 圖 B-3 中的方式配置 SAP。
安裝 SAP 軟體之前,請先參閱 "安裝與配置 SAP 和資料庫",以了解以下需求。
建立了資料庫與 SAP 軟體所需的所有檔案系統之後,請建立裝載點,並將這些裝載點放入所有叢集節點上的 /etc/vfstab 檔案中 - 關於如何設定資料庫與 SAP 檔案系統的詳細資訊,請參閱 SAP 安裝指南 Installation of the SAP R/3 on UNIX 與 R/3 Installation on UNIX-OS Dependencies。
在所有叢集節點上建立必要的群組與使用者 - 關於如何建立 SAP 群組和使用者的詳細資訊,請參閱 SAP 安裝指南 Installation of the SAP R/3 on UNIX 與 R/3 Installation on UNIX-OS Dependencies。
若您打算安裝一些外部 SAP 應用程式伺服器,請在主管中央實例的叢集上配置 Sun Cluster HA for NFS - 關於如何配置 Sun Cluster HA for NFS 的詳細資訊,請參閱 Sun Cluster 3.0 12/01 Data Services Installation and Configuration Guide 中「安裝與配置 NFS 使用的 Sun Cluster HA」的說明。
設定 /etc/nsswitch.conf 檔案,讓資料服務在進行切換保護轉移或故障轉移時能夠正確啟動與停止 - 在有能力控制執行 Sun Cluster HA for SAP 邏輯主機的每個節點上,/etc/nsswitch.conf 檔案內必須擁有下列 group 的項目之一。
group: group: files group: files [NOTFOUND=return] nis group: files [NOTFOUND=return] nisplus |
Sun Cluster HA for SAP 使用 su user 指令啟動與停止資料庫節點。叢集節點的公用網路故障時,可能會導致網路資訊名稱服務中斷而無法使用。因此為 group 加入上述項目之一,以確保在名稱服務無法使用時,su(1M) 指令不會參照到 NIS/NIS+ 名稱服務。
安裝 SAP 軟體之前,請先參閱 "安裝與配置 SAP 和資料庫"、安裝 SAP 二進位程式與 SAP 使用者的主目錄。請將 SAP 二進制程式與使用者的主目錄安裝到叢集檔案系統上。不過將它們安裝到叢集檔案系統上,於將來 SAP 軟體版次升級時還是有些不方便。至於有哪些不便之處,請參閱第 3 頁的「決定應用程式二進制程式的位置」。
如 表 B-3 與 表 B-4 所示,Sun Cluster 3.0 7/01 所附的 Sun Cluster HA for SAP 套件並不支援具有延伸性的應用程式伺服器以及 Network_resources_used 資源屬性。因此您有以下幾種升級方式可以選擇。
保留 (不升級) 現有的 SUNW.sap_ci 與 SUNW.sap_as 資料類型。若您的環境符合以下任何一種狀況,建議您採用這種方式。
您無法排定停機時間。
不需要用到 Network_resources_used 資源屬性。
不需要配置具有延伸性的應用程式伺服器。
升級資源類型
請參閱 "如何升級資源類型,或將具有故障轉移功能的應用程式資源轉換成具有延伸性的應用程式資源",以取得關於如何升級資源類型的程序。
將具有故障轉移功能的應用程式資源轉換成具有延伸性的應用程式資源。
關於如何將具有故障轉移功能的應用程式資源轉換成具有延伸性的應用程式資源的程序,請參閱 "如何升級資源類型,或將具有故障轉移功能的應用程式資源轉換成具有延伸性的應用程式資源"。
若要升級資源類型,或將具有故障轉移功能的應用程式資源轉換成具有延伸性的應用程式資源,請執行下列步驟。您必須先排定停機時間才能執行此程序。
停用現有的資源。
將資源群組中現有的資源刪除。
刪除沒有其他資源使用的現有資源類型。
註冊新的資源類型。
您要執行的工作為何?
建立新的應用程式伺服器資源群組 scalable-_rg。
在此資源群組內建立新的資源。
請至 "如何註冊與配置延伸性應用程式伺服器的 Sun Cluster HA for SAP"。
請依照本節中所述的各項程序進行以下作業。
安裝 SAP 與資料庫。
安裝 SAP 與具有延伸性的應用程式伺服器。
啟用 SAP,讓它在叢集中執行。
確認 SAP 與資料庫搭配中央實例的安裝。
確認 SAP 與資料庫搭配具有故障轉移功能的應用程式伺服器的安裝。
若要安裝 SAP 與資料庫,請執行下列步驟。
在您要安裝中央實例的其中一個叢集節點上成為超級使用者。
將 SAP 二進制程式安裝到叢集檔案系統上。
將 SAP 軟體安裝到叢集檔案系統上之前,請先使用 scstat(1M) 指令確認 Sun Cluster 軟體是否完全運作正常。
在要執行 SAP 應用程式的所有叢集節點上,針對所有 SAP 所需的核心參數變更編輯 /etc/system 檔案。
編輯過 /etc/system 檔案後,請重新啟動每個節點。關於核心參數變更的詳細資訊,請參閱 SAP 文件 R/3 Installation on UNIX-OS Dependencies。
關於安裝中央實例、資料庫與應用程式伺服器實例的詳細資訊,請參閱 SAP 文件 Installation of the SAP R/3 on UNIX。
關於如何在 Sun Cluster 環境中安裝具有延伸性的應用程式伺服器的程序,請參閱 "如何安裝具有延伸性的應用程式伺服器的 SAP"。
請至 "如何在叢集中執行具有故障轉移功能的 SAP 實例" 或 "如何安裝具有延伸性的應用程式伺服器的 SAP"。
若要安裝具有延伸性的應用程式伺服器實例,請執行下列步驟。此程序假設您已安裝了中央實例與資料庫。
以下檔案系統的佈局不僅使用簡便,更能防止資料遭覆寫。
叢集檔案系統
/sapmnt/SID
/usr/sap/SID -> 除了 app-instance 子目錄之外的所有子目錄
/usr/sap/SID/home -> SAPSIDadm 主目錄
/usr/sap/trans
本機檔案系統
/usr/sap/local/SID/app-instance
建立叢集檔案系統上的所有 SAP 目錄。
請確定中央實例與資料庫均能進行故障轉移。
在叢集檔案系統上設定中央實例的鎖定檔案,以防止其他節點同時啟動。
關於如何在中央實例上設定鎖定檔案的程序,請參閱 "如何設立中央實例的鎖定檔案"。
請確定所有應用程式伺服器都能使用叢集檔案系統上的 SAP 二進制程式。
將中央實例與資料庫安裝到叢集檔案系統上。
關於如何安裝中央實例與資料庫的詳細資訊,請參閱 SAP 文件Installation of the SAP R/3 on UNIX。
在主管延伸性應用程式伺服器的所有節點上,為 data/log/sec/work 目錄建立一個本機目錄,以及啟動和停止應用程式伺服器的記錄檔。
您必須確實執行此步驟。如果未執行此步驟,便會不小心將另一個應用程式伺服器實例安裝到叢集檔案系統上,導致這兩個應用程式伺服器互相覆寫對方的資料。
為每個新的應用程式伺服器建立一個本機目錄。
範例:
# mkdir -p /usr/sap/local/SC3/D03 |
建立一個連結,從叢集檔案系統指向本機的應用程式伺服器目錄,以便在本機檔案系統上安裝應用程式伺服器與 start/stop 記錄檔。
範例:
# ln -s /usr/sap/local/SC3/D03 /usr/sap/SC3/D03 |
安裝應用程式伺服器。
編輯 start/stop 程序檔,讓每個節點都有自己的 startup/stop 記錄檔,並放在 sapsidadm 與 orasapsid 兩個使用者的主目錄內。
範例:
# vi startsap_D03 |
編輯前:
LOGFILE=$R3S_LOGDIR/`basename $0.log` |
編輯後:
LOGFILE=$R3S_LOGDIR/`basename $0`_`uname -n`.log |
將應用程式伺服器複製到要執行延伸性應用程式伺服器的所有節點上 (使用相同的 SAPSID 與相同的實例編號)。
執行延伸性應用程式的節點是在 nodelist 這個延伸性應用程式伺服器資源群組內。
請確定能夠從每一個節點啟動與停止應用程式伺服器,確認記錄檔的位置是否正確。
若您使用登入群組,則請安裝 SAP 登入群組。
若您已經在 "如何安裝具有延伸性的應用程式伺服器的 SAP" 中安裝了延伸性應用程式伺服器實例,便已確認 "如何安裝具有延伸性的應用程式伺服器的 SAP" 的 步驟 8 中延伸性應用程式伺服器上已安裝了 SAP。
安裝 SAP 時,SAP 軟體會在您先前安裝 SAP 實例的伺服器上建立檔案與 shell 程序檔。這些檔案與程序檔均使用實際的伺服器名稱。若要搭配 Sun Cluster 軟體執行 SAP 軟體,請將參照到實際伺服器名稱的部分改成參照到網路資源 (即邏輯主機名稱)。以下所有步驟中提到的 physicalserver 是代表一台實際的伺服器,而 logical-hostname 則代表一項網路資源。
若要在叢集中執行具有故障轉移功能的 SAP 實例,請執行下列步驟。
在下列步驟中修改檔案前,請先製作這些檔案的備份。
登入已安裝 SAP 軟體的節點。
關閉 SAP 實例 (中央實例與應用程式伺服器實例) 與資料庫。
切換成 sapsidadm 使用者,然後執行以下作業。
以 sapsidadm 使用者的身分,加入參數 SAPLOCALHOST 的項目。
將此項目加入 /sapmnt/SAPSID/profile 目錄下的 SAPSID_Service-StringSystem-Number_logical-hostname 設定檔內。
針對中央實例:
SAPLOCALHOST=ci-logical-hostname |
此項目可讓外部應用程式伺服器藉由網路資源 (邏輯主機名稱或共用位址) 找到中央實例。
針對應用程式伺服器:
SAPLOCALHOST=as-logical-hostname |
切換成 orasapsid 使用者,然後執行下列作業。
在 oraSAPSID 主目錄中,修改參照到實際伺服器名稱的所有檔案名稱。
在 oraSAPSID 主目錄中,修改所有參照到實際主機名稱的檔案內容 (除了記錄檔的內容外)。
請確定能控制具有故障轉移功能之 SAP 實例的所有節點上,均包含使用者 sapsidadm 和群組 sapsys 所擁有的 /usr/sap/tmp 這個目錄。
若要測試在所有執行中央實例的潛在節點上是否能啟動與停止 SAP,請執行下列步驟。
建立具有故障轉移功能的資源群組,以保留網路與中央實例資源。
# scrgadm -a -g sap-ci-resource-group [-h nodelist] |
請使用 scrgadm(1M) 指令的 -h 選項,選取能執行 SAP 中央實例的該組節點。
確認您已將所使用的所有網路資源加入您的名稱服務資料庫內。
新增網路資源 (邏輯主機名稱) 到故障轉移資源群組中。
# scrgadm -a -L -g sap-ci-resource-group -l ci-logical-hostname [-n netiflist] |
啟用資源群組。
執行 scswitch(1M) 指令,將此資源群組轉成受到管理的狀態並讓它上線運作。
# scswitch -Z -g sap-ci-resource-group |
登入主管中央實例資源群組的叢集節點。
請確定資料庫於執行中。
手動啟動中央實例。
使用邏輯主機名稱啟動 SAP GUI,並確認 SAP 是否正確初始化。
預設的派送程式埠為 3200。
手動停止中央實例。
將此資源群組切換到能夠主管中央實例的叢集成員上。
# scswitch -z -h node -g sap-ci-resource-group |
請至 "如何確認具有故障轉移功能之應用程式伺服器的 SAP 與資料庫安裝"。
若要測試具有故障轉移功能之應用程式伺服器是否能順利啟動與停止,請在可執行具有故障轉移功能的應用程式伺服器的所有節點上執行下列步驟程序。
建立一個故障轉移資源群組,以保留網路與應用程式伺服器資源。
# scrgadm -a -g sap-as-fo-resource-group |
請使用 scrgadm 指令的 -h 選項選取能執行 SAP 應用程式伺服器的該組節點。。
# scrgadm -a -g sap-as-fo-resource-group [-h nodelist] |
確認您已將所使用的所有網路資源加入您的名稱服務資料庫內。
新增網路資源 (邏輯主機名稱) 到故障轉移資源群組中。
# scrgadm -a -L -g sap-as-fo-resource-group -l as-fo-logical-hostname [-n netiflist] |
啟用資源群組。
執行 scswitch(1M) 指令,將此資源群組轉成受到管理的狀態並讓它上線運作。
# scswitch -Z -g sap-as-of-resource-group |
登入主管應用程式伺服器資源群組的叢集成員。
手動啟動應用程式伺服器。
使用邏輯主機名稱啟動 SAP GUI,並確認 SAP 是否正確初始化。
手動停止應用程式伺服器。
將此資源群組切換到能夠主管應用程式伺服器的叢集成員上。
# scswitch -z -h node -g sap-as-fo-resource-group |
關於如何配置 SAP 服務之一的 DBMS,使其具有高可用性的方式,請至 "配置適用於 DBMS 的 Sun Cluster HA"。
SAP 支援很多種資料庫。關於如何配置資源類型、資源群組以及高可用性資料庫的資源,請參閱本書中相關章節的詳細說明。例如,如果您打算配合 SAP 使用 Oracle,請參閱第 16 頁上的「安裝與配置用於 Oracle 的 Sun Cluster HA」。
此外,關於配置資料庫的其他資源類型,請參閱本書中相關章節以及資料庫安裝手冊中相關章節的詳細說明。本書包含如何配置 Oracle 資料庫使用的其他資源類型的詳細說明。例如,若您使用 Oracle,請設定 SUNW.HAStorage 資源類型。詳細資訊請參閱第 35 頁的「如何配置 SUNW.HAStorage 資源類型」。
請至 "註冊與配置 Sun Cluster HA for SAP"。
請依照本節中所述的各項程序進行以下作業。
註冊與配置 Sun Cluster HA for SAP 中央實例。
註冊與配置配備具有故障轉移功能的應用程式伺服器的 Sun Cluster HA for SAP。
註冊與配置具有延伸性應用程式伺服器的 Sun Cluster HA for SAP。
若要註冊與配置 Sun Cluster HA for SAP 中央實例,請執行下列步驟。
在叢集中任何一個主管中央實例的節點上成為超級使用者。
註冊中央實例的資源群組。
# scrgadm -a -t SUNW.sap_ci | SUNW.sap_ci_v2 |
在此具有故障轉移功能的資源群組內,建立 SAP 中央實例資源。
# scrgadm -a -j sap-ci-resource -g sap-ci-resource-group \ -t SUNW.sap_ci | SUNW.sap_ci_v2 \ -x SAPSID=SAPSID \ -x Ci_startup_script=ci-startup-script \ -x Ci_shutdown_script=ci-shutdown-script |
請參閱 "配置 Sun Cluster HA for SAP 延伸屬性" 中所列的延伸屬性清單。
啟用目前包含 SAP 中央實例資源的故障轉移資源群組。
# scswitch -Z -g sap-ci-resource-group |
請至 "如何註冊與配置具有故障轉移功能的應用程式伺服器的 Sun Cluster HA for SAP" 或 "如何註冊與配置延伸性應用程式伺服器的 Sun Cluster HA for SAP"。
若要註冊與配置具有故障轉移功能的應用程式伺服器使用的 Sun Cluster HA for SAP,請執行下列步驟。
在叢集中任何一個主管應用程式伺服器的節點上成為超級使用者。
註冊具有故障轉移功能的應用程式伺服器所使用的資源類型。
# scrgadm -a -t SUNW.sap_as | SUNW.sap_as_v2 |
在此具有故障轉移功能的資源群組內,建立 SAP 應用程式伺服器的資源。
# scrgadm -a -j sap-as-resource -g sap-as-fo-resource-group \ -t SUNW.sap_as | SUNW.sap_as_v2 \ -x SAPSID=SAPSID \ -x As_instance_id=as-instance-id \ -x As_startup_script=as-startup-script \ -x As_shutdown_script=as-shutdown-script |
請參閱 "配置 Sun Cluster HA for SAP 延伸屬性" 中所列的延伸屬性清單。
啟用目前包含 SAP 應用程式伺服器資源的故障轉移資源群組。
# scswitch -Z -g sap-as-fo-resource-group |
請至 "如何確認 Sun Cluster HA for SAP、中央實例與 DBMS 的安裝與配置"。
若要註冊與配置延伸性應用程式伺服器使用的 Sun Cluster HA for SAP,請執行下列步驟。
在叢集中任何一個主管應用程式伺服器的節點上成為超級使用者。
建立應用程式伺服器的延伸性資源群組。
# scrgadm -a -g sap-as-sa-appinstanceid-resource-group \ -y Maximum_primaries=value \ -y Desired_primaries=value |
請勿透過共用位址的方式取得應用程式伺服器的負載平衡。應用程式伺服器的負載平衡應利用「SAP Message Server (訊息伺服器)」進行。
如果您使用 SUNW.RGOffload 資源類型在此延伸性應用程式伺服器資源群組中卸載應用程式伺服器,那麼請設定 Desired_primaries=0。關於使用 SUNW.RGOffload 資源類型的詳細資訊,請參閱第 332 頁的「卸載較不重要的資源群組以釋放節點資源」。
註冊延伸性應用程式伺服器所使用的資源群組。
# scrgadm -a -t SUNW.sap_as_v2 |
在此延伸性資源群組內,建立 SAP 應用程式伺服器的資源。
# scrgadm -a -j sap-as-resource -g sap-as-sa-appinstanceid-resource-group \ -t SUNW.sap_as_v2 \ -x SAPSID=SAPSID \ -x As_instance_id=as-instance-id \ -x As_startup_script=as-startup-script \ -x As_shutdown_script=as-shutdown-script |
請參閱 "配置 Sun Cluster HA for SAP 延伸屬性" 中所列的延伸屬性清單。
啟用目前包含 SAP 應用程式伺服器資源的延伸性資源群組。
如果您未搭配此應用程式伺服器使用 SUNW.RGOffload 資源類型,請使用下列指令。
# scswitch -Z -g sap-as-sa-appinstanceid-resource-group |
如果您配合此應用程式伺服器使用 SUNW.RGOffload 資源類型,則請使用下列指令。
# scswitch -z -h node1, node2 -g sap-as-sa-appinstanceid-resource-group |
如果您搭配此應用程式伺服器使用 SUW.RGOffload 資源類型,您應使用 -z 選項指定要讓資源上線運作的節點,而不是使用 -j 選項。
請至 "如何確認 Sun Cluster HA for SAP、中央實例與 DBMS 的安裝與配置"。
請依照本節中所述的各項程序進行以下作業。
確認 Sun Cluster HA for SAP、中央實例與 DBMS 的安裝與配置。
確認具有故障轉移功能之應用伺服器上 Sun Cluster HA for SAP 的安裝與配置。
確認配備延伸性應用伺服器的 Sun Cluster HA for SAP 的安裝與配置。
若要確認配合中央實例的 Sun Cluster HA for SAP 安裝與 DBMS 的安裝與配置,請執行下列步驟。
登入主管含有 SAP 中央實例資源之資源群組的節點。
啟動 SAP GUI 檢查 Sun Cluster HA for SAP 是否正常運作。
切換成 sapsidadm 使用者,使用中央實例的 stopsap 程序檔停止 SAP 中央實例。
Sun Cluster 軟體會重新啟動中央實例。
切換成 root 使用者,將 SAP 資源群組切換到另一個叢集成員上。
# scswitch -z -h node2 -g sap-ci-resource-group |
確認此節點上的 SAP 中央實例是否順利啟動。
請至 "如何確認具有故障轉移功能之應用程式伺服器上所使用 Sun Cluster HA for SAP 的安裝與配置" 或 "如何確認延伸性應用程式伺服器上所使用 Sun Cluster HA for SAP 的安裝與配置"。
若要確認具有故障轉移功能的應用程式伺服器上所使用 Sun Cluster HA for SAP 的安裝與配置,請執行下列步驟。
登入主管含有 SAP 應用程式伺服器資源之資源群組的節點。
切換成 sapsidadm 使用者,並啟動 SAP GUI 檢查應用程式是否正常運作。
使用應用程式伺服器的 stopsap 程序檔,關閉您在 步驟 1 中所找到節點上的 SAP 應用程式伺服器。
Sun Cluster 軟體會重新啟動應用程式伺服器。
切換成 root 使用者,將含有 SAP 應用程式伺服器資源的資源群組切換到另一個叢集成員上。
# scswitch -z -h node2 -g sap-as-resource-group |
確認您在 步驟 4 所找到節點上的 SAP 應用程式伺服器是否順利啟動。
若要確認延伸性應用程式伺服器上所使用 Sun Cluster HA for SAP 的安裝與配置,請執行下列步驟。
登入執行應用程式伺服器的其中一個節點。
切換成 sapsidadm 使用者。
啟動 SAP GUI 檢查應用程式伺服器是否正常運作。
使用應用程式伺服器的 stopsap 程序檔,關閉您在 步驟 1 中所找到節點上的 SAP 應用程式伺服器。
Sun Cluster 軟體會重新啟動應用程式伺服器。
使用本節所述 Sun Cluster HA for SAP 延伸屬性建立中央實例資源與應用程式伺服器資源。一般而言,會在建立中央實例或應用程式資源時,使用指令 scrgadm -x parameter=value 配置延伸屬性。您也可以之後再使用第 13 章所述程序進行配置。關於所有 Sun Cluster 屬性的詳細資訊,請參閱「附錄 A」。
關於所有 Sun Cluster 延伸屬性的詳細資訊,請參閱 r_properties(5) 與 rg_properties(5) 線上援助頁。
表 B-5 說明可為中央實例設定的 SAP 延伸屬性。某些延伸屬性可以動態更新。其他屬性則只能在建立或停用 SAP 資源時進行更新。其中「調整時機」項目代表可更新各屬性的時機。表 B-6 說明可為應用程式伺服器設定的延伸屬性。
表 B-5 中央實例的 Sun Cluster HA for SAP 延伸屬性
屬性種類 |
屬性名稱 |
說明 |
---|---|---|
SAP 配置
|
SAPSID |
SAP 系統名稱或 SAPSID。 預設值:無 調整時機: 停用時 |
Ci_instance_id |
兩位數的 SAP 系統編號。 預設值:00 調整時機: 停用時 |
|
Ci_services_string |
中央實例服務的字串。 預設值:DVEBMGS 調整時機: 停用時
|
|
啟動 SAP
|
Ci_start_retry_ interval |
啟動中央實例之前,介於兩次嘗試連接資料庫之間的等待時間間隔 (以秒為單位)。 預設值:30 調整時機: 停用時 |
Ci_startup_script |
此實例所使用 SAP 的開機程序檔在您的 SIDadm 主目錄下的名稱。 預設值:無 調整時機: 停用時 |
|
停止 SAP
|
Stop_sap_pct |
用來停止 SAP 程序的 stop-timeout 變數百分比。呼叫 Process Monitor Facility (PMF) 終止之前,會先使用 SAP 的關機程序檔停止處理動作,然後再將這些處理動作刪除。 預設值:95 調整時機: 停用時 |
Ci_shutdown_script |
此實例所使用 SAP 的關機程序檔,在您的 SIDadm 主目錄下的名稱。 預設值:無 調整時機: 停用時 |
|
Probe |
Message_server_name |
SAP Message Server (訊息伺服器) 的名稱。
預設值:sapms SAPSID 調整時機: 停用時 |
Lgtst_ms_with_ logicalhostname |
如何使用 SAP lgtst 公用程式檢查 SAP Message Server (訊息伺服器)。使用 lgtst 公用程式時需要一個主機名稱 (IP 位址),作為 SAP Message Server (訊息伺服器) 的位置。此主機名稱可以是 Sun Cluster 邏輯名稱,或本機主機 (回送) 名稱。如果將此資源屬性設為 TRUE,則使用邏輯主機名稱。否則請使用本機主機名稱。
預設值:TRUE 調整時機: 任何時候 |
|
Check_ms_retry |
在回報完全故障以及 Resource Group Manager (RGM) 啟動前,SAP Message Server (訊息伺服器) 檢查故障的總次數。
預設值:2 調整時機: 停用時 |
|
Probe_timeout |
測試的逾時值,以秒為單位。
預設值:60 調整時機:任何時候 |
|
Monitor_retry_count |
故障監視器可以重新啟動 PMF 的次數。
預設值:4 調整時機:任何時候 |
|
Monitor_retry_ interval |
故障監視器重新啟動的間隔時間,以分鐘為單位。
預設值:2 調整時機: 任何時候 |
|
開發系統
|
Shutdown_dev |
表示啟動中央實例之前,RGM 是否應關閉開發系統。
預設值:FALSE 調整時機: 停用時 |
Dev_sapsid |
開發系統的 SAP 系統名稱 (如果將 Shutdown_dev 設為 TRUE,則 Sun Cluster HA for SAP 便需要這項屬性)。
預設值:無 調整時機: 停用時 |
|
Dev_shutdown_script |
用來關閉開發系統的程序檔。如果將 Shutdown_dev 設定為 TRUE,Sun Cluster HA for SAP 便需要這項屬性。
預設值:無 調整時機: 停用時 |
|
Dev_stop_pct |
Sun Cluster HA for SAP 在啟動中央實例之前,用來關閉開發系統所依據的啟動逾時百分比。
預設值:20 調整時機: 停用時 |
表 B-6 應用程式伺服器的 Sun Cluster HA for SAP 延伸屬性
屬性種類 |
屬性名稱 |
說明 |
---|---|---|
SAP 配置
|
SAPSID |
應用程式伺服器的 SAP 系統名稱或 SAPSID。
預設值:無 調整時機: 停用時 |
As_instance_id |
應用程式伺服器的兩位數 SAP 系統編號。
預設值:無 調整時機: 停用時 |
|
As_services_string |
應用程式伺服器服務的字串。
預設值:D 調整時機: 停用時 |
|
啟動 SAP
|
As_db_retry_interval |
介於嘗試連接資料庫與啟動應用程式伺服器兩個動作之間,等待的時間間隔 (以秒為單位)。
預設值:30 調整時機: 停用時 |
As_startup_script |
應用程式伺服器所使用 SAP 開機程序檔的名稱。
預設值:無 調整時機: 停用時 |
|
停止 SAP
|
Stop_sap_pct |
用來停止 SAP 程序的 stop-timeout 變數百分比。呼叫 Process Monitor Facility (PMF) 終止之前,會先使用 SAP 的關機程序檔停止處理動作,然後再將這些處理動作刪除。
預設值:95 調整時機: 停用時 |
As_shutdown_script |
應用程式伺服器所使用 SAP 關機程序檔的名稱。
預設值:無 調整時機: 停用時 |
|
Probe |
Probe_timeout |
測試的逾時值,以秒為單位。
預設值:60 調整時機: 任何時候 |
Monitor_retry_count |
測試允許故障監視器重新啟動 PMF 的次數。
預設值:4 調整時機: 任何時候 |
|
Monitor_retry_ interval |
故障監視器重新啟動的間隔時間,以分鐘為單位。
預設值:2 調整時機: 任何時候 |
請依照本節中所述程序進行以下作業。
設定中央實例的鎖定檔案。
設定延伸性應用程式伺服器的鎖定檔案。
當某個節點上已經啟動 SAP 實例時,設定鎖定檔案可避免多次啟動 SAP 實例。同一個實例若同時啟動多次,會相互拖累導致彼此全部當機。甚至,當機會阻止 SAP 的關機程序檔將實例完全關機,這樣一來可能會造成資料毀損。
如果您設定鎖定檔案,當您啟動 SAP 實例時,SAP 軟體便會鎖定這個檔案 startup_lockfile。如果您在 Sun Cluster 環境以外啟動同一個實例,然後嘗試在 Sun Cluster 環境下啟動 SAP,則 Sun Cluster HA for SAP 資料服務會嘗試啟動相同的實例。然而,由於有檔案鎖定機制,這個動作將會失敗。資料服務會在 /var/adm/messages 中記錄適當的錯誤訊息。
中央實例或具有故障轉移功能之應用程式伺服器所使用的鎖定檔案,與延伸性應用程式伺服器所使用的鎖定檔案,兩者之間的差異僅在於,後者的鎖定檔案位於本機檔案系統上,而前兩者的鎖定檔案則位於叢集檔案系統上。
若要設定中央實例的鎖定檔案,請執行下列步驟。
安裝 sapstart 執行檔的最新修補程式,它可讓 Sun Cluster HA for SAP 使用者配置鎖定檔案。
在叢集檔案系統上設定中央實例的鎖定檔案。
編輯設定檔 SC3_DVEBMGS00,以便加入應用程式伺服器所使用的新 SAP 參數 sapstart/lockfile。
sapstart/lockfile =/usr/sap/SC3/DVEBMGS00/work/startup_lockfile |
新參數名稱。
應用程式伺服器的工作目錄。
Sun Cluster HA for SAP 使用的鎖定檔案名稱。
SAP 會建立鎖定檔案。
您必須找出叢集檔案系統上的鎖定檔案路徑。如果您在本機的節點上找到鎖定檔案路徑,便無法避免多個節點同時啟動相同實例的動作。
若要設定延伸性應用程式伺服器使用的鎖定檔案,請執行下列步驟。
安裝 sapstart 執行檔的最新修補程式,它可讓 Sun Cluster HA for SAP 使用者配置鎖定檔案。
在本機檔案系統上設定應用程式伺服器的鎖定檔案。
編輯設定檔 SC3_Dinstance-id,以便加入應用程式伺服器所使用的新 SAP 參數 sapstart/lockfile。
sapstart/lockfile =/usr/sap/local/SC3/Dinstance-id/work/startup_lockfile |
新參數名稱。
針對中央實例的工作目錄
Sun Cluster HA for SAP 使用的鎖定檔案名稱。
SAP 會建立鎖定檔案。
此鎖定檔案位於本機檔案系統上。這個鎖定檔案雖然無法避免其他節點的多次啟動,但可以確實避免同一個節點的多次啟動。
Sun Cluster HA for SAP 故障監視器會檢查 SAP 的處理動作與資料庫的運作是否正常。SAP 的處理動作是否正常,會影響 SAP 資源的故障歷史記錄。而 SAP 資源的故障歷史記錄又會觸發故障監視器的反應,包括不予回應、重新啟動或進行故障轉移。
相較之下,使用資料庫 SAP 時的運作是否正常,便不會影響 SAP 資源的故障歷史記錄。資料庫的運作狀態確實會觸發 SAP 故障監視器記錄任何 syslog 訊息,並對應地設定使用此資料庫的 SAP 資源的狀態。
針對中央實例,故障偵測會執行下列步驟。
擷取 SAP Message Server (訊息伺服器) 與派送程式的處理 ID
進入無窮迴圈 (暫停 Thorough_probe_interval)
檢查 SAP 資源的運作狀態
異常中止 - 如果 Process Monitor Facility (PMF) 偵測到 SAP 處理樹已經故障,故障監視器便會視此問題為完全故障。故障監視器會根據該資源過去的故障歷史記錄重新啟動 SAP 資源,或進行故障轉移將它移到另一個節點上。
透過偵測進行 SAP 資源運作狀態的檢查 - 探測會使用 ps(1) 指令檢查 SAP Message Server (訊息伺服器) 與主要的派送程式處理。如果系統的主動處理清單中遺失了任何一個 SAP Message Server (訊息伺服器) 或主要派送程式處理,則故障監視器會視此問題為完全故障。
若您將 Check_ms_retry 參數的值設定為大於 0,探測程式便會檢查 SAP Message Server (訊息伺服器) 的連線。如果您將延伸屬性 Lgtst_ms_with_logicalhostname 設成其預設值 TRUE,探測程式便會利用 lgtst 公用程式完成 SAP Message Server (訊息伺服器) 連線的測試。探測程式會使用 SAP 資源群組中指定的邏輯主機名稱介面,呼叫 SAP 所附的 lgtst 公用程式。如果將延伸屬性 Lgtst_ms_with_logicalhostname 的設定成 TRUE 以外的值,探測程式便會以該節點的邏輯主機名稱 (回送介面) 呼叫 lgtst。
若呼叫 lgtst 公用程式失敗,表示 SAP Message Server (訊息伺服器) 連線不正常。在此情況下,故障監視器會視此問題為部分故障,故不會立刻觸發 SAP 重新啟動或進行故障轉移。遇到以下狀況時,故障監視器只要偵測到兩次部分故障,便將其視為完全故障。
Check_ms_retry 延伸屬性設定為 2。
在 Retry_interval 資源屬性設定的重試時間間隔內,故障監視器累積了兩次部分故障。
完全故障會觸發本機重新啟動或開始進行故障轉移,端視該資源過去的故障歷史記錄而定。
透過探測程式檢查資料庫連線狀態 - 探測程式會呼叫 SAP 所附的 R3trans 公用程式檢查資料庫連線的狀態。Sun Cluster HA for SAP 故障測試可確認 SAP 是否能正確連接資料庫。但 Sun Cluster HA for SAP 又會仰賴高可用性資料庫的故障測試,以判斷資料庫是否正常運作。如果資料庫連線狀態的檢查失敗,則故障監視器便會在 syslog 內記錄此訊息 Database might be down。然後故障監視器便會將 SAP 資源的狀態改為 DEGRADED。如果探測程式再次檢查資料庫狀態時,發現連線又重新建立起來,則故障監視器會在 syslog 中記錄這個訊息 Database is up,並將 SAP 資源的狀態改成 OK。
評估故障的歷史記錄
不予回應
本機重新啟動
進行故障轉移
針對應用程式伺服器,故障偵測會執行下列步驟。
擷取主要派送程式的處理 ID
進入無窮迴圈 (暫停 Thorough_probe_interval)
檢查 SAP 資源的運作狀態
異常中止 - 如果 Process Monitor Facility (PMF) 偵測到 SAP 處理樹已經故障,故障監視器便會視此問題為完全故障。故障監視器會根據該資源過去的故障歷史記錄重新啟動 SAP 資源,或進行故障轉移將它移到另一個節點上。
透過偵測進行 SAP 資源運作狀態的檢查 - 探測會使用 ps(1) 指令檢查 SAP Message Server (訊息伺服器) 與主要的派送程式處理。如果系統的主動處理清單中遺失了 SAP 的主要派送程式處理,則故障監視器會視此問題為完全故障。
透過探測程式檢查資料庫連線狀態 - 探測程式會呼叫 SAP 所附的 R3trans 公用程式檢查資料庫連線的狀態。Sun Cluster HA for SAP 故障測試可確認 SAP 是否能正確連接資料庫。但 Sun Cluster HA for SAP 又會仰賴高可用性資料庫的故障測試,以判斷資料庫是否正常運作。如果資料庫連線狀態的檢查失敗,則故障監視器便會在 syslog 中記錄這個訊息 Database might be down,並將 SAP 資源的狀態改為 DEGRADED。如果探測程式再次檢查資料庫狀態時,發現連線又重新建立起來,則故障監視器會在 syslog 中記錄這個訊息 Database is up。然後故障監視器便會將 SAP 資源的狀態改為 OK。
評估故障的歷史記錄
根據故障的歷史記錄,故障監視器會採取下列動作之一。
不予回應
本機重新啟動
進行故障轉移
如果應用程式伺服器資源為具有故障轉移功能的資源,則故障監視器便會對此應用程式伺服器進行故障轉移。
如果應用程式伺服器資源為延伸性資源,當本機重新啟動次數達到上限後,若叢集內還有其他節點可用,RGM 便會在另一個節點上啟動此應用程式。