對于希望了解如何將自主計算和面向服務的體系結構(Service-Oriented Architecture,SOA)應用到管理系統的架構師和設計人員,本文介紹了自主計算和 SOA 中的關鍵概念,并演示了如何將其組合來提供自動管理系統,以處理 IT 組織內不斷提出挑戰的復雜性。了解如何采用增量方式實現可能跨組織邊界的 IT 管理流程的自動化,以及如何將獨立的自主管理器集成到 IT 管理流程中。
自主計算的目標是實現目前需要 IT 專業人員投入大量精力的常規基礎結構配置和管理活動的自動化,從而隱藏管理 IT 系統的復雜性和減少人工干預的需要。IBM 的自主計算體系結構是一個面向服務的體系結構 (SOA),它定義了一組體系結構構建模塊,用于構造自主管理系統(請參閱參考資料中的“An architectural blueprint for autonomic computing”)。
SOA 是一種體系結構方法,用于通過以下方法使信息技術與業務需求保持一致:
在“Elements of Service-Oriented Architecture and Design”中對此方法進行了進一步描述(請參閱參考資料)。
SOA 和自主計算概念的組合提供了一種強大的方法來設計和開發與業務需求保持一致的 IT 管理解決方案。此方法非常靈活、穩健,足夠滿足不斷變化的業務和技術驅動因素的要求,而且能夠采用有效的增量方式實現自動化。
要理解 SOA 和自主計算在 IT 系統中扮演的角色,首先需要認識到,IT 管理是一個業務功能,因此應該這樣看待它(請參閱參考資料中的“Transforming the 'business of IT'”)。因此,IT 管理系統應設計為可滿足“IT 業務”的需求。這是 IT 服務管理(IT Service Management,ITSM)的基本原則,ITSM 是一種基于 IT 信息庫(IT Information Library,ITIL)等標準和框架運行 IT 組織的方法。(有關 ITIL 和 ITSM 的更多信息,請參閱參考資料。)
在此上下文中,自主計算的目的在于允許 IT 專業人員實現通常手動執行的活動的自動化,從而提高 IT 管理流程的效率。自主計算體系結構旨在提供采用集成和增量的方式完成此任務的結構。SOA 提供了設計和實現一組技術服務的基礎方法,以基于從業務模型映射到技術中的業務設計來實現各種活動的自動化。
自主管理器和自主計算體系結構
自主計算體系結構定義一組構建塊,用于以下目的:
自主計算體系結構的核心部分是自主管理器;它負責實現系統自我管理的 IT 管理功能的自動化。每個自主管理器可實現一個或多個管理功能的自動化,并根據管理接口定義的行為外部化此功能。自主管理器的四個主要功能如圖 1 中所示,即:
當可以實現這些函數的自動化時,就可以形成一個智能控制循環,從而實現一組通常由 IT 組織的專業人員執行的活動的自動化。自主管理器使用策略(目標或目的)來控制如何完成這四個功能。
為了處理需采用增量方式交付和部署的控制循環的實際可行性,該體系結構正式要求自主計算系統需要擁有執行控制循環子集 的自主管理器。這是因為:
在參考資料的“Can you CHOP up autonomic computing?”中對部分自主管理器的需求進行了更為詳細的描述。
SOA
正如在“Service-oriented Architecture and Integration”中所述(請參閱參考資料),存在多種 SOA 方法:
盡管在本文中將重點討論自頂向下 SOA 方法,但這兩種方法都可以應用到自主計算中。(有關使用 SOA 向可管理資源提供標準接口的更多信息,請參閱參考資料中的“Web Services Distributed Management (WSDM)”。該文是自底向上方法的一個不錯的示例。
圖 2 顯示了一個 SOA。
服務使用者將使用通過將各種服務結合到一起而創建的應用程序,以支持使用者的業務流程。IT 與業務保持一致是通過將提供的服務的頂級粒度和功能與業務流程中的活動和任務匹配來實現的。
服務是由服務組件提供的,服務組件可能是獨立組件,也可能是通過對其他服務組件提供的服務進行組合而得到的。服務組件也提供了利用現有操作系統中的功能的方法,從而將其集成到 SOA 上下文中的解決方案內。
一組跨多個關鍵領域的注意事項——安全、數據體系結構、集成和控制——在整個體系結構中都需要加以注意。
為了實現現有資產和從業務服務自頂向下進行的分解之間的最佳匹配,可以采用面向服務的建模和體系結構(service-oriented modeling and architecture,SOMA)之類的方法(請參閱參考資料)。對于 SOMA,服務的自頂向下標識的起點是業務的以下方面的模型:
其他服務是通過對現有資產采用自底向上的方法標識的。將執行分析來標識不匹配或缺少的服務,并將服務分組為合理的服務組件以便實現。
通過遵循上述方法和相應的控制模型(請參閱參考資料中的“A case for SOA governance”),可以開發跨組織邊界集成一組功能的 SOA 解決方案。這些功能將服務交付給組織的客戶,并允許組織的不同部分采用與交付服務相同的方式保持獨立性。這就提高了靈活性,并提供必要的協作,以滿足組織的總體目標。
將 SOA 和自主計算體系結構應用于 IT 流程
IT 管理方面的 SOA 方法是從 IT 的業務模型開始著手的,如圖 3 中所示。此模型標識以下內容:
正如前面提到的,IT 信息庫 (ITIL) 提供了 IT 管理流程的標準。IBM 已開發了一系列適合各個行業的“組件業務模型”(請參閱參考資料),其中包括一個與 ITIL 兼容的 IT 業務模型。
IT 服務和流程可以隨后分解為活動和任務的工作流,以用于進行實現。“IBM Tivoli 的 Unified Process”(請參閱參考資料)包含一組與 ITIL 流程定義兼容的工作流。
就 SOA 方法而言,IT 組織提供的 IT 服務是由 IT 組織外的最終用戶使用的,如供整個組織內的某個業務線使用。圖 4 演示了這樣的一個示例。
IT 服務可通過 IT 組織提供的自服務門戶直接使用,或者可以將其集成到該業務線的業務應用程序中。例如,HR 部門中用于雇傭員工的應用程序可以使用 IT 服務發出關于用戶 ID 和密碼的請求。
使用 SOA 實現了自動化的 IT 服務是由服務組件實現的,這些服務組件實現 IT 組織內的 IT 服務和流程工作流。因此,IT 人員執行的活動和管理工具執行的自動化任務之間得到了協調。
可能無法實現某些 IT 服務的自動化,在這種情況下,最終用戶可能直接與 IT 人員進行交互,以啟動服務。
圖 5 顯示了使用 SOA 實現 IT 服務自動化的下一級別。IT 服務和流程工作流中所選的任務映射到自主管理器的監視、分析、計劃或執行功能。這就提供了這些自動任務的服務組件。自主管理器通常將通過使用現有管理工具的功能來實現。
在現實中,IT 組織通常并不是單個單體單元;它具有內部組織邊界,而這些內部組織單元可以使用定義的服務彼此進行交互。這就使得情況更為復雜了,如圖 6 中所示。
在 IT 流程上下文中的自主管理器
在這一部分,我們將描述在 IT 流程上下文中使用自主管理器的兩個體系結構模式:增量流程自動化和通過共享數據的流程集成。
模式:增量流程自動化
如何對可能跨越組織邊界的 IT 管理流程采用增量方式實現自動化?
流程自動化的目標在于減少專業人員在系統例行管理方面投入的時間,從而讓他們將重點放在 IT 管理的業務特定方面。在很多 IT 組織中,監視、分析、計劃和執行活動會跨越組織邊界。通常,這意味著使用不同的技術和過程。有必要將 IT 組織不同部分的 IT 專業人員所執行的工作“鏈接”到一起。
與 IT 管理流程關聯的工作流可以實現自動化,這些流通過每個業務組件提供的服務鏈接到一起,從而實現了跨組織邊界的集成。
在每個工作流中,都可以標識實現監視、分析、計劃和執行功能的活動。這些活動可以采用增量的方式委托給部分自主管理器,從而實現跨組織邊界且由工作流集成的控制循環。隨著自動化活動的增加以及 IT 組織對自動化技術的信任程度的提高,不要求人工干預的情況(如審批步驟)會通過更改控制工作流的策略而逐漸增加。
通過清楚地定義特定業務組件提供的服務并使其成為組織邊界上的集成點,可以在無需跨組織協議的情況下進行自動化方面的決策(如果所需的服務得到維護且具有跨組織的策略存在)。
通過使用此集成模式,IT 組織可以采用增量的方式將自主功能引入到其管理系統中。他們可以在進行此工作的同時讓組織的不同部分的自動化程度和自動化技術的選擇保持一定程度的控制。
模式:通過共享數據的流程集成
如何能將獨立的自主管理器集成到 IT 管理流程中?
為了 IT 管理流程能有效地工作,必須以即時的方式保持關鍵信息(如計劃的更改和實際的更)最新(如果是由完全獨立的自主管理器啟動的)。如果沒有此信息,IT 專業人員則無法了解系統的整體性能和狀態。更糟糕的是,由于所基于的數據(如策略)不正確,手動啟動的操作可能出現錯誤,或者與自主管理器啟動的操作沖突。
對于執行必須在管理流程中對 IT 組織可見的功能的獨立自主管理器,它們必須提供必要的數據(如檢測到的表象或所需的更改),以允許對 IT 組織中與功能對應的流程進行報告和監視。通過使用應用程序集成技術來從自主管理器提取必要信息,然后使用其來填充知識源,就可以實現此操作。
這就允許將獨立的自主管理器集成到 IT 管理流程中。另一方面,它允許將流程級別的控制循環(會隨著時間的推移而全面實現自動化)從普通管理工作流中移出,成為獨立的自主管理器。
結束語
在本文中,您了解了如何在組織上下文中組合自主計算體系結構和 SOA,以交付與業務需求保持一致的 IT 管理系統,從而允許將其以增量的方式委托給自動化功能,以便 IT 專業人員能將更多的時間花在業務特定的需求上,而減少基礎結構常規管理所占用的時間。