TWI516059B - 主從裝置環境的部署方法與系統 - Google Patents

主從裝置環境的部署方法與系統 Download PDF

Info

Publication number
TWI516059B
TWI516059B TW102116522A TW102116522A TWI516059B TW I516059 B TWI516059 B TW I516059B TW 102116522 A TW102116522 A TW 102116522A TW 102116522 A TW102116522 A TW 102116522A TW I516059 B TWI516059 B TW I516059B
Authority
TW
Taiwan
Prior art keywords
deployment
deployed
specific
host
control terminal
Prior art date
Application number
TW102116522A
Other languages
English (en)
Other versions
TW201444320A (zh
Inventor
董匡皓
Original Assignee
緯創資通股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 緯創資通股份有限公司 filed Critical 緯創資通股份有限公司
Priority to TW102116522A priority Critical patent/TWI516059B/zh
Priority to CN201310195642.7A priority patent/CN104144073B/zh
Priority to US14/078,533 priority patent/US9525592B2/en
Publication of TW201444320A publication Critical patent/TW201444320A/zh
Application granted granted Critical
Publication of TWI516059B publication Critical patent/TWI516059B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0876Aspects of the degree of configuration automation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0876Aspects of the degree of configuration automation
    • H04L41/0879Manual configuration through operator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0876Aspects of the degree of configuration automation
    • H04L41/0883Semiautomatic configuration, e.g. proposals from system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0876Aspects of the degree of configuration automation
    • H04L41/0886Fully automatic configuration

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Description

主從裝置環境的部署方法與系統
本發明是有關於一種自動部署方法,且特別是有關於一種主從裝置環境的部署方法與系統。
隨著雲端技術的日趨成熟,各種雲端產品也越來越受到使用者的重視。雲端業者為了擴大其產品佈局,大多會從基礎架構即服務(Infrastructure as a Service,IaaS)、平台級服務(Platform as a Service,PaaS),以及軟體即服務(Software as a Service,SaaS)這三方面找尋利基點,以規劃同時符合業者擅長領域與市場需求的雲端產品。
舉例來說,對於有研發伺服器、儲存裝置及網路設備等硬體的雲端業者來說,由基礎架構即服務出發來規劃雲端產品便能利用本身具備的硬體優勢來提升產品的性價比。許多這類型的雲端業者會採用由美國太空總署(NASA)和Rackspace公司所共同研發的雲端運算軟體OpenStack來建立和提供雲端服務。
然而,無論任何雲端服務都必須透過實體機器進行運算 工作,在採用OpenStack建構服務之下,必須以人工透過手動的方式對每一台實體機器進行部署。也就是說,必須由維護人員針對每一台實體機器去查看其需要什麼套件,再由人工下載及安裝套件。上述動作需要對各種套件的設定檔有深入了解才能順利完成繁瑣的安裝動作。不難想見,倘若機房中的實體機器數量龐大,則每次部署都相當耗時費力,在需要動態增加實體機器時更容易造成不便。
本發明提供一種主從裝置環境的部署方法與系統,能快速且自動地完成主從式網路環境下每一控制端與運算端的部署。
本發明的主從裝置環境的部署方法,用於包括控制端與運算端的主從式網路環境,其中控制端與運算端個別被預設一特定裝置功能。此方法包括提供部署主控端,其記錄多個套件以及各套件的設定檔,以及個別指派一網際網路協定(Internet Protocol,IP)位址給部署主控端、控制端與運算端。此方法還包括由部署主控端在接收到來自控制端與運算端的其中之一待部署裝置的部署請求後,根據部署請求產生自動安裝腳本(auto-shell),並將自動安裝腳本傳送至待部署裝置。此方法更包括由待部署裝置執行所接收的自動安裝腳本,以自動完成實現待部署裝置所對應的特定裝置功能的部署。
在本發明的一實施例中,其中部署主控端在待部署裝置 連線至網際網路時接收到來自待部署裝置的部署請求。
在本發明的一實施例中,其中部署請求包括一配置表, 且待部署裝置是依據被預設的特定裝置功能產生配置表。
在本發明的一實施例中,其中在個別指派網際網路協定 位址給部署主控端、控制端與運算端的步驟之後,更包括由部署主控端依據控制端與運算端個別的網際網路協定位址,提供部署主控端與控制端及運算端之間的檔案分享機制。
在本發明的一實施例中,其中由部署主控端在接收到待 部署裝置的部署請求後,根據待部署裝置的網際網路協定位址與部署請求產生自動安裝腳本,並將自動安裝腳本傳送至待部署裝置的步驟包括當完整接收到來自待部署裝置的部署請求時,對配置表進行掃描。若無法完整掃瞄配置表,則產生掃瞄錯誤記錄並透過檔案分享機制使待部署裝置取得掃瞄錯誤記錄。若完整掃瞄配置表,則根據配置表產生自動安裝腳本,並判斷是否成功透過檔案分享機制傳送自動安裝腳本至待部署裝置。若否,則產生傳送錯誤記錄並透過檔案分享機制使待部署裝置取得傳送錯誤記錄。
在本發明的一實施例中,其中由待部署裝置執行所接收 的自動安裝腳本,以自動完成實現待部署裝置所對應的特定裝置功能的部署的步驟包括執行自動安裝腳本以透過檔案分享機制自儲存於部署主控端的所有套件中取得實現特定裝置功能的至少一 特定套件,及/或透過外部網路下載實現特定裝置功能的特定套件,並自動安裝上述特定套件於待部署裝置。
在本發明的一實施例中,其中自動安裝腳本包括各特定 套件的設定檔,而自動安裝上述特定套件於待部署裝置的步驟包括根據各特定套件的設定檔執行各特定套件的安裝程序。
在本發明的一實施例中,其中主從式網路環境為雲端運 算環境,且控制端被預設的特定裝置功能相異於運算端被預設的特定裝置功能。
從另一觀點來看,本發明的主從裝置環境的部署系統是用於主從式網路環境。此系統包括被預設一第一特定裝置功能的控制端、被預設一第二特定裝置功能的運算端,以及部署主控端。此部署主控端記錄多個套件以及各套件的設定檔。其中,部署主控端在部署主控端、控制端與運算端各別被指派網際網路協定位址後,在接收到來自控制端與運算端中的一待部署裝置的部署請求時,根據部署請求產生自動安裝腳本,並傳送自動安裝腳本至待部署裝置。待部署裝置執行所接收的自動安裝腳本,以自動完成實現待部署裝置所對應的特定裝置功能的部署,其中特定裝置功能為第一特定裝置功能或第二特定裝置功能。
在本發明的一實施例中,其中部署主控端在待部署裝置連線至網際網路時接收到來自待部署裝置的部署請求。
在本發明的一實施例中,其中部署請求包括一配置表,且待部署裝置是依據被預設的特定裝置功能產生配置表。
在本發明的一實施例中,其中部署主控端依據控制端與運算端個別的網際網路協定位址,提供部署主控端與控制端及運算端之間的檔案分享機制。
在本發明的一實施例中,其中部署主控端在完整接收到來自待部署裝置的部署請求後,對配置表進行掃描。若無法完整掃瞄配置表,則部署主控端產生掃瞄錯誤記錄並透過檔案分享機制使待部署裝置取得掃瞄錯誤記錄。若完整掃瞄配置表,則部署主控端根據配置表產生自動安裝腳本,並判斷是否成功透過檔案分享機制傳送自動安裝腳本至待部署裝置。若否,則部署主控端產生傳送錯誤記錄並透過檔案分享機制使待部署裝置取得傳送錯誤記錄。
在本發明的一實施例中,其中待部署裝置執行自動安裝腳本以透過檔案分享機制自儲存於部署主控端的所有套件中取得實現特定裝置功能的至少一特定套件,及/或透過外部網路下載實現特定裝置功能的特定套件,並自動安裝上述特定套件於待部署裝置。
在本發明的一實施例中,其中自動安裝腳本包括各特定套件的設定檔,而待部署裝置根據各特定套件的設定檔執行各特定套件的安裝程序。
在本發明的一實施例中,其中主從式網路環境為雲端運算環境,且第一特定裝置功能相異於第二特定裝置功能。
基於上述,本發明藉由部署主控端分享主從式網路環境 下控制端與運算端所需要的套件與相關設定資訊,據此讓控制端與運算端能自動根據其被設定的裝置功能而從部署主控端或外部網路取得套件且進行安裝。如此一來,不再需要透過人工對各個控制端與運算端進行設定,進而達到快速部署的目的。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
100、500‧‧‧主從裝置環境的部署系統
110‧‧‧控制端
111、120_11、120_21、131‧‧‧儲存單元
113、120_13、120_23‧‧‧第一網路卡
115、120_15、120_25‧‧‧第二網路卡
120、120_1、120_2‧‧‧運算端
130‧‧‧部署主控端
133‧‧‧網路卡
140‧‧‧網路
540‧‧‧內部網路
S210~S260‧‧‧本發明一實施例所述的主從裝置環境的部署方 法的各步驟
S310~S360‧‧‧本發明一實施例所述的產生並傳送自動安裝腳本的各步驟
S410~S450‧‧‧本發明一實施例所述的執行自動安裝腳本以自動完成部署的各步驟
600、700、800‧‧‧配置表
圖1是依照本發明的一實施例的一種主從裝置環境的部署系統的方塊圖。
圖2是依照本發明的一實施例的一種主從裝置環境的部署方法的流程圖。
圖3是依照本發明的一實施例的產生並傳送自動安裝腳本的流程圖。
圖4是依照本發明的一實施例的執行自動安裝腳本以自動完成部署的流程圖。
圖5是依照本發明的另一實施例的一種主從裝置環境的部署系統的方塊圖。
圖6、7、8是依照本發明的一實施例的配置表的示意圖。
一般來說,主從式網路環境包括一或多個控制端與一或多個運算端,其中各控制端依照被預設的裝置功能對運算端進行控管,而各運算端則是依照其預設的裝置功能進行相關運算操作。然而無論是控制端或運算端,若要實現其裝置功能,都必須依照其在主從式網路環境中的腳色定位來完成相關套件的安裝與設定。為了更快速且簡單地完成各控制端與運算端的部署,本發明提出一種兼具快速安裝以及網路環境完整性的部署系統與方法,主要透過一部署主控端提供檔案分享機制來分享部署各控制端與運算端所需要的套件內容及設定資訊,且由於部署主控端具有主從式網路環境所需的各種套件,因此即便控制端與運算端的裝置功能各不相同,皆能自部署主控端取得需要的檔案,不需由人工進行檔案搜尋與設定。以下配合圖式,詳細描述本發明的實施例。
圖1是依照本發明一實施例的一種主從裝置環境的部署系統的方塊圖。請參閱圖1,主從裝置環境的部署系統100包括控制端110、運算端120,以及部署主控端130。其中控制端110被預設第一特定裝置功能,運算端120則被預設第二特定裝置功能,其中第一特定裝置功能相異於第二特定裝置功能。在本實施例中,控制端110、運算端120,以及部署主控端130均為具備網路連線功能的實體機器(例如,電腦系統、工作站,或伺服器等,但本發明並不以此為限)。雖未繪示於圖1,然而控制端110、運算端120與部署主控端130個別具有處理器、記憶體、網路元件 (例如網路卡),及硬碟等硬體元件。
如圖1所示,控制端110、運算端120,以及部署主控端130能透過網路140相互傳遞資訊,其中網路140例如是區域網路或網際網路等外部網路。在另一實施例中,控制端110與運算端120之間還具有一內部網路(未繪示),控制端110可透過內部網路對運算端120進行控管。必須特別說明的是,圖1僅是為了方便說明而舉出的範例,在其他實施例中,主從裝置環境的部署系統100可包括兩個以上的控制端及/或兩個以上的運算端,各個控制端可被預設相同或相異的裝置功能,且各個運算端亦能被預設相同或相異的裝置功能。
為了進一步說明主從裝置環境的部署系統100的運作方式,以下搭配另一實施例來對本發明進行說明。圖2是依照本發明一實施例所繪示的一種主從裝置環境的部署方法的流程圖,請同時參閱圖1與圖2。
首先如步驟S210所示,根據主從式網路環境的特性與需求提供一部署主控端130。詳言之,部署主控端130儲存有主從式網路環境中的各種裝置可能需要的套件,以及對應上述各個套件的設定檔。舉例來說,倘若主從式網路環境為雲端運算環境(例如,以OpenStack軟體開發的雲端運算環境),則儲存在部署主控端130的套件例如有用於管理安排虛擬機器開啟順序的nova-schedule套件、用於管理安排虛擬機器以及實體機器之網路位置的nova-network套件、用於管理運算端與控制端資料連結的nova-api套件、用 於管理虛擬機器的nova-compute套件、用於虛擬機器之虛擬網路計算(Virtual Network Computing,VNC)連結的nova-consoleauth套件、用於管理虛擬機器VNC代理(proxy)伺服器位址的nova-novncproxy套件、用於管理資料存放位置的swift-storage套件、用於管理swift代理伺服器位址的swift-proxy套件、用於管理使用者認證的keystone套件、用於管理映像檔的glance套件,以及用於資料庫的Mysql套件。而每個套件的設定檔則是關於該套件的各種設定參數及安裝方式。然而,上述套件僅是為了說明而舉出的範例,本發明並不以此為限。
接著在步驟S220中,個別指派一網際網路協定(Internet Protocol,IP)位址給部署主控端130、控制端110與運算端120。並且如步驟S230所示,由部署主控端130依據控制端110與運算端120個別的網際網路協定位址,提供部署主控端130與控制端110及運算端120之間的檔案分享機制。在一實施例中,檔案分享機制是基於網路檔案系統(Network File System,NFS),即控制端110與運算端120能透過掛載(mount)的方式來存取部署主控端130所分享的資源。進一步而言,部署主控端130將其硬碟(未繪示)切割出一分割區(partition),只要將控制端110及運算端120個別的網際網路協定位址設定為可以存取此分割區中的資料,則部署主控端130與控制端110及運算端120便能透過將資料存放在此分割區來達到資料共享的目的。然而,本發明並不對檔案分享機制的實施方式加以限制。
接下來在步驟S240中,由部署主控端130反覆判斷是否 接收到來自控制端110或運算端120的部署請求。具體來說,控制端110與運算端120皆會依據被預設的特定裝置功能而產生一配置表,並且在能連線至網路140(例如,插上網路線)時送出包括上述配置表的部署請求。在本實施例中,配置表包括功能、布林值,以及相關設定值這三個相對應的欄位。其中功能欄位記錄套件名稱,布林值欄位記錄特定裝置功能與對應之套件是否相關,而相關設定值則記錄與對應之套件有關的資訊。各欄位的內容可以是預設值,或由使用者根據控制端110及運算端120的特定裝置功能進行填寫。舉例來說,在相同的主從式網路環境下,配置表可具有相同或類似的範本格式,使用者只需要依特定裝置功能的不同來小幅度修改或增減便能完成填寫。
為了方便說明,以下將發出部署請求的控制端110或運 算端120稱為待部署裝置。也就是說,部署主控端130會在待部署裝置連線至網路140時接收到其發出的部署請求。值得一提的是,若部署主控端130未完整接收來自待部署裝置的部署請求,部署主控端130會產生一請求錯誤記錄,並透過檔案分享機制使待部署裝置取得請求錯誤記錄。在一實施例中,一旦待部署裝置取得請求錯誤記錄,便會重新送出部署請求。在另一實施例中,唯有當取得請求錯誤記錄的次數少於一預設值(例如5,但本發明並不以此為限)時,待部署裝置才會重新送出部署請求。
當部署主控端130接收到來自待部署裝置的部署請求, 如步驟S250所示,由部署主控端130根據部署請求產生自動安裝 腳本(auto-shell),並透過檔案分享機制將自動安裝腳本傳送至待部署裝置。接著在步驟S260中,由待部署裝置執行所接收的自動安裝腳本,以自動完成實現待部署裝置所對應之特定裝置功能的部署。
如圖2所示,透過部署主控端130的運作,只要待部署裝置能連接網路140,部署主控端130便可根據其發出的部署請求產生自動安裝腳本,而待部署裝置在透過檔案分享機制接收自動安裝腳本後,便可自動完成特定裝置功能的部署。
值得一提的是,在上述實施例中雖然是以控制端110與運算端120的其中之一作為待部署裝置,然而在其他實施例中,部署主控端130也可以同時接收並處理來自多個待部署裝置的部署請求。由於處理每個部署請求的方式類似,故在此不再贅述。
以下將分別以圖3及圖4來對圖2的步驟S250及步驟S260做進一步的說明。
圖3是依照本發明一實施例的部署主控端的運作流程圖,請參閱圖3。在部署主控端130接收到來自待部署裝置的部署請求後,如步驟S310所示,部署主控端130開始對部署請求中的配置表進行掃描。並且如步驟S320所示,部署主控端130判斷是否能完整掃瞄配置表。
若無法完整掃瞄配置表,則如步驟S330所示,部署主控端130產生一掃瞄錯誤記錄,並透過檔案分享機制使待部署裝置取得掃瞄錯誤記錄。例如,部署主控端130將掃瞄錯誤記錄存放 在與控制端110及運算端120共享的分割區,而被視為待部署裝置的控制端110或運算端120便能自分割區取得掃瞄錯誤記錄。
倘若能完成對配置表的掃描操作,則如步驟S340所示,部署主控端130根據配置表產生自動安裝腳本。在本實施例中,自動安裝腳本包括對待部署裝置進行部署所需要的各個特定套件名稱、各特定套件的來源位置,以其各特定套件的設定檔。部署主控端130例如是將自動安裝腳本存放在與控制端110及運算端120共享的分割區,而被視為待部署裝置的控制端110或運算端120便能自分割區取得自動安裝腳本。
接下來在步驟S350中,部署主控端130判斷是否成功透過檔案分享機制將自動安裝腳本傳送至待部署裝置。若分享的過程發生錯誤,則如步驟S360所示,部署主控端130產生傳送錯誤記錄並透過檔案分享機制使待部署裝置取得傳送錯誤記錄。舉例來說,部署主控端130是將傳送錯誤記錄存放在與控制端110及運算端120共享的分割區,而被視為待部署裝置的控制端110或運算端120便能自分割區取得傳送錯誤記錄。
以下則以圖4來說明待部署裝置收到自動安裝腳本後的運作流程。
首先如步驟S410所示,待部署裝置執行自動安裝腳本以取得實現特定裝置功能所需要的所有特定套件。在一實施例中,待部署裝置可以自儲存於部署主控端130的所有套件中來取得上述特定套件。在另一實施例中,待部署裝置可透過外部網路(例 如,網路140)下載實現特定裝置功能所需的一或多個特定套件。在又一實施例中,待部署裝置可同時自部署主控端130及外部網路下載實現特定裝置功能所需要的所有特定套件。
接著在步驟S420中,待部署裝置從自動安裝腳本取得各特定套件的設定檔,並據以執行各特定套件的安裝程序。舉例來說,待部署裝置將根據設定檔的內容對特定套件的參數進行設定並進行安裝程序。接下來如步驟S430所示,待部署裝置判斷是否完成所有特定套件的安裝程序。
倘若在自動安裝特定套件的過程中,待部署裝置被重新啟動或發生網路中斷等情形,則可能有一或多個特定套件的安裝程序未能完成,基此如步驟S440所示,待部署裝置產生安裝失敗訊息,並透過檔案分享機制使部署主控端取得安裝失敗訊息。然而倘若待部署裝置完成所有特定套件的安裝程序,則如步驟S450所示,待部署裝置產生安裝成功訊息,並透過檔案分享機制使部署主控端取得安裝成功訊息。
如上述實施例所述,使用者只需要依照控制端110與運算端120個別被預設的特定裝置功能來填寫配置表,待控制端110與運算端120連接網路140後,部署主控端130便能透過產生及傳送自動安裝腳本的方式,令控制端110及/或運算端120自動完成所需之所有套件的安裝程序,達到快速部署的功效。
圖5是依照本發明另一實施例所繪示的一種主從裝置環境的部署系統的方塊圖。請參閱圖5,主從裝置環境的部署系統 500包括控制端110、運算端120_1、運算端120_2,以及部署主控端130。在本實施例中,主從裝置環境的部署系統500適用的主從式網路環境為利用OpenStack軟體開發的雲端運算環境,其中控制端110為雲端運算環境中的控管裝置,用以運行網路、存儲管理(volume)、應用程式介面(Application Programming Interface,API)、排程(scheduler)及映像(image)服務,而運算端120_1與運算端120_2則是雲端運算環境中的運算裝置,並用以運行虛擬實例(virtual instance)。
控制端110包括儲存單元111、第一網路卡113,以及第二網路卡115,控制端110的特定裝置功能被預設為物件儲存(OpenStack Object Storage,Swift)。運算端120_1包括儲存單元120_11、第一網路卡120_13,以及第二網路卡120_15,運算端120_1的特定裝置功能被預設為Swift代理伺服器。運算端120_2包括儲存單元120_21、第一網路卡120_23,以及第二網路卡120_25,特定裝置功能被預設為物件儲存。
部署主控端130包括儲存單元131與網路卡133。其中,部署主控端130基於網路檔案系統的概念將儲存單元131劃分出一共享分割區,並將共享分割區設定為與控制端110、運算端120_1、運算端120_2共享的空間,以藉由共享分割區提供其與控制端110、運算端120_1、運算端120_2之間的檔案分享機制。
在本實施例中,控制端110、運算端120_1、運算端120_2以及部署主控端130分別透過第一網路卡113、第一網路卡 120_13、第一網路卡120_23,以及網路卡133連接外部的實體網路140(例如,區域網路)。而控制端110、運算端120_1以及運算端120_2透過第二網路卡115、第二網路卡120_15,以及第二網路卡120_25存取內部網路540,進而讓虛擬實例透過內部網路540溝通並傳遞資訊。
以下說明如何透過部署主控端130的運作,使控制端110、運算端120_1以及運算端120_2自動完成其特定裝置功能的部署。
首先,部署主控端130的儲存單元131記錄有利用OpenStack軟體開發之雲端運算環境所需要的所有套件以及各套件的設定檔。而圖6、7、8分別為控制端110、運算端120_1、運算端120_2之配置表的示意圖。以圖6之配置表600為例,其功能欄位記錄七種套件(即,Openstack Controller、OpneStack Controller VM ip、Openstack Controller token、OpenStack Controller MySQL、OpenStack Compute、OpenStack Swift Storage、OpenStack Swift Proxy Server),相關說明如下:Openstack Controller套件對應的布林值欄位是記錄“True”,表示配置表600是用於控制端110而非運算端120_1及運算端120_2(基此,OpenStack Compute套件對應的布林值欄位是記錄“False”)。另外Openstack Controller套件對應之相關設定值欄位的內容為控制端110在網路140中的網際網路協定位址(即,“192.168.1.51”)。
OpneStack Controller VM ip套件對應的布林值欄位是記錄“True”,表示配置表600是用於控制端110,而相關設定值所記錄的內容為在內部網路540中的位址(即,“10.0.0.2/24”)。
由於控制端110需要使用帳號、密碼進行認證,因此Openstack Controller token以及OpenStack Controller MySQL套件對應的布林值欄位是記錄“True”,對應的相關設定值欄位所記錄的內容則是密碼資訊。
OpenStack Swift Storage套件對應的布林值欄位是記錄“True”,表示控制端110需使用此套件作存取,且相關設定值所記錄的內容為存取資料的存放位置。另外,由於控制端110所預設的特定裝置功能並非Swift代理伺服器,因此OpenStack Swift Proxy Server套件所對應的布林值欄位是記錄“False”。
由於配置表700與800的內容是分別對應運算端120_1與運算端120_2的特定裝置功能,解讀方式類同配置表600,故在此不再贅述。然而值得一提的是,當第一份配置表完成後,若需要再擴充其他裝置(例如,控制端及/或運算端),均可快速將既有的配置表複製到新擴充的裝置,並根據裝置的特定裝置功能來修改配置表的內容,十分便利。
在本實施例中,假設在部署主控端130架設動態主機設定通訊協定(Dynamic Host Configuration Protocol,DHCP)伺服器,即可建置第一網路卡113、第一網路卡120_13、第一網路卡120_23各別的媒體存取控制(Media Access Control,MAC)位址 所相對應的網際網路協定位址。因此當控制端110、運算端120_1以及運算端120_2連接網路140後,部署主控端130即依照控制端110、運算端120_1以及運算端120_2個別傳送之部署請求中的配置表產生自動安裝腳本。
以控制端110為例,部署主控端130先將控制端110的第一網路卡113的MAC位址寫入DHCP伺服器,並且在控制端110索取網際網路協定位址時,同時間依照部署請求中的配置表產生用於控制端110的自動安裝腳本。部署主控端130將所產生的自動安裝腳本置於儲存單元131中的共享分割區。至此,控制端110便能從共享分割區取得自動安裝腳本,並在執行自動安裝腳本後取得所需要的所有特定套件(可取自部署主控端130及/或透過網路140下載)並進行安裝程序,進而完成控制端110的自動部署。運算端120_1以及運算端120_2的自動部署方式與上述類同,在此不再贅述。
在上述實施例中,由部署主控端130主導主從裝置環境的快速部署,進而讓控制端110、運算端120_1以及運算端120_2能自動取得所需套件並完成安裝程序。據此,使用者不再需要以人工的方式對控制端110、運算端120_1以及運算端120_2進行單機實體安裝。
綜上所述,本發明所述之主從裝置環境的部署方法與系統係透過簡單的設定,以自動完成主從式網路環境下所有控制端與運算端所需套件的安裝程序。如此一來,即便控制端與運算端 的數量龐大、在日後需要新增裝置,或需要更動既有裝置的功能,本發明所述之主從裝置環境的部署方法與系統均能快速且便利地依各裝置的腳色定位,自動處理安排所需套件並完成安裝動作,大幅節省部署主從裝置環境的時間。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
S210~S260‧‧‧本發明一實施例所述的主從裝置環境的部署方法的各步驟

Claims (16)

  1. 一種主從裝置環境的部署方法,用於包括一控制端與一運算端的一主從式網路環境,其中該控制端與該運算端個別被預設一特定裝置功能,該方法包括:提供一部署主控端,該部署主控端儲存有多個套件以及對應各該些套件的一設定檔;個別指派一網際網路協定(Internet Protocol,IP)位址給該部署主控端、該控制端與該運算端,並由該部署主控端依據該控制端與該運算端個別的該網際網路協定位址,提供該部署主控端與該控制端及該運算端之間的一檔案分享機制;由該部署主控端在接收到來自該控制端與該運算端的其中之一待部署裝置的一部署請求後,根據該部署請求產生一自動安裝腳本(auto-shell),並傳送該自動安裝腳本至該待部署裝置,其中該部署請求包括一配置表,且該待部署裝置依據被預設的該特定裝置功能產生該配置表;以及由該待部署裝置執行所接收的該自動安裝腳本,以自動完成實現該待部署裝置所對應的該特定裝置功能的部署,其中由該部署主控端在接收到該待部署裝置的該部署請求後,根據該待部署裝置的該網際網路協定位址與該部署請求產生該自動安裝腳本,並傳送該自動安裝腳本至該待部署裝置的步驟包括:當完整接收到來自該待部署裝置的該部署請求時,對該配置 表進行掃描;若無法完整掃瞄該配置表,則產生一掃瞄錯誤記錄並透過該檔案分享機制使該待部署裝置取得該掃瞄錯誤記錄;以及若完整掃瞄該配置表,則根據該配置表產生該自動安裝腳本。
  2. 如申請專利範圍第1項所述的方法,其中該部署主控端在該待部署裝置連線至一網際網路時接收到來自該待部署裝置的該部署請求。
  3. 如申請專利範圍第1項所述的方法,其中若完整掃瞄該配置表,則在根據該配置表產生該自動安裝腳本的步驟之後,更包括:判斷是否成功透過該檔案分享機制傳送該自動安裝腳本至該待部署裝置;以及若否,則產生一傳送錯誤記錄並透過該檔案分享機制使該待部署裝置取得該傳送錯誤記錄。
  4. 如申請專利範圍第3項所述的方法,更包括:當該部署主控端未完整接收來自該待部署裝置的該部署請求時,由該部署主控端產生一請求錯誤記錄並透過該檔案分享機制使該待部署裝置取得該請求錯誤記錄。
  5. 如申請專利範圍第1項所述的方法,其中由該待部署裝置執行所接收的該自動安裝腳本,以自動完成實現該待部署裝置所對應的該特定裝置功能的部署的步驟包括:執行該自動安裝腳本以透過該檔案分享機制自儲存於該部署 主控端的該些套件中取得實現該特定裝置功能的至少一特定套件,及/或透過一外部網路下載實現該特定裝置功能的該至少一特定套件;以及自動安裝該至少一特定套件於該待部署裝置。
  6. 如申請專利範圍第5項所述的方法,其中該自動安裝腳本包括各該至少一特定套件的該設定檔,而自動安裝該至少一特定套件於該待部署裝置的步驟包括:根據各該至少一特定套件的該設定檔執行各該至少一特定套件的一安裝程序。
  7. 如申請專利範圍第6項所述的方法,其中在自動安裝該至少一特定套件於該待部署裝置的步驟之後,更包括:若完成各該至少一特定套件的該安裝動作,則由該待部署裝置產生一安裝成功訊息,並透過該檔案分享機制使該部署主控端取得該安裝成功訊息;以及若無法完成該至少一特定套件的其中之一的該安裝動作,則由該待部署裝置產生一安裝失敗訊息,並透過該檔案分享機制使該部署主控端取得該安裝失敗訊息。
  8. 如申請專利範圍第1項所述的方法,其中該主從式網路環境為一雲端運算環境,且該控制端被預設的該特定裝置功能相異於該運算端被預設的該特定裝置功能。
  9. 一種主從裝置環境的部署系統,用於一主從式網路環境,包括: 一控制端,被預設一第一特定裝置功能;一運算端,被預設一第二特定裝置功能;以及一部署主控端,該部署主控端儲存有多個套件以及對應各該些套件的一設定檔,其中該部署主控端在該部署主控端、該控制端與該運算端各別被指派一網際網路協定位址後,該部署主控端依據該控制端與該運算端個別的該網際網路協定位址,提供該部署主控端與該控制端及該運算端之間的一檔案分享機制,當接收到來自該控制端與該運算端的其中之一待部署裝置的一部署請求時,根據該部署請求產生一自動安裝腳本,並傳送該自動安裝腳本至該待部署裝置,其中該部署請求包括一配置表,且該待部署裝置依據被預設的該特定裝置功能產生該配置表,該待部署裝置執行所接收的該自動安裝腳本,以自動完成實現該待部署裝置所對應的一特定裝置功能的部署,其中該特定裝置功能為該第一特定裝置功能或該第二特定裝置功能,其中該部署主控端在完整接收到來自該待部署裝置的該部署請求時,對該配置表進行掃描,若無法完整掃瞄該配置表,則該部署主控端產生一掃瞄錯誤記錄並透過該檔案分享機制使該待部署裝置取得該掃瞄錯誤記錄,若完整掃瞄該配置表,則該部署主控端根據該配置表產生該自動安裝腳本。
  10. 如申請專利範圍第9項所述的系統,其中該部署主控端在該待部署裝置連線至一網際網路時接收到來自該待部署裝置的該部署請求。
  11. 如申請專利範圍第9項所述的系統,其中在該部署主控端根據該配置表產生該自動安裝腳本的運作之後,該部署主控端判斷是否成功透過該檔案分享機制傳送該自動安裝腳本至該待部署裝置,若否,則該部署主控端產生一傳送錯誤記錄並透過該檔案分享機制使該待部署裝置取得該傳送錯誤記錄。
  12. 如申請專利範圍第11項所述的系統,其中該部署主控端在未完整接收來自該待部署裝置的該部署請求時,產生一請求錯誤記錄並透過該檔案分享機制使該待部署裝置取得該請求錯誤記錄。
  13. 如申請專利範圍第9項所述的系統,其中該待部署裝置執行該自動安裝腳本以透過該檔案分享機制自儲存於該部署主控端的該些套件中取得實現該特定裝置功能的至少一特定套件,及/或透過一外部網路下載實現該特定裝置功能的該至少一特定套件,並自動安裝該至少一特定套件於該待部署裝置。
  14. 如申請專利範圍第13項所述的系統,其中該自動安裝腳本包括各該至少一特定套件的該設定檔,而該待部署裝置根據各該至少一特定套件的該設定檔執行各該至少一特定套件的一安裝程序。
  15. 如申請專利範圍第14項所述的系統,其中若該待部署裝置完成各該至少一特定套件的該安裝動作,則產生一安裝成功訊息並透過該檔案分享機制使該部署主控端取得該安裝成功訊息,若該待部署裝置無法完成該至少一特定套件的其中之一的該安裝動作,則產生一安裝失敗訊息並透過該檔案分享機制使該部署主控端取得該安裝失敗訊息。
  16. 如申請專利範圍第9項所述的系統,其中該主從式網路環境為一雲端運算環境,且該第一特定裝置功能相異於該第二特定裝置功能。
TW102116522A 2013-05-09 2013-05-09 主從裝置環境的部署方法與系統 TWI516059B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW102116522A TWI516059B (zh) 2013-05-09 2013-05-09 主從裝置環境的部署方法與系統
CN201310195642.7A CN104144073B (zh) 2013-05-09 2013-05-23 主从装置环境的部署方法与主从装置环境的部署系统
US14/078,533 US9525592B2 (en) 2013-05-09 2013-11-13 Client/server network environment setup method and system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW102116522A TWI516059B (zh) 2013-05-09 2013-05-09 主從裝置環境的部署方法與系統

Publications (2)

Publication Number Publication Date
TW201444320A TW201444320A (zh) 2014-11-16
TWI516059B true TWI516059B (zh) 2016-01-01

Family

ID=51853145

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102116522A TWI516059B (zh) 2013-05-09 2013-05-09 主從裝置環境的部署方法與系統

Country Status (3)

Country Link
US (1) US9525592B2 (zh)
CN (1) CN104144073B (zh)
TW (1) TWI516059B (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10462210B2 (en) 2014-02-13 2019-10-29 Oracle International Corporation Techniques for automated installation, packing, and configuration of cloud storage services
US9721117B2 (en) 2014-09-19 2017-08-01 Oracle International Corporation Shared identity management (IDM) integration in a multi-tenant computing environment
US9087001B1 (en) * 2015-01-16 2015-07-21 Storagecraft Technology Corporation Virtualizing multiple networked machines using a predetermined network recovery policy
CN104754032A (zh) * 2015-02-27 2015-07-01 浪潮集团有限公司 一种部署OpenStack的方法及装置
CN104714823B (zh) * 2015-03-06 2018-02-27 上海新炬网络信息技术股份有限公司 基于OpenStack的新建主机配置方法
TWI573025B (zh) * 2015-10-01 2017-03-01 Chunghwa Telecom Co Ltd The method of deploying the cloud system and the computer to read the media device
US9990209B2 (en) 2015-11-12 2018-06-05 Microsoft Technology Licensing, Llc Digital assistance device for facilitating multi-stage setup
CN106095526A (zh) * 2016-06-06 2016-11-09 腾讯科技(深圳)有限公司 虚拟服务器集群及其服务器的部署方法、装置以及系统
CN108809733B (zh) * 2018-07-11 2021-10-22 郑州云海信息技术有限公司 一种多节点部署对接OpenStack云管理平台的系统
CN111092918B (zh) * 2018-10-23 2023-08-18 联想企业解决方案(新加坡)有限公司 计算节点和建立云集群的方法
CN109634621A (zh) * 2018-11-30 2019-04-16 武汉烽火信息集成技术有限公司 Openstack平台部署方法、存储介质、电子设备及系统
US10887382B2 (en) 2018-12-18 2021-01-05 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US10958720B2 (en) 2018-12-18 2021-03-23 Storage Engine, Inc. Methods, apparatuses and systems for cloud based disaster recovery
US10983886B2 (en) 2018-12-18 2021-04-20 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US11176002B2 (en) 2018-12-18 2021-11-16 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US11252019B2 (en) 2018-12-18 2022-02-15 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US11489730B2 (en) 2018-12-18 2022-11-01 Storage Engine, Inc. Methods, apparatuses and systems for configuring a network environment for a server
US11178221B2 (en) 2018-12-18 2021-11-16 Storage Engine, Inc. Methods, apparatuses and systems for cloud-based disaster recovery
US11113049B2 (en) * 2019-02-25 2021-09-07 Red Hat, Inc. Deploying applications in a computing environment
CN110677334B (zh) * 2019-09-27 2021-08-24 株洲中车时代电气股份有限公司 一种水下机器人系统自适应配置方法及装置
CN110780885B (zh) * 2019-10-15 2022-08-23 卡斯柯信号有限公司 Cbtc中ats和联锁软件数据自动部署和环境启动装置及方法
CN111586101A (zh) * 2020-04-02 2020-08-25 西安远望谷物联网科技有限公司 一种基于OpenStack云平台的自动化安装方法与系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6098098A (en) * 1997-11-14 2000-08-01 Enhanced Messaging Systems, Inc. System for managing the configuration of multiple computer devices
US7861252B2 (en) * 2001-03-21 2010-12-28 Andrzej Uszok Intelligent software agent system architecture
US20030158886A1 (en) * 2001-10-09 2003-08-21 Walls Jeffrey J. System and method for configuring a plurality of computers that collectively render a display
CN1595870A (zh) * 2003-12-15 2005-03-16 浪潮电子信息产业股份有限公司 多类型操作系统网络远程并行自动安装方法
DE602005026863D1 (de) * 2004-12-22 2011-04-21 Koninkl Philips Electronics Nv Rotationsrasierer mit verbessertem antrieb und stützstruktur für den rasierkopf
US8477771B2 (en) * 2007-03-01 2013-07-02 Meraki Networks, Inc. System and method for remote monitoring and control of network devices
US20090307299A1 (en) * 2008-06-10 2009-12-10 Michael Malesich System Analysis Modeling Apparatus and Method
US8224944B2 (en) * 2008-06-24 2012-07-17 Lsi Corporation Method, apparatus and system for serial attached SCSI (SAS) domain management
US20100064228A1 (en) * 2008-09-11 2010-03-11 Ely Tsern Expandable system architecture comprising a handheld computer device that dynamically generates different user environments with secondary devices with displays of various form factors
TWI409700B (zh) 2010-08-11 2013-09-21 Hon Hai Prec Ind Co Ltd 變更設備配置檔案之消息通知裝置及方法
US9184987B2 (en) * 2011-02-23 2015-11-10 Tyco Fire & Security Gmbh System and method for automatic configuration of master/slave devices on a network
CN102693235B (zh) 2011-03-23 2015-10-28 鸿富锦精密工业(深圳)有限公司 变更设备配置文件之信息通知装置及方法

Also Published As

Publication number Publication date
CN104144073B (zh) 2017-09-22
US9525592B2 (en) 2016-12-20
US20140337493A1 (en) 2014-11-13
TW201444320A (zh) 2014-11-16
CN104144073A (zh) 2014-11-12

Similar Documents

Publication Publication Date Title
TWI516059B (zh) 主從裝置環境的部署方法與系統
US10802906B2 (en) Monitoring method and apparatus of server, and storage medium
US10949158B2 (en) Screenshot method and apparatus
CN108536519B (zh) 自动搭建Kubernetes主节点的方法及终端设备
US10353728B2 (en) Method, system and device for managing virtual machine software in cloud environment
CN108694117B (zh) 基于容器技术的管理测试环境的方法和装置
US9910765B2 (en) Providing testing environments for software applications using virtualization and a native hardware layer
US8412810B1 (en) Provisioning and managing a cluster deployed on a cloud
JP2021524090A (ja) 代替サーバ名を使用する相互トランスポート層セキュリティを選択的に提供すること
US20180210752A1 (en) Accelerator virtualization method and apparatus, and centralized resource manager
WO2019184164A1 (zh) 自动部署Kubernetes从节点的方法、装置、终端设备及可读存储介质
US20150358392A1 (en) Method and system of virtual desktop infrastructure deployment studio
US10430172B2 (en) Re-configuration in cloud computing environments
US20120167081A1 (en) Application Service Performance in Cloud Computing
CN109547509B (zh) 一种跨平台部署的方法和系统
CN109995814B (zh) 云主机资源的迁移方法及装置、通信设备、存储介质
WO2017016212A1 (zh) 桌面云系统的测试方法及装置
US9104800B2 (en) Distributed debugging of an application in a distributed computing environment
JP2013218687A (ja) サーバー監視システム及びその方法
KR20150082932A (ko) 가상 머신의 구성 관리 지원 장치 및 방법과, 그 구성 관리 지원 장치를 이용한 클라우드 서비스 중개 장치 및 방법
CN104239122A (zh) 一种虚拟机迁移方法和装置
CN110221910B (zh) 用于执行mpi作业的方法和装置
KR102623631B1 (ko) Nfv 환경에서의 vnf 자동 설정 방법 및 이를 위한 nfv mano
WO2016029774A1 (zh) 基于虚拟化的应用存储方法、执行方法、装置及系统
CN104570967A (zh) 基于Android系统的远程控制方法及系统