為了以此範例進行說明,我們設定一個叢集,由一個負載平衡器,一台管理伺服器及已啟用階段作業複製的四個 Web 伺服器實例所組成。階段作業複製可為 Java Web 應用程式階段作業提供高可用性。將一個 Web 伺服器實例之記憶體中常駐的階段作業複製到另一個 Web 伺服器實例,即可實現此目的。因此,在一般作業條件下,每個階段作業至少有 2 個副本,每一個都位於單獨的 JVM 中,最理想的情況是位於單獨的機器上。
下圖描述了簡單叢集:
識別以下機器:
機器 A —同時具有負載平衡器和管理伺服器。
機器 B、機器 C、機器 D 和機器 E —具有管理節點,且 Web 伺服器實例處於執行中狀態。
在機器 A 上安裝管理伺服器。
請參閱設定伺服器機群,以取得有關安裝管理伺服器的資訊。一般安裝程序還將安裝 Web 伺服器實例。在此案例中,我們並不使用該實例。
在機器 B、機器 C、機器 D 和機器 E 上安裝管理節點。
在所有 4 台機器上安裝管理節點。向管理伺服器註冊管理節點。
配置 Web 應用程式。
為 Web 應用程式啟用階段作業複製。按照以下方式修改 WEb-INF/sun-web.xml 檔案:
<session-manager persistence-type="replicated"/> |
配置實例。
啟動 wadm。
wadm --host MachineA --port 8089 |
為負載平衡器建立新配置。
wadm> create-config --http-port=8080 --server-name=SampleCluster lb |
設定反向代理伺服器 (負載平衡器)。
wadm> create-reverse-proxy --config=lb --vs=lb -uri-prefix=/ --server="http://MachineB:8080,http://MachineC:8080, ttp://MachineD:8080,http://MachineE:8080" |
建立實例。
wadm> create-instance --config=lb MachineA |
部署配置。
wadm> deploy-config lb wadm> start-instance --config=lb |
建立並啟動叢集。
建立具有四個實例的新配置。
為叢集建立新配置。
wadm> create-config --http-port=8080 --server-name=SampleCluster clusterOf4 |
啟用階段作業複製。
wadm> set-session-replication-prop --config=clusterOf4 enabled=true |
增加 Web 應用程式。
wadm> add-webapp --config=clusterOf4 --uri=/simple webapps-simple.war |
建立實例。
wadm> create-instance --config=clusterOf4 MachineB MachineC MachineD MachineE |
啟動叢集。
wadm> start-instance --config=clusterOf4 |
如果未指定 H80 指令的主機名稱,此動作將啟動已部署該配置之所有節點上的實例。