自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

設(shè)計虛擬系統(tǒng)模式

運維 系統(tǒng)運維
虛擬系統(tǒng)模式將復(fù)雜應(yīng)用程序和平臺的部署完全自動化,并充分利用最佳實踐的優(yōu)勢,因此虛擬系統(tǒng)模式開發(fā)中最重要的技術(shù)角色是應(yīng)用程序部署者的角色。

 虛擬系統(tǒng)模式將復(fù)雜應(yīng)用程序和平臺的部署完全自動化,并充分利用最佳實踐的優(yōu)勢,因此虛擬系統(tǒng)模式開發(fā)中最重要的技術(shù)角色是應(yīng)用程序部署者的角色。

應(yīng)用程序部署者是以下內(nèi)容的主題專家:

  • 確定應(yīng)用程序的先決條件(包括硬件和軟件)。
  • 從高可用性、可擴展性、故障轉(zhuǎn)移和容錯的角度了解解決方案架構(gòu)。
  • 應(yīng)用針對應(yīng)用程序部署的最佳實踐,并了解安裝和配置的瓶頸。
  • 安裝應(yīng)用程序的所有組件。
  • 為應(yīng)用程序的安裝編寫腳本(使用 shell、Jython 和 DDL 腳本)。
  • 管理作為先決條件的中間件和軟件產(chǎn)品。
  • 在應(yīng)用程序上運行基本的功能測試。

理想的情況下,應(yīng)用程序部署者在安裝、部署和配置方面有著豐富的經(jīng)驗,可以識別關(guān)鍵手動任務(wù)的,將這些構(gòu)建到模式行業(yè)最佳實踐中。例如,如果大多數(shù)客戶或用戶在 WebSphere® 中運行一個特定的 Java™ 虛擬機 (JVM) 堆大小,那么這個設(shè)置鐠葞建到模式中。

因此,讓我們來看看有關(guān)規(guī)劃和設(shè)計虛擬系統(tǒng)模式的過程的一些建議;我們會盡量對每一點都提供有用的解釋。我們將討論的主題包括:

  • 虛擬系統(tǒng)模式 (VSP) 設(shè)計中的關(guān)鍵概念,如彈性、拓撲、編排(orchestration)和安全性。
  • 部署虛擬系統(tǒng)模式時的一些重要技術(shù)方面:
    • 識別運行時并將其映射到模式組件。
    • 將本機組件納入模式。
    • 重用現(xiàn)有的資產(chǎn),如腳本和工具。
    • 調(diào)整虛擬磁盤的大小。
  • 有三種方式可以擴展 IBM PureApplication System 中提供的基礎(chǔ)鏡像目錄的功能:利用腳本包,內(nèi)置擴展/捕獲工具,以及鏡像構(gòu)建和組成工具 (Image Construction and Composition Tool, ICON)。
  • 在模式的開發(fā)和測試的迭代方法中的最佳實踐。

一些重要的設(shè)計概念

在設(shè)計和開發(fā)虛擬系統(tǒng)模式時,會涉及這些概念:

  • 彈性
  • 拓撲
  • 編排 (Orchestration)
  • 安全性

讓我們更詳細地討論每一點。

彈性

在云環(huán)境中的彈性涉及通過動態(tài)分配資源實現(xiàn)應(yīng)用程序的自動水平和垂直縮放。在一個虛擬系統(tǒng)模式中,可以使用 IBM PureApplication System 中的 Intelligent Management Pack (IMP) 特性,使 WebSphere Application Server 環(huán)境變得有彈性。

根據(jù)服務(wù)水平協(xié)議或通過策略描述的性能指標,IMP 特性可以在虛擬系統(tǒng)模式中按需要增大或縮小 WebSphere Application Server 單元。我們舉個例子來說明 IMP 如何實現(xiàn)水平縮放,當它在 WebSphere Application Server 單元中檢測到一個可能耗盡當前 CPU 容量的工作負載峰值時,它會自動配置一個新的 WAS 節(jié)點,以滿足工作負載的需求。此外,IMP 有足夠的靈活性,可以在配置時實現(xiàn)垂直縮放。為了滿足響應(yīng)時間的 SLA 以防止性能降級,IMP 可以在 WebSphere 集群中觸發(fā)啟動新的 JVM。

如果您的應(yīng)用程序要求彈性,那么請考慮在IBM PureApplication System 中使用增強了 IMP 的 WebSphere Application Server 環(huán)境。


圖 1. 在 VSP 中選擇支持 IMP 的 WebSphere 鏡像
在 VSP 中選擇支持 IMP 的 WebSphere 鏡像 

拓撲

如果已在當前環(huán)境中應(yīng)用了現(xiàn)有的拓撲最佳實踐,這些也都將與虛擬系統(tǒng)模式相關(guān)。

例如,如果您使用安裝了 8 個 JVM 和內(nèi)存中 (in-memory) 會話復(fù)制的一個集群 WebSphere Application Server 作為用于生產(chǎn)的最佳實踐,那么該實踐同樣適用于生產(chǎn)方面的虛擬系統(tǒng)模式。

對于開發(fā)測試方面的虛擬系統(tǒng)模式,您可以選擇單一服務(wù)器配置,并在 JVM 上選擇較小的堆大小。

作為虛擬系統(tǒng)模式設(shè)計的一部分,創(chuàng)建拓撲的關(guān)系圖很有幫助,可以在關(guān)系圖中列出每個產(chǎn)品(以及每個產(chǎn)品的虛擬機數(shù)量),并反映每個虛擬機之間的關(guān)系;例如,如果 WebSphere Application Server 需要連接到 MQ 服務(wù)器,那么這種通信應(yīng)反映在拓撲關(guān)系圖上。


圖 2. 在關(guān)系圖中記錄 VSP 的拓撲
在關(guān)系圖中記錄 VSP 的拓撲 

編排

拓撲被確定為虛擬系統(tǒng)模式后,下一個邏輯步驟是列出在每個虛擬機中所需的操作,以安排該系統(tǒng)的啟動。并且應(yīng)確定每個操作的順序。


圖 3. 確定對拓撲所安排的順序
確定對拓撲所安排的順序 

例如,如果您的應(yīng)用程序的安裝流程要求啟動數(shù)據(jù)庫,并在適當?shù)牡胤绞褂媚撤N模式運行它,那么在應(yīng)用程序安裝進程開始前先安排數(shù)據(jù)庫的安裝是有意義的。

為了支持這種編排,虛擬系統(tǒng)模式允許設(shè)計者指定啟動虛擬機的順序,以及在這些虛擬機中執(zhí)行自動化腳本的順序。


圖 4. 用 VSP 部署工具指定編排順序
用 VSP 部署工具指定流程順序 

在一個擴展版本的拓撲關(guān)系圖中列出這些編排任務(wù)(包括它們的順序)是有幫助的,因為這將成為虛擬系統(tǒng)模式開發(fā)人員的藍圖。

安全性:目錄服務(wù)器

在設(shè)計虛擬系統(tǒng)模式時,LDAP 支持是其中一個要考慮的與安全相關(guān)的主題。通常,應(yīng)用程序單獨使用專用的 LDAP 服務(wù)器;大多數(shù)應(yīng)用程序?qū)⑦B接到現(xiàn)有的 LDAP 服務(wù)器(如企業(yè) LDAP 目錄)獲得受保護資源的授權(quán)訪問。在這種情況下,虛擬系統(tǒng)模式中不包含 LDAP 服務(wù)器組件。

從 WebSphere Application Server 的角度來看,可以通過腳本包捕獲虛擬系統(tǒng)模式中現(xiàn)有 LDAP 服務(wù)器的連接,該腳本包提取 LDAP服務(wù)器信息(主機、用戶/密碼等)作為輸入?yún)?shù)。該腳本包將通過 Jython 腳本在 WebSphere Application Server 中自動化 LDAP 連接的配置,從而減輕虛擬系統(tǒng)模式用戶進行手工配置的工作。


圖 5. 使用腳本包在 WAS 中配置 LDAP 連接
使用腳本包在 WAS 中配置 LDAP 連接 

如果應(yīng)用程序需要一個專用的 LDAP 服務(wù)器,那么可以使用在 IBM PureApplication System 中的 Web application Virtual Application Pattern 先啟動一個新的 Tivoli® Directory Server 實例,然后在虛擬系統(tǒng)模式中的 WebSphere 實例可以連接到新啟動的 Tivoli Directory Server 的 LDAP 服務(wù)器,在通過新的 Tivoli Directory Server 配置 WebSphere Application Server 時,可以使用虛擬系統(tǒng)模式中的腳本包。


圖 6. 將 VSP 中的一個 WAS 實例連接到由虛擬應(yīng)用程序模式啟動的 TDS 服務(wù)器
將 VSP 中的一個 WAS 實例連接到由虛擬應(yīng)用程序模式啟動的 TDS 服務(wù)器 

 

 

從組織中的其他關(guān)鍵角色收集輸入

在某些組織中,重要的主題知識可能分散在多個角色中,可能需要更廣泛的技術(shù)專家參與,如:

  • 應(yīng)用程序架構(gòu)師:如果在虛擬系統(tǒng)模式創(chuàng)建中要執(zhí)行一個產(chǎn)品版本遷移,就需要這個角色。例如,如果通過遷移到一個虛擬系統(tǒng)模式將應(yīng)用程序服務(wù)器的版本從一個級別升級到另一個級別,那么應(yīng)用程序架構(gòu)師可能也需要對潛在的代碼遷移提供輸入。
     
  • 應(yīng)用程序測試人員:如果應(yīng)用程序需要復(fù)雜功能和/或性能測試,而這些測試對應(yīng)用程序部署人員而言是未知的,那么在虛擬系統(tǒng)模式中部署該應(yīng)用程序后,測試人員可能需要參與驗證應(yīng)用程序的正常運行。
     
  • 銷售工程師和產(chǎn)品經(jīng)理:對客戶在安裝、配置、生命周期管理和縮放方面的難題具有深入洞察力的員工,可以向虛擬系統(tǒng)模式設(shè)計提供有價值的輸入。例如,產(chǎn)品經(jīng)理可能會注意到,一個虛擬系統(tǒng)模式可能將為期 10 天的安裝/配置周期縮短為 20 分鐘,從而改善產(chǎn)品上市時間或?qū)崿F(xiàn)價值的時間。銷售工程師可能指出,如果虛擬系統(tǒng)模式可以在幾分鐘(而不是幾小時/幾天)內(nèi)為顧客啟動一個 POC 環(huán)境,他可以降低平均銷售周期長度,并向客戶展示產(chǎn)品的易用性。

推薦的最佳實踐是在最初的會議中使用這些 “資源”,按照設(shè)計收集輸入信息,并在前期發(fā)現(xiàn)潛在的問題。隨著項目的向前推進,讓主要的應(yīng)用程序部署人員聯(lián)系擴展團隊,因為有可能在后期需要他們的幫助。

與任何項目一樣,非技術(shù)性的角色也參與虛擬系統(tǒng)模式的開發(fā),如項目發(fā)起人和項目經(jīng)理的角色。然而,對這些角色的描述已超出本文的范圍。

 

 

識別和映射運行時

您一定會希望識別各種運行時,以便有效地將它們映射到虛擬系統(tǒng)模式組件。讓我們來看看這些流程。

識別運行時

在虛擬系統(tǒng)模式設(shè)計中的第一步,是識別托管目標應(yīng)用程序所需要的所有運行時組件(包括準確的版本號)。這通常包括:

  • 操作系統(tǒng),包括擴展,例如 Linux® 上特定的 RPM。
  • Web 服務(wù)器。
  • 應(yīng)用程序服務(wù)器。
  • 數(shù)據(jù)庫。
  • 業(yè)務(wù)流程服務(wù)器。
  • 消息和連接性組件,如 MQ。
  • 自定義中間件組件,如一個自定義 C++ 應(yīng)用程序服務(wù)器。

要檢查的第一種運行時是操作系統(tǒng);確保在 IBM PureApplication System 上支持它。

將中間件運行時映射到模式組件

確認支持所需的操作系統(tǒng)后,映射就可以開始:

  • IBM 中間件組件應(yīng)該被映射到 IBM PureApplication System 自帶的中間件產(chǎn)品的虛擬機管理程序版本。例如,如果 Red Hat Linux 上的 WebSphere Application Server V7 是其中一個運行時組件,那么它映射到 IBM PureApplication System 自帶的 WebSphere Application Server V7.X hypervisor edition for Red Hat Linux 鏡像。
     
  • 如果與 IBM PureApplication System 鏡像目錄中的 IBM 產(chǎn)品的版本號不存在精確匹配,那么將需要執(zhí)行一個評估,看看應(yīng)用程序是否可以在產(chǎn)品的較新版本上運行。例如,如果應(yīng)用程序在 WebSphere Application Server V7.0.0.17 上運行,而 IBM PureApplication System 中的 WebSphere Application Server 鏡像是 V7.0.0.19,就需要評估該應(yīng)用程序是否可以在 WebSphere Application Server 的較新版本上運行。
     
  • 如果應(yīng)用程序無法在 IBM PureApplication System 中的 IBM 產(chǎn)品版本級別上運行,或者如果在 IBM PureApplication System 鏡像目錄中不存在 IBM 產(chǎn)品的虛擬機管理程序版本,那么該系統(tǒng)提供了可創(chuàng)建完全定制的虛擬鏡像的靈活性。 

    圖 7. 擴展和捕獲目錄中的基礎(chǔ)鏡像
    擴展和捕獲目錄中的基礎(chǔ)鏡像 

    • 自定義鏡像:可以通過 IBM PureApplication System 中的 擴展/捕獲功能 或通過 ICON 工具 創(chuàng)建產(chǎn)品的自定義鏡像。在此方法中,操作系統(tǒng)的虛擬機管理程序核心映象被當作一個基礎(chǔ),然后在這個操作系統(tǒng)核心鏡像上安裝產(chǎn)品。然后,會將這個自定鏡像捕獲回 IBM PureApplication System,將它用于可重復(fù)的部署。
    • 自定義鏡像的支持考慮因素:在創(chuàng)建 IBM 中間件產(chǎn)品的自定義鏡像之前,請咨詢 IBM 技術(shù)支持,以確??梢灾С衷摦a(chǎn)品的這種配置。
  • 如果虛擬系統(tǒng)模式組件映射到非 IBM 產(chǎn)品,那么我們剛才所介紹的自定義鏡像方法可用于將非 IBM 產(chǎn)品包括在虛擬系統(tǒng)模式中。 

    圖 8. 將拓撲中的產(chǎn)品映射到 VSP 中的組件
    將拓撲中的產(chǎn)品映射到 VSP 中的組件 
     
 

 

將本機組件納入模式

本機組件是與操作系統(tǒng)有關(guān)的產(chǎn)品或運行時。例如,一個用 C++ 編寫的自定義服務(wù)器可以被視為本機組件,因為它可能已被編譯為可在某個特定的操作系統(tǒng)或架構(gòu)上運行。

首要的一點是,要確保本機組件與 IBM PureApplication System 上的目標虛擬機管理程序版本的操作系統(tǒng)兼容。

可以通過一個 腳本包、擴展/捕獲 或 ICON 工具方法 將本機組件帶入虛擬系統(tǒng)模式。

 

 

重用現(xiàn)有的腳本和工具

虛擬系統(tǒng)模式旨在最大限度地重用客戶在其基礎(chǔ)架構(gòu)和平臺中已作出的現(xiàn)有投資。自動化應(yīng)用程序的安裝和配置的腳本會是在虛擬系統(tǒng)模式開發(fā)中可重用的關(guān)鍵資產(chǎn)。


圖 9. 腳本重用的關(guān)系圖
腳本重用的關(guān)系圖 

例如,如果您有一個的 Jython 腳本,可用它來創(chuàng)建 WebSphere Application Server 集群,配置數(shù)據(jù)源/隊列定義,并安裝一個 EAR 文件,那么您可以很容易地在虛擬系統(tǒng)模式環(huán)境中重用這樣的腳本,用它來安排您的應(yīng)用程序的啟動。這種情況同樣適用于創(chuàng)建架構(gòu)并用初始數(shù)據(jù)填充表的 DB2® DDL 或 SQL 文件;在虛擬系統(tǒng)模式中,也可以輕松地將這些腳本應(yīng)用于 DB2 組件。

此外,如果虛擬系統(tǒng)模式中的產(chǎn)品在 IBM PureApplication System 中不存在虛擬機管理程序鏡像,那么這些產(chǎn)品的任何現(xiàn)有自動化工具在虛擬系統(tǒng)模式中都將非常有用。例如,第三方產(chǎn)品的靜默安裝工具(而不是 GUI 驅(qū)動的安裝程序)可以在虛擬系統(tǒng)模式中重用,實現(xiàn)非 IBM 產(chǎn)品的啟動自動化。

 

 

磁盤大小的考慮因素

虛擬機管理程序版本鏡像的默認配置與特定的磁盤大小配套。例如,WebSphere Application Server 的配置文件被放置在一個 2GB 的虛擬磁盤,并且 DB2 數(shù)據(jù)虛擬磁盤的默認大小是 10GB。

如果應(yīng)用程序需要不同的磁盤大小,那么您將需要使用更大的虛擬磁盤 擴展/捕獲 在 IBM PureApplication System 目錄中各個產(chǎn)品的鏡像。

還應(yīng)該制定一個戰(zhàn)略,清理或滾動可能會導致虛擬磁盤填滿的日志文件和臨時文件。

 

 

在模式中擴展和捕獲組件

如果虛擬系統(tǒng)模式中的產(chǎn)品在 IBM PureApplication System 中不存在虛擬機管理程序鏡像(這些可能是非 IBM 的第三方產(chǎn)品,或不存在相應(yīng)虛擬機管理程序鏡像版本的 IBM 產(chǎn)品),那么有三種方法可以在虛擬系統(tǒng)模式中捕獲這樣的產(chǎn)品/組件:

  • 使用腳本包。
  • 使用擴展/捕獲方法。
  • 使用 Image Construction and Composition Tool (ICON)。

使用腳本包

腳本包可以使現(xiàn)有的或新的腳本在由虛擬系統(tǒng)模式配置的虛擬機上運行。他們被稱為 “包” 的原因是,用戶將一個 ZIP 或 TAR 文件上傳到一個設(shè)備,該設(shè)備可以包含腳本和相關(guān)的二進制文件,以及該腳本需要據(jù)其執(zhí)行的文件。例如,如果一個腳本包需要執(zhí)行一個自定義的 Java 程序,用戶可以上傳一個 ZIP 文件,其中包含一個 JAR 文件,以及調(diào)用該 JAR 文件內(nèi)的 Java 代碼的 shell 腳本。

此外,腳本包可以訪問內(nèi)置的環(huán)境變量,使它們更了解作為其運行環(huán)境的云。例如,WebSphere Application Server VM 中的腳本包可以在部署時查找云中的一個 DB2 VM 的主機名(這也是同一個虛擬系統(tǒng)模式的一部分)。

因此,腳本包也可以被用來自動化第三方組件在 IBM PureApplication System 虛擬機管理程序鏡像上的安裝和配置。

至于選擇什么樣的虛擬機管理程序鏡像來安裝第三方產(chǎn)品的問題,要在 Core OS 鏡像和模式中已存在的任何其他虛擬機管理程序鏡像之間作出選擇。為了正確回答這個問題,需要考慮若干因素。

如果您的第三方產(chǎn)品可以放在作為虛擬系統(tǒng)模式的一部分的同一個鏡像上,那么操作更簡單,只需在現(xiàn)有鏡像上安裝產(chǎn)品。舉例來說,如果在虛擬系統(tǒng)模式中已經(jīng)有一個 WebSphere Application Server 鏡像,并且第三方產(chǎn)品可以與 WebSphere Application Server 共處,那么操作更簡單,只需將腳本包添加到 WebSphere Application Server VM。

但是,如果產(chǎn)品需要自己的專用虛擬機,那么就需要在虛擬系統(tǒng)模式中使用 Core OS 鏡像,并將腳本包添加到它上面。Core OS 鏡像是一個空白的虛擬機管理程序鏡像,它上面只安裝了一個操作系統(tǒng)。像其他常規(guī) IBM 產(chǎn)品的虛擬機一樣,這個 Core OS 鏡像的虛擬機將作為模式的一部分啟動,被添加到該虛擬機的腳本包將被執(zhí)行,以安裝、配置和啟動第三方產(chǎn)品。

因此,如果第三方產(chǎn)品的二進制文件不是非常大(在寫這篇文章時,從 IBM PureApplication System GUI 上傳的腳本包大小被限制為 2GB),并且如果您的第三方產(chǎn)品的安裝/配置不是很復(fù)雜,可以用 shell 腳本實現(xiàn)安裝/配置的自動化,這個方法將會很適合。

請注意,大于 2GB 的腳本包可以通過部署工具的命令行界面上傳。如果使用腳本包來打包大文件或產(chǎn)品的二進制文件,那么腳本的最佳實踐是訪問網(wǎng)絡(luò)文件系統(tǒng)或存儲大文件的中央存儲庫。

擴展/捕獲

雖然腳本包允許在部署虛擬系統(tǒng)模式時自定義虛擬機管理程序鏡像(通過腳本),但擴展/捕獲方法可以在虛擬系統(tǒng)模式被部署之前自定義虛擬機,并使自定義虛擬機成為 IBM PureApplication System 目錄的一部分。

如果您想為所有模式中的虛擬機設(shè)置標準基線,擴展/捕獲會是做到這一點的一個好方法。例如,如果 IBM PureApplication System 中的 WebSphere Application Server 虛擬機管理程序鏡像配置文件目錄的默認磁盤大小不符合您的要求,您希望 WebSphere Application Server 配置文件使用更大的磁盤,那么您可以擴展目錄中的 WebSphere Application Server 鏡像,并向 WebSphere Application Server 配置文件目錄分配更多磁盤空間。上述原則同樣適用于您希望在虛擬機上執(zhí)行的任何其他標準化,比如讓特定的 Linux RPM 出現(xiàn)在所有模式中的某些虛擬機上。

此外,擴展/捕獲方法還可以用于在 Core OS 或現(xiàn)有的 IBM 產(chǎn)品虛擬機管理程序鏡像上安裝第三方產(chǎn)品。在擴展/捕獲方法中,要擴展的鏡像首先被部署到云中,然后在為該鏡像配置的虛擬機上執(zhí)行手動定制(如第三方產(chǎn)品安裝)。一旦完成定制后,已部署虛擬機的狀態(tài)就會捕獲到目錄中,并會使用一個新的邏輯名稱。然后,該定制鏡像可在任何虛擬系統(tǒng)模式中使用。

若產(chǎn)品的安裝和/或配置無法通過腳本實現(xiàn),擴展/捕獲方法對于腳本包是更可取的方法(適用于第三方產(chǎn)品)。例如,如果您的產(chǎn)品是只能通過一個需要人為干預(yù)的 GUI 進行安裝,那么擴展/捕獲方法就是一個不錯的選擇。此外,在您希望在一個虛擬系統(tǒng)模式中快速安裝產(chǎn)品,并且目前還沒有資源創(chuàng)建腳本實現(xiàn)自動安裝的情況下,那么這可能也是一個較好的方法。

此外,如果您的第三方產(chǎn)品的二進制文件非常大(大于 2GB),那么擴展/捕獲方法對于腳本包是更可取的方法。

您會注意到,腳本包可以防止所謂的 “鏡像蔓延”,它們使您可以將不同的 “風格” 添加到基礎(chǔ)鏡像。如果沒有腳本包,即使只是配置略有不同的一個基礎(chǔ)鏡像,仍然需要您執(zhí)行一次擴展/捕獲流程,這將導致目錄中有大量鏡像。

擴展/捕獲方法也有一些挑戰(zhàn)。

首先,用戶在所捕獲的虛擬機上執(zhí)行的定制是手動的,因此它是不容易重復(fù)的,除非對它進行了徹底的記錄。例如,如果您支持 Red Hat 和SuSE Linux,那么您將必須對兩種風格的 Linux 執(zhí)行兩次這種定制。同樣,如果您想完全升級到一個新版本的虛擬機管理程序鏡像,您將不得不重復(fù)這個手動定制過程。

第二,請記住,定制的鏡像的某些屬性是動態(tài)的;它們在每次部署時都會改變。例如,云中的某個鏡像的每個實例都有一個動態(tài)分配的主機名或 IP 地址。如果在鏡像上配置的第三方產(chǎn)品需要這種動態(tài)信息,相關(guān)的腳本包(在鏡像激活時運行)將被用于更新鏡像中的這些信息。

可以使用 ICON 工具解決其中的一些挑戰(zhàn)。

使用 Image Construction and Composition Tool

Image Construction and Composition Tool (ICON) 是一個 IBM PureApplication System 自帶的工具,它支持基礎(chǔ)虛擬鏡像的重復(fù)定制。上文解釋的擴展/捕獲原則也適用于 ICON,但有一個重要區(qū)別:ICON 通過一個被稱為 bundle 的概念來實現(xiàn)鏡像的模塊化定制,這意味著使用 ICON 時,會記錄鏡像的定制本身,并且這些鏡像是可重復(fù)的。

ICON 中的 bundle ,代表軟件以及安裝/配置該軟件所需要的配置腳本, bundle 在基礎(chǔ)虛擬機管理程序鏡像上運行。配置腳本作為鏡像激活的一部分執(zhí)行,因此能夠了解它們正在運行的云環(huán)境(如動態(tài)提取虛擬機的主機名)。在 ICON 中,多個 bundle 可以被添加到一個鏡像。并且 bundle 可以在不同的鏡像中重用。例如,“產(chǎn)品 X” 的 bundle 可以用來定制一個 Red Hat 或 SUSE 映象。

同樣,如果出現(xiàn)較新版本的基礎(chǔ)鏡像,并且需要進行定制,現(xiàn)有的 bundle 能夠以自動化和可重復(fù)的方式再次在新的基礎(chǔ)鏡像上運行,從而減少了定制虛擬鏡像的維護負擔。

因此,雖然 ICON 需要更大的前期投資,但如果涉及多個操作系統(tǒng)支持,如果鏡像定制的可重復(fù)性是一個關(guān)注點,或者鏡像需要頻繁升級,那么在 IBM PureApplication System 中它將優(yōu)于基本的擴展/捕獲方法。


表 1. 各種任務(wù)相應(yīng)的最適合工具

工具 ... ... 最適合于 ...
腳本包 占用較少資源的產(chǎn)品的安裝
不要求人工干預(yù)的靜默安裝選項的產(chǎn)品
安裝后的定制步驟
拓撲的順序編排
擴展/捕獲 GUI 驅(qū)動的安裝進程,沒有靜默安裝選項
占用較多資源的產(chǎn)品的安裝
更快的大型拓撲部署時間
ICON 簡化已導入 IBM PureApplication System 的自定義虛擬鏡像的創(chuàng)建
復(fù)雜的非 IBM 產(chǎn)品的安裝
 

 

迭代開發(fā)和測試

最后,讓我們看看開發(fā)和測試虛擬系統(tǒng)模式的總體思路,這也適用于大多數(shù) IT 開發(fā)工作。

通過“大爆炸式采用” 方法來開發(fā)虛擬系統(tǒng)模式是非常有誘惑力的,在這種方法中,您嘗試在第一次運行中就自動化虛擬系統(tǒng)模式中每個組件的啟動和配置。但這種方法是有風險的,因為它可能會延遲發(fā)現(xiàn)在新環(huán)境中運行應(yīng)用程序所帶來的不可預(yù)見的挑戰(zhàn)。

如果您剛好要借助虛擬系統(tǒng)模式的方法來升級到較新的產(chǎn)品或不同的產(chǎn)品版本,將特別容易發(fā)生這種情況。例如,您可能會發(fā)現(xiàn),應(yīng)用程序需要進行一些調(diào)整才能在不同的產(chǎn)品版本上工作?;蛘邥l(fā)現(xiàn),在虛擬機管理程序鏡像中,第三方組件在特定版本的操作系統(tǒng)上無法正常運行。

為了防止過晚發(fā)現(xiàn)此類問題,最好是采取迭代的方法進行虛擬系統(tǒng)模式開發(fā)。通過手動試運行所有您希望通過腳本包實現(xiàn)自動化的任務(wù),可以做到這一點:

  • 不使用腳本包,將拓撲中的所有虛擬機部署到云中。 
     
  • 如果您已經(jīng)有現(xiàn)成的腳本可以在虛擬機上執(zhí)行配置任務(wù),通過將它們直接上傳到虛擬機并手工調(diào)用它們來手動運行它們。如果您還沒有腳本,那么手動執(zhí)行所有任務(wù)(通過 GUI 或命令行),并記錄您所發(fā)現(xiàn)的與原始虛擬系統(tǒng)模式的編排步驟之間的差異。
     
  • 配置好所有虛擬機,并手動啟動鐠用程序后,在環(huán)境上運行一些基本的測試,以驗證應(yīng)用程序。
     
  • 一旦您驗證了應(yīng)用程序在該環(huán)境中可正常工作,您就可以開始創(chuàng)建腳本,自動化您所執(zhí)行的所有手動步驟。
     
  • 如果您有現(xiàn)成的腳本,那么您需要做的只是將它們添加到腳本包。不過,如果您沒有現(xiàn)成的腳本,那么您可以先在您手動配置的虛擬機上迭代開發(fā)腳本。
    • 此外,也可以使用迭代方法進行腳本包測試。 腳本包可以被指定為自動運行(在虛擬機啟動或關(guān)閉時)或通過工作負載部署 GUI 手動運行。
    • 從 GUI 手動運行它們的好處是,在每次調(diào)用時都可以提取腳本包的更新。因此,這讓您可以迭代地測試腳本包,而無需每次修改腳本都重新部署整個虛擬系統(tǒng)模式。

【編輯推薦】

  1. 在OpenSSH中設(shè)置SSH的無密碼登陸
  2. Linux服務(wù)器的16個監(jiān)控命令
  3. 服務(wù)器性能指標:撥開服務(wù)器評測體系迷霧
責任編輯:趙寧寧 來源: www.ibm.com
相關(guān)推薦

2021-02-01 10:01:58

設(shè)計模式 Java單例模式

2023-11-02 21:11:11

JavaScript設(shè)計模式

2021-07-28 08:31:25

設(shè)計系統(tǒng)應(yīng)用

2022-01-12 13:33:25

工廠模式設(shè)計

2023-05-04 08:47:31

命令模式抽象接口

2013-11-26 16:09:34

Android設(shè)計模式

2020-10-23 09:40:26

設(shè)計模式

2020-11-03 13:05:18

命令模式

2020-11-04 08:54:54

狀態(tài)模式

2023-04-10 09:20:13

設(shè)計模式訪客模式

2020-08-21 07:23:50

工廠模式設(shè)計

2021-04-19 21:25:48

設(shè)計模式到元

2014-08-14 10:10:34

設(shè)計模式熔斷器

2013-07-23 10:53:36

虛擬化平臺云計算

2013-08-23 17:39:48

虛擬化云計算

2012-07-05 09:22:05

云計算IaaS

2013-08-12 11:30:52

Iaas虛擬化

2021-06-09 08:53:34

設(shè)計模式策略模式工廠模式

2012-07-10 02:01:53

設(shè)計模式命令模式

2020-10-19 09:28:00

抽象工廠模式
點贊
收藏

51CTO技術(shù)棧公眾號