Administrative Domain
Glassfish中可以創建多個domain,一個domain管理一組server
instance,一個instance屬於一個單獨的domain,domain中的instance可運行在不同的物理機器中。每個domain都有
一套自己的配置、日誌文件和部署區域,改變其中一個domain的配置不會影響到其它的domain。
Server Instance
一個server
instance運行在一個單獨的JVM中,instance可分爲兩種:standalong和cluster。DAS就是一個standalong的
instance,可以完全不依賴cluster而存在。對於cluster的instance,可以對應到weblogic中的managed
server,我們也稱作traffic server。
Domain Administration Server(DAS)
一個domain有一個DAS,DAS是一個特別的server
instance,它可以:驗證管理員、接收來自於管理工具的請求、與domain中的instance進行通訊。DAS通常叫做admin
server或者default server,把它稱作default
server是因爲它是一個管理操作的默認目標。DAS中有一個倉庫保存domain的配置和部署的應用,如果DAS宕機了,不會影響其它
instance的運行,但是不能對管理的配置進行修改了,這時你需要創建一個新的DAS去restore之前的配置。
Cluster
一個cluster表示一組server
instance,cluster內可以共享相同的應用、資源和配置信息。cluster可以包含不同物理機器上的instance,通過DAS可以很容
易的對多機上的cluster的生命週期進行管理。Cluster能夠讓你很容易的處理水平擴展、負載均衡和宕機保護等問題。因爲cluster中所有的
instance都擁有相同的資源和應用配置,當一個instance或機器宕了,load
balancer可以發現失敗,並將traffic從失敗的instance上重定向到cluster中的其它可用的instance,並回復
session的狀態。
DAS、Cluster、domain和instance之間的關係如下:
一個domain有一個DAS。
一個domain可以有0到多個cluster。
一個cluster可以有一到多個server instance。
一個cluster屬於一個單獨的domain。
Node Agent
Node agent運行在每個server instance的機器中,包括運行DAS的機器。
node agent的作用是:
根據DAS的指示去啓動和停止instance。
重啓失敗的instance。
提供失敗的server的log,以幫助遠程診斷。
同步每個server instance的本地配置倉庫和DAS的中央倉庫。
當創建了一個新的instance時,它會創建instance所需的目錄,並同步DAS的中央倉庫到instance的本地倉庫。
當刪除instance時執行適當的清理。
每個物理機器至少需要一個node
agent,如果一臺機器中的instance屬於多個domain,則每個domain都需要一個node agent,這種方式不推薦。因爲node
agent要監控server instance,所以node agnet必須要一直運行。