請依照本節中所述的各項程序進行以下作業。
安裝 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"。