Sun ONE Portal Server 6.2 安裝手冊 |
附錄B
BEA WebLogic Server
設定 Sun ONE Portal Server 於 BEA 叢集本節會簡短說明並提出 Sun™ ONE Portal Server 軟體可與 BEA WebLogic Server™ 叢集一起使用的方法。
例如,我們有五部機器。所有機器必須位於相同子網路上。其中一個僅有一個目錄伺服器 (DSmach)。另一個為 BEA WebLogic 管理伺服器 (AS)。有三個叢集機器 (CS1、CS2,與 CS3)。若您希望支援負載平衡,需要將額外的機器或管理伺服器機器配置為負載平衡的代理伺服器 servlet。您可能也會使用以硬體為基礎的負載平衡程式。叢集需要負載平衡。在此範例中,代理伺服器位於管理伺服器上。
在 Dsmach 上安裝目錄 伺服器。使用預設安裝在其他四個機器上安裝 BEA WebLogic Server。檢查所有伺服器是否正確運作。
在四個使用 BEA WebLogic Server 的機器上,使用 BEA WebLogic 指示,建立新領域 (NEWDOMAIN 於所有機器上),其由具有 7001 (ADMINSERVER 於所有機器上) 傾聽連接埠的管理伺服器與另一個具有 80 傾聽連接埠 (PORTALSERVER 於所有機器上) 的伺服器組成。每個傾聽連接埠應該相同;範例使用 80。
下一步在四個機器上安裝 Portal Server 軟體至受管理伺服器實例 (PORTALSERVER)。
- 回應 n 問題:使用這些設定嗎?[y]/n
問題清單在其後。
- 接受預設值除了這些問題之外。這些問題顯示需要變更的值與重要預設值。此範例是針對 BEA WebLogic Administration Server。叢集機器的安裝值相似。
應用程式伺服器領域是什麼?[mydomain] NEWDOMAIN
應用程式伺服器實例是什麼?[myserver] PORTALSERVER
應用程式伺服器管理通訊埠是什麼? [7001]
應該使用哪個通訊埠存取 Portal Server? [80]
是否使用現有「目錄伺服器」? y/[n] y
目錄伺服器的名稱為何?[...] DSmach
正確回答關於目錄伺服器的問題。
- 停止並重新啟動所有機器上的伺服器 (Portal Server、受管理的伺服器與管理伺服器)。
- 檢查並查看安裝是否成功。
- 以管理員的身份登入至 Sun ONE Identity Server 管理主控台。
依預設,已選取位置窗格中的 [識別管理] 且 [所有已建立的組織] 已顯示於導覽窗格中。
- 選擇位置窗格中的「服務配置」。
- 按一下導覽窗格中平台旁邊的「屬性」箭頭。
- 檢查「伺服器清單」是否有 full-ps-servername 以供您要放置代理伺服器的機器使用。範例中,我們的機器為 http://AS.example.com:80。
- 按一下「儲存」。
若要設定叢集:
如需詳細資訊,請查閱 BEA WebLogic Server 指示以設定叢集。
設定叢集時請記得下列事項:
檢查並查看是否有正確設定叢集:至 BEA WebLogic Server 管理主控台,在左窗格中選取「叢集」,在右窗格中選取「監控」標籤,然後在叢集中選取「監視器」伺服器。若一個或多個已啟動伺服器的實例沒有出現於顯示中,則使用 BEA WebLogic Server 工具檢驗多點傳送位址與連接埠編號是否正確。
備註
若您想要從管理主控台遠端啟動並停止 BEA WebLogic 受管理伺服器,則您必須配置並執行 BEA Node Manager。請參閱 BEA WebLogic Server 文件以取得詳細資訊。
若您將要使用代理伺服器以平衡負載,則請建立 web.xml 檔案讓叢集使用以配置負載平衡 servlet。使用暫存目錄建立一個子目錄 WEB-INF。web.xml 檔案是目錄中唯一的檔案 (WEB-INF)。使用檔案中完全合格的機器名稱。
- 將 web.xml 與叢集伺服器值加入 .war 檔案。在終端機視窗中輸入:
jar cvf proxy.war WEB-INF
- 使用 BEA WebLogic Server 軟體提供的 java weblogic.deploy 指令將 .war 檔案部署於 BEA WebLogic 管理伺服器上。
- 在管理伺服器的 BEA WebLogic Server 管理主控台上,展開伺服器並選取 PORTALSERVER:80。
- 按一下「HTTP」標籤。
- 將「預設 Web 應用程式」設定為代理伺服器。
- 重新啟動 Portal Server。
或建立 .war 檔案之後,在管理機器 (AS) 上的新領域中複製 .war 檔案至應用程式目錄。
- 選取 Web 應用程式。
- 按一下「配置新 Web 應用程式」。
- 輸入代理伺服器為名稱並給予 .war 檔案的完整路徑。
- 按一下「建立」。
- 在左窗格中 Web 應用程式之下,按一下「代理伺服器」。
- 在右窗格中,按一下「目標」標籤並將 Portal Server 從「可用」方塊移至「所選」方塊。
下一步您必須將 Portal Server 軟體部署至叢集中。針對每個 Web 應用程式 (amconsole、amserver、amcommon、ampassword 與 portal),請遵守下列步驟。
- 請至管理伺服器的 BEA WebLogic Server 管理主控台 (AS:7001/主控台)。
- 展開左窗格中的 Web 應用程式,然後選取 Portal Server 軟體 Web 應用程式之一 (amconsole、amserver、amcommon、ampassword 與 portal)。
- 解除部署管理伺服器 (您已安裝入口網站至 PORTALSERVER 伺服器,但其不是叢集的一部分,所以現在您將其從此伺服器中移除)。
- 按一下「編輯 Web 應用程式描述元」連結;按一下「配置新 Web 應用程式擴展描述元」連結。
- 在 Web 應用程式擴展之下的左窗格中,選取「階段作業描述元」。
- 在右窗格中,將「永久儲存類型」變更為重複。按一下「套用」。
- 在左窗格、Web 描述元或 Identity Server 服務中選取頂曾主題。選取「繼續」。關閉這個視窗。
- 選取「目標」標籤,然後選取「叢集」子標籤。
- 將叢集名稱 (NEWCLUSTER) 從「可用」方塊移動至「所選」方塊,並按一下「套用」。
- 針對三個 Portal Server 中的每部機器,請至 identity-server-install-root/SUNWam/lib 目錄並使用文字編輯器開啟 AMConfig.properties 檔案。
- 在所有機器上設定下列值:
com.iplanet.am.session.failover.enabled=true
com.iplanet.am.replica.enable=true
com.iplanet.am.naming.url=http://AS.example.com:80/amserver/namingservice
com.iplanet.am.notification.url=http://AS.example.com:80/amserver/notificationservice
com.iplanet.am.session.server.host=AS.example.com
com.iplanet.am.server.host=ASNMS.example.com
com.iplanet.services.cdsso.CDCURL=http://AS.example.com:80/amserver/cdcservlet
com.iplanet.services.cdc.authLoginUrl=http://AS.example.com:80/amserver/login
- 停止並重新啟動所有伺服器。針對受管理伺服器,在每部機器上,輸入:
./startManagedWebLogic.sh managed-servername http://AS.example.com:80
- 檢查並查看是否運作正常。
設定 Cookie 編碼值當目標 Web 容器為 BEA WebLogic Server 或 WebSphere Application Server 時,AMConfig.properties 檔案中的 com.iplanet.am.cookie.encode 屬性應設定為「True」。因為 WebLogic 不會自動編碼由網路應用程式設定的 cookie 值,所以這是很重要的。
在 BEA WebLogic Server 與 IBM WebSphere Application Server 之下設定 com.iplanet.am.cookie.encode 為「True」將避免逗號、分號與空格之類的字元由 Sun ONE Identity Server 設定在 cookie 值中而沒有退出或編碼。當逗號、分號與空格之類的字元直接設定為 cookie 值而沒有編碼或退出,則某些網路瀏覽器將不會正確頗析 cookie 值。因此,應用程式將會在接下來的請求中接收已毀壞的 cookie 值。
當目標 Web 容器為 WebLogic 時,請編輯 AMConfig.properties 檔案並將 com.iplanet.am.cookie.encode 屬性的值設定為 True。