在本文中,作者將介紹共用服務的一些基本概念,描述外掛程式開發工具組 (PDK) 中的示例共用服務外掛程式,該工具組為創建新共用服務提供了一個不錯的起點。 作者還將介紹如何將示例共用服務轉換為功能性的一般媒介共用服務,這是一種一般服務存儲庫,用戶端部署可在其中獲取通用檔。
共用服務是一種預定義的模式,它部署在雲中,並由雲中的多個用戶端應用程式部署(比如虛擬應用程式、HTTP://www.aliyun.com/zixun/aggregation/12423.html"> 虛擬系統和虛擬裝置)共用。 共用服務向多個應用程式提供一些運行時服務或代表多個應用程式向最終使用者提供服務。
您通常僅會在每個雲組中發現一個共用服務引用(雲組是定義雲的典型的硬體分組),共用服務可供雲組中的所有應用程式部署使用。 這意味著共用服務必須提供多租戶訪問能力。
圖 1. 共用服務是一種預定義的模式,由多個應用程式部署來部署和共用
出於本文的用途,我們將共用服務定義為一個可供其他虛擬應用程式(用戶端部署)使用的部署。 一個或多個用戶端部署可連接到單個共用服務部署來訪問一個通用資料存儲庫。
本文介紹從外掛程式開發工具組 (PDK) 導入和自訂示例共用服務的步驟,這個共用服務稱為示例共用服務或媒介服務。
媒介共用服務的概念
一個虛擬應用程式部署常常需要安裝某種形式的預備性二進位程式;例如一個構建伺服器上的二進位檔案或 ISO DVD 映射。 可能有一些原因會導致不使用應用程式模式或元件外掛程式封裝這些二進位檔案,比如許可、代碼分發問題,或者二進位檔案可能需要獨立于應用程式模式進行更新。
在雲環境中,多個應用程式部署可能需要引用相同的媒介檔。 如果需要的檔位於雲外的較慢(或許遠端的)網路上,那麼將檔下載到每個部署的虛擬應用程式中可能需要很長時間。
來解決這些問題,我們建議創建一個新的媒介共用服務,該服務擁有一個供雲組中的任何虛擬應用程式使用的二進位檔案存儲庫。 媒介服務可以獨立于虛擬應用程式和外掛程式來部署並載入預備檔。
無需在每次開始部署新應用程式時從雲外部的某個地方複製檔,您可以將檔案複製到媒介服務虛擬機器 (VM) 中一次,將它們放在雲中的本地。 這使管理員能夠在更加集中化的設計中管理此服務,而不是通過不共用任何通用框架的獨立 VM。
檔從媒介服務複製到虛擬應用程式的速度可能快得多,因為此操作完全在機架(表示 PureApplication System)和雲組內部進行,使多個部署能夠快速訪問資料。
下面的示例是媒介服務的一個典型流:
部署共用服務/媒介服務。 媒介服務 VM 啟動並通過雲組上的 NFS 載入要共用的二進位檔案。 部署一個使用該媒介服務的虛擬應用程式(模式中的元件標記或策略)。 虛擬應用程式向媒介服務請求二進位檔案位置和/或連接資訊。 虛擬應用程式可通過 NFS 從媒介服務 VM 掛載檔存儲庫。 對多個虛擬應用程式部署重複上述過程。 每個部署會獲得通過媒介服務訪問共用檔的能力。
我們將首先看看外掛程式開發工具組中提供的示例共用服務,與您一起分析所提供的元素,然後將共用服務導入到將部署到雲中的 IBM PureApplication System 或 IBM Workload Deployer 產品中。 這會為您提供添加一般共用服務的總體資訊。
然後我們將介紹如何修改示例共用服務外掛程式,使其成為媒介共用服務,展示您可以如何輕鬆地添加新共用服務。 在這一節之後是完成此任務的步驟和程式碼片段,您可輕鬆地使用所提供的資源創建自己的媒介共用服務和未來的自訂共用服務。
構建和安裝 PDK、服務和用戶端虛擬應用程式
PDK v1.0.0.4 中提供的示例共用服務可作為一個不錯的自訂框架。 它設置了所需的檔結構,並定義用於以下方面的代碼腳本:
一個具有 REST API 管理介面的示例共用服務。 一個用戶端虛擬應用程式元件,它使用調用 REST API 管理介面的示例共用服務。
首先導入示例代碼,然後繼續添加自訂功能。
下載 PDK v1.0.0.4。 部署外掛程式的最低需求是 IBM Workload Deployer 3.1.0.2 或 IBM PureApplication System v1.0。
要記住的一些事項:
確保您導入了所有包含共用服務和共用服務用戶端的專案。 轉到 plug-in.depends 專案並使用 ANT 運行 build.xml。 按該循序執行清理和發佈目標。 這會構建所有包含共用服務和共用服務用戶端的外掛程式專案。 轉到 patterntype.hello 並使用 ANT 運行 build.patterntype.xml。 按該循序執行清理併發布目標。 這會將來自 plug-in.depends 的輸出封裝到一個要導入的模式中。
現在讓我們在 Workload Deployer 或 PureApplication System 中安裝該模式類型。