多層架構

提供小從個別團隊、大到企業級營運的各種組態,且能支援現有的基礎架構需求。

使用簡單的組態,Deployment Automation 可用於個別團隊運作。另一方面,它也能擴充支援企業級需求:橫向擴充、企業級安全功能、效能以及高可用性。

Deployment Automation 含有四大主要元件,每個皆能以邏輯方式或實體方式分離以支援既有的營運定義基礎架構需求。

1. 業務邏輯與樣貌呈現層

無狀態的控制伺服器負責提供安全引擎、工作流程引擎、使用者介面以及產品其他重要領域的存取。此層可全面進行負載平衡以提供幾近瞬間的容錯移轉,既適合高可用性亦適用於負載平衡的系統。使用者可透過指令行、RESTful 服務或瀏覽器使用者介面 (User Interface,UI) 進行存取。所有系統組態、程序定義、部署及報告功能均可透過使用者介面存取。

業務邏輯與樣貌呈現層

2. 中繼資料與檔案儲存層

Deployment Automation 伺服器的後端元件構成包含用於儲存系統組態、安全與程序資訊的資料庫。實體產出工件,包括將部署至目標位置的物件與記錄檔,均儲存於「部署儲存庫」,而此儲存庫則使用實體或邏輯連接的磁碟或網路儲存裝置。

3. 不造成干擾且安全的代理程式

代理程式是一種不造成干擾且安全的程序,可於各個目標主機執行,負責和 Deployment Automation 伺服器通訊。代理程式是 Deployment Automation 用戶端/伺服器架構不可或缺的一環。除了負責部署元件讓伺服器無需負擔部署作業外,代理程式也實現涉及上千個目標的大型部署。

代理程式中繼器也擔起代理伺服器和協調程式的責任,藉此將多個代理程式送往業務邏輯層的流量均路由至單一點。中繼器可簡化防火牆組態、減少業務邏輯層所面對的直連網路流量與處理負載。

不造成干擾且安全的代理程式

4. 可擴充的伺服器架構

Deployment Automation 伺服器並不實際執行「部署作業」。所有部署動作 (移動檔案、調整組態、啟動及停止、與負載平衡器互動、與協力廠商工具互動等等) 均是由部署代理程式負責執行。

代理程式以 Java 程序的形態於遠端電腦上安裝的 JVM 環境中執行,其具有低負載、無狀態的特性,並會聆聽 Deployment Automation 伺服器所送出的 JMS 要求。伺服器傳送工作至代理程式後,代理程式即透過外掛程式架構執行合適的指令。另外,代理程式亦可利用伺服器所提供的 Web 服務以取得額外資訊或傳回結果。

可擴充的伺服器架構