TWI740605B - 部署電腦作業環境的方法與部署系統 - Google Patents

部署電腦作業環境的方法與部署系統 Download PDF

Info

Publication number
TWI740605B
TWI740605B TW109127389A TW109127389A TWI740605B TW I740605 B TWI740605 B TW I740605B TW 109127389 A TW109127389 A TW 109127389A TW 109127389 A TW109127389 A TW 109127389A TW I740605 B TWI740605 B TW I740605B
Authority
TW
Taiwan
Prior art keywords
data
deployment
terminal
segment
point
Prior art date
Application number
TW109127389A
Other languages
English (en)
Other versions
TW202207020A (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 TW109127389A priority Critical patent/TWI740605B/zh
Priority to US17/106,344 priority patent/US11146631B1/en
Application granted granted Critical
Publication of TWI740605B publication Critical patent/TWI740605B/zh
Publication of TW202207020A publication Critical patent/TW202207020A/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1091Interfacing with client-server systems or between P2P systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

一種部署電腦作業環境的方法與部署系統,在方法中,提供一範本機,其中以一部署程式掃描範本機硬碟中的作業系統與應用程式等檔案資料,進行分段與編碼,形成多個分段資料,並建立各分段資料索引以及產生各分段校驗碼,稱編碼資料,之後範本機向網域內多個終端機散布此編碼資料。於各終端機中,接收此編碼資料與用點對點資料散佈協定接受分段資料後,在解碼以及以校驗碼確認各分段資料無誤後寫入各終端機之硬碟中,再以點對點資料散布協定再將分段資料散布至其他終端機,當完成所有分段資料寫入硬碟後,即完成終端機電腦作業環境的部署。

Description

部署電腦作業環境的方法與部署系統
說明書公開一種部署電腦作業環境的技術,特別是指利用點對點資料散布的技術實現在多個電腦系統中部署作業環境的方法與系統。
一部電腦裝置需要花費一些時間安裝一套作業系統與軟體程式,若為一批電腦裝置要安裝作業系統與軟體程式,除了仍可以花時間逐一安裝作業系統與軟體程式外,習知技術提出一些大量部署作業環境的技術方案。
習知技術在執行大量系統部署(massive deployment)時,常見的方式之一,提出一範本機(template machine),其中安裝有標準的作業環境,包括作業系統與軟體程式,利用特定軟體程式先以製作映射檔案(image)的方式將整個範本機的作業環境製作一備份檔案,之後在每個目標裝置上以軟體程式安裝此映射檔案,將映射檔案中的作業系統與軟體程式部署為此目標裝置中的作業環境。
更者,在另一習知技術中,預備一台伺服器,其中儲存有作業程式與必要的軟體程式的備份檔案,亦可為映射檔案,其他要安裝作業環境的目標主機可以先網路開機,連線此伺服器,能自伺服器中下載安裝程式,通過網路傳送作業程式與軟體程式,最終以此中心化部署的方式完成安裝每個目標主機的作業環境。
說明書公開一種部署電腦作業環境的方法與部署系統,部署系統由多個接收部署的終端機組成,其中之一或是額外準備一個範本機(template machine),其中安裝有要部署到其他終端機的作業環境,包含作業系統、應用程式與資料等,以一外接可開機的儲存裝置,其中包含本發明所開發之機制所完成之軟體,啟動範本機後,執行一部署程式以掃描範本機的硬碟中之檔案系統,對此硬碟中作業環境的資料分段與編碼,形成多個分段資料(segments),並建立各分段資料索引以及產生各分段校驗碼(checksum),完成點對點資料分享機制(peer-to-peer (P2P) file sharing protocol),如位元洪流(BT, bittorrent)相關之編碼資料檔案(metainfo file或metadata file)的建立。
通過範本機,系統運行部署電腦作業環境的方法。
在範本機中,可通過部署程式向網域內多個終端機散布多個分段資料。而在各終端機中,執行一作業環境複製程式,用於接收各個分段資料、解碼以及以校驗碼確認各分段資料無誤後,可以一點對點資料散布的協定將確認無誤後的分段資料再次散布至網域內其他終端機。
其中,各終端機依照點對點資料散布的協定自範本機與其他終端機接收多個分段資料,並完成解碼與校驗,當依照各分段資料索引確認完成寫入作業環境時,即完成終端機電腦作業環境的部署。
優選地,所述部署程式安裝於儲存裝置中,儲存裝置中安裝一可開機作業系統、一伺服器程式與部署程式,通過儲存裝置啟動範本機,並運行一動態主機配置協定(DHCP)的伺服器,用以協助各終端機之網路運作。
進一步地,範本機啟動後,還可運行一部署追蹤器(deployment tracker),用以追蹤網域內各終端機的部署進度。如此,當終端機完成電腦作業環境部署後,傳送一完成部署的信息至此部署追蹤器。
優選地,所述運行於終端機之前傳遞資料的點對點資料散布的協定可以一位元洪流的資料傳輸協定實現於網域內的多個終端機之間。
為使能更進一步瞭解本發明的特徵及技術內容,請參閱以下有關本發明的詳細說明與圖式,然而所提供的圖式僅用於提供參考與說明,並非用來對本發明加以限制。
以下是通過特定的具體實施例來說明本發明的實施方式,本領域技術人員可由本說明書所公開的內容瞭解本發明的優點與效果。本發明可通過其他不同的具體實施例加以施行或應用,本說明書中的各項細節也可基於不同觀點與應用,在不悖離本發明的構思下進行各種修改與變更。另外,本發明的附圖僅為簡單示意說明,並非依實際尺寸的描繪,事先聲明。以下的實施方式將進一步詳細說明本發明的相關技術內容,但所公開的內容並非用以限制本發明的保護範圍。
應當可以理解的是,雖然本文中可能會使用到“第一”、“第二”、“第三”等術語來描述各種元件或者信號,但這些元件或者信號不應受這些術語的限制。這些術語主要是用以區分一元件與另一元件,或者一信號與另一信號。另外,本文中所使用的術語“或”,應視實際情況可能包括相關聯的列出項目中的任一個或者多個的組合。
說明書公開一種部署電腦作業環境的方法與部署系統,這是一種適用大規模部署(massive deployment)的方案,所述部署電腦作業環境的方法與習知技術主要差異在於所提出的方法在過程中並不製作映像檔(image),也不使用額外儲存器(用以儲存映像檔的裝置),而是採用一種點對點資料散布的協定,例如「位元洪流」等相當的技術,以對網域內其他終端裝置進行資料發布。更者,所提出的方法能直接從範本機之內接儲存裝置檔案系統進行資料讀取而以等相當技術散佈至其他終端機,其他終端機在接收到相關資料後,亦可透過位元洪流等相當技術再散佈至其他終端機。此機制可以有效簡化大量電腦裝置部署作業環境的動作,最終完成部署作業環境。
部署電腦作業環境的方法的適用範圍例如電腦教室、叢集電腦、辦公室等大量作業系統與軟體部署,其中實施方式之一,是以一安裝有可開機作業系統的儲存裝置,如外接儲存裝置、USB隨身碟或光碟,連接一範本機(template machine),並以此外接裝置開機,執行一部署程式,針對範本機中的作業系統與/或應用程式製作部署至其他終端機的種子檔案(seed),所述種子檔案的內容包括了對範本機中的作業系統與應用程式進行分段、編碼、建立索引與製作校驗碼所處理形成的編碼資料檔案,成為部署至其他終端機的資料,由其他終端機中執行的對應軟體程式接收此種子檔案後,自動完成部署。
部署系統的架構實施例可參考圖1所示,部署系統基於網路10,其中包括有多個終端機101, 103, 105,如電腦裝置,可以通過網路10連線範本機100。根據實施例,範本機100可為多個終端機其中之一,其中安裝有預備部署至其他終端機的作業環境,可包括作業系統與/或應用程式,通過範本機100中執行的部署程式,實現對網域內多個終端機101, 103, 105部署作業環境的目的。
在範本機100中,設有儲存裝置115,在各種實施例中,儲存裝置115可以表示範本機100內接與外接的儲存裝置。儲存裝置115中安裝有一可開機作業系統與應用程式的內接儲存裝置。舉例來說,範本機100為一個人電腦,儲存裝置115包含內接的硬碟,以及可為通過通用序列埠(USB)外接此個人電腦的外接儲存裝置、USB隨身碟或光碟,此稱為外接之開機媒介(boot media)。透過此儲存裝置115外接之開機媒介啟動範本機100後,即載入儲存裝置115中外接開機媒介的作業系統,並執行應用程式。於所提出的部署電腦作業環境的方法,儲存裝置115中外接開機媒介部署程式針對範本機100內接之儲存裝置中的作業環境(可包括作業系統與應用程式)進行分段、編碼、建立索引與製作校驗碼,處理完成編碼資料檔案,暫存於範本機100之記憶體中,此為之後用於部署至其他終端機101, 103, 105的種子檔案。
在此一提的是,儲存裝置115之內接作業系統並非啟動範本機100的作業環境且用於部署至其他終端機101, 103, 105的作業環境,用於部署至終端機101, 103, 105的作業環境為透過載入於範本機100的外接之開機媒介之作業環境。而通過儲存裝置115中外接之開機媒介的作業系統啟動範本機100後,還可運行一或多個伺服器,如圖示的伺服模組111,例如可運行一動態主機配置協定(Dynamic Host Configuration Protocol ,DHCP)的伺服器,用以服務區域網路內其他終端機101, 103, 105,包括派發動態網路位址、協助連線外部網路等。
儲存裝置115之內接於範本機100中的儲存裝置,藉外接之開機媒介的作業系統啟動範本機100,將範本機內接儲存裝置中的作業環境,部署至其他終端機101, 103, 105的作業環境為與範本機內接儲存裝置中之同一作業環境之複製。亦即本發明之機制乃是透過點對點資料散布的協定的方式,將範本機內接儲存裝置之作業系統與檔案資料,複製派送至終端機101, 103與105。
範本機100中設有網路模組113,用以通過網路10連線至各終端機101, 103, 105,用以派送檔案資料,如經處理後形成的分段資料,並接收各終端機101, 103, 105產生的信息。
藉外接之開機媒介的作業系統啟動範本機100後,部署程式117運行一種點對點資料散布的協定,實施例之一可利用一運行於範本機100內的位元洪流的主機端程式。部署程式117用以執行掃描範本機100內接儲存裝置的作業環境、分段、建立索引與產生校驗碼等完成編碼資料檔案的步驟。部署系統另設有一部署追蹤程式119,可以額外預備一部署追蹤器,或是通過軟體運行範本機100或特定電腦裝置中,用於處理自各終端機101, 103, 105回傳的部署信息,以及用於管理散布於區域網路中多個終端機101, 103, 105之間的資料,能確認是否個別終端機101, 103, 105是否完成部署。
當部署程式117執行後,對範本機100內接儲存裝置的檔案系統進行掃描,掃描時,對整個硬碟的資料進行掃描,辨識出其中已使用之檔案區塊(used blocks),然後針對已使用之檔案區塊資料進行分段、編碼以及建立各分段索引與校驗碼,完成編碼資料檔案。此部署程式117透過編碼資料檔,可以自動接受範本機與終端機硬碟中資料區塊,僅針對已經使用的區塊(排除未使用區塊)執行分段與編碼,此機制可以增加執行效率。之後製作種子檔案後,將暫存於範本機100之記憶體中,種子檔案接續形成部署至各終端機101, 103, 105的資料,流程實施例可參考圖2。
圖2顯示啟動範本機後所執行的部署電腦作業環境的方法實施例流程圖。
根據以上描述的部署系統,利用內接外接的開機媒介(內含本發明所開發之軟體)啟動範本機後,除了啟動其中連網功能、伺服器外,還執行一部署程式(步驟S201),在此所述的部署程式可以代表實現所述部署方法所需的各種功能程式,例如可代表在範本機中形成種子資料的程式、散布資料的程式,以及接收終端機信息的程式等。部署程式的主要工作之一為掃描範本機內接的儲存裝置中之檔案系統(步驟S203),再對內接的儲存裝置中之檔案系統資料編碼、分段、建立索引(步驟S205)。舉例來說,部署程式為根據範本機中內接的儲存裝置中之檔案系統的格式進行逐磁區掃描,以一演算法將掃描得出的資料編碼與分段,形成多個分段,分段的大小(資料長度)可以依照實際情況而定,從千位元組(KB)到百萬位元組(MB)不等。根據實施例,分段的決定較佳地與部署系統採用點對點資料散布的協定而定。
接著,對各分段計算產生驗證各分段正確性的校驗碼(步驟S207)。根據實施例之一,校驗碼的產生可以針對各分端資料執行一雜湊演算法,得到的雜湊值可作為校驗碼,讓接收端可以相同的雜湊演算法來校驗分段資料的正確性。
如此,通過範本機中部署程式對其中的作業系統與應用程式進行分段、編碼、建立索引與製作校驗碼,並再處理產生編碼資料檔案,即形成部署至其他終端機的種子檔案(步驟S209),接著可根據所採用的點對點資料散布的協定將所述種子檔案分段形成分段檔案,以各分段資料散布至網域內其他終端機中(步驟S211),同時,範本機中的部署程式也可在散佈分段資料後等待各終端機的信息,可以通過這些信息確認部署作業環境的進度(步驟S213)。
不同於傳統以中心主機部署電腦作業環境的方式,於揭露書所公開的部署電腦作業環境的方法中,當範本機將所形成的多個分段資料散布至終端機後,多個終端機之間可以根據點對點資料散布的協定彼此傳遞分段資料。
在一實施方案中,所述點對點資料散布的協定為以一位元洪流的資料傳輸協定實現於網域內的多個終端機之間,根據位元洪流的資料傳輸協定,相關網域內應設有一洪流伺服器(torrent server),在所述部署系統中,可以範本機啟動後運行此洪流伺服器,其中儲存有依照位元洪流的資料傳輸協定下規範的資料,包括經編碼的各分段資料、各分段的索引與編碼資料。在所提出的部署系統中,設有一種部署追蹤器,用以追蹤網域內各終端機的部署進度,例如在位元洪流的資料傳輸協定,設有洪流追蹤器(torrent tracker),可以為系統中的一特定主機或是範本機執行部署追蹤器的功能。
在一實施例中,當具有部署追蹤器功能的範本機啟動後,可追蹤該網域內各終端機的部署進度,當多個終端裝置彼此以所述點對點的資料散布協定下傳送接收的分段資料,部署追蹤器將可以根據各終端機傳送的部署信息判斷是否完成部署。
上述擁有完整的作業環境資料的範本機在特定點對點資料散布的協定下運行一種子機(seeder),執行如圖2描述的流程,相應地,各終端機中運行的流程實施例如圖3。
步驟一開始,網域內各終端機啟動後,執行網路開機(步驟S301),通過各終端機的網路電路自運行有派發網路位址的伺服器的範本機取得網路位址,並開始彼此連線,於完成網路開機後即執行對應範本機中運行的部署程式的作業環境複製程式(步驟S303)。
在此以作業環境複製程式代表各種執行部署時的各種功能程式。相關步驟包括接收來自範本機的編碼資料,接著接收來自範本機或其他終端機的分段資料(步驟S305),並對各分段進行解碼、以接收的校驗碼校驗其正確性,根據各分段資料索引儲存至各終端機的儲存媒體中(步驟S307)。
之後,同樣根據位元洪流等點對點資料散布的協定將分段資料以各終端機中執行的作業環境複製程式繼續散布到網域中其他終端機(步驟S309)。以位元洪流的資料傳輸協定為例,當終端機要將得到的分段資料再次編碼並隨同校驗碼散布出去時,會根據取得的分段資料中記載的部署追蹤器的位址以與部署追蹤器連線,如此讓終端機可以確認還需要取得的分段資料,也同時提供已經取得的分段資料,讓部署追蹤器知道哪些終端機已經取得的分段資料,藉此能統籌整個部署系統的運作,包括根據來往的部署信息知道哪些分段資料已經完成部署,哪些分段散布在少數終端機中,以通知各終端機如何取得分段資料,還能根據網路頻寬平衡資料傳輸的路徑,直到網域內全部終端機完成部署。如步驟S311,當各終端機完成電腦作業環境部署後,傳送一完成部署的信息至部署追蹤器。在一實施方案中,根據所採用如位元洪流的點對點資料散布的協定,部署系統還具有可擴充性(scalability),可以讓新增的終端機立即加入部署的行列,且其效能不會因新增的終端機而大量降低,能持續保持相當水準的部署效能。
圖4顯示範本機與終端機之間執行作業環境部署的實施例示意圖,圖中顯示為運行此部署電腦作業環境的方法的網路拓撲實施方案之一。
網域中包括多個終端機,示意有終端機一41、終端機二42以及終端機三43,設有範本機40,範本機40可為終端機中的一個,其中有內接儲存裝置401,並可運行一部署追蹤器403,用以管理部署運作。於啟動範本機40後執行部署程式,以掃描內接儲存裝置401中資料,特別是針對其中已經使用的檔案系統區塊的資料,如硬碟中作業環境的資料,執行分段與編碼,形成多個分段資料,還可建立各分段資料索引以及產生各分段校驗碼經編碼,範本機40即為具有完整的分段資料的種子機,之後可將多個分段資料散布至各終端機(41, 42, 43),如其中顯示傳送分段資料411, 412, 413的路線。
各終端機(41, 42, 43)先經網路開機後,通過軟體程式自部署追蹤器403取得部署的資訊,包括部署追蹤器403的位址,可以根據接收的部署資訊在網路上取得各個分段資料,也能將各終端機已經取的分段資料的資訊回傳給部署追蹤器403。在終端機(41, 42, 43)中,經解碼以及以校驗碼確認各分段資料無誤後,可再根據部署追蹤器403提供的資訊以點對點資料散布的協定將確認無誤後的分段資料再次散布至網域內其他終端機,以散佈分段資料414, 415, 416表示其散布路線。終端機一41、終端機二42以及終端機三43也將回傳部署信息417, 418, 419至部署追蹤器403。
如此,各終端機(41, 42, 43)依照特定點對點資料散布的協定自範本機40與其他終端機接收多個分段資料,並完成解碼與校驗,當依照各分段資料索引確認完成安裝作業環境時,即完成終端機電腦作業環境的部署。
圖5接著顯示的流程描述運行於範本機40以及多個電腦裝置(如此例終端機一41、終端機二42與終端機三43等多個終端機)之間的部署流程實施例圖。
在此流程中,由範本機40啟動後執行部署程式開始(步驟S501),其中可運行部署追蹤器,用以追蹤網域內各終端機的部署進度,同時範本機40也運行了服務終端機的伺服器,如派發網路位址的DHCP伺服器,終端機一41、終端機二42與終端機三43也分別啟動網路開機功能(步驟S502、S503與S504),終端機執行網路開機,此時自範本機40派發網路位址以及取得相關網路設定,並能取得開機必要的資訊(步驟S505、S506與S507)。
在部署電腦作業環境的方法中,範本機40將自身產生的作業環境的分段資料(與校驗碼)散布至終端機一41、終端機二42與終端機三43(步驟S508、S509與S510),各終端機即各自處理所接收的分段資料(步驟S511、S512與S513),包括解碼、以取得的校驗碼校驗分段資料的正確性,並且再次編碼後散布出去,步驟S514~S519表示在多個終端機在連線範本機40中部署追蹤器後取得分段資料的資訊,以能在多個終端機之間根據點對點資料散布的協定散佈分段資料。最後,終端機一41可在取得完整的分段資料後完成部署,並回傳部署信息至範本機40(步驟S520)、終端機二42在取得完整的分段資料後完成部署,並回傳部署信息至範本機40(步驟S521),以及終端機三43在取得完整的分段資料後完成電腦作業環境部署,再回傳完成部署的信息至範本機40(部署追蹤器)(步驟S522)。
圖6接著補充說明部署方法中範本機內接儲存裝置的檔案系統與各分段資料的資料結構示意圖,圖中顯示一範本機內位元洪流資料結構(torrent structure)61、一區塊映射結構63以及一分割區結構(partition structure)65,藉此可規範出在點對點資料散布的協定下運作的資料結構。
散布在終端機之間的資料以逐位元方式儲存於特定分割區(partition)中,為範本機內接儲存裝置的檔案系統中實際的資料,分割區結構65顯示資料以區塊(block)形式儲存在記憶區中,各區塊以區塊識別碼(block ID)651、區塊位址(offset address)652以及位元圖(bitmap)653描述每個區塊資料。此例中,分割區內的區塊包括區塊1(654),區塊位址為0x0000,為已使用的區塊;區塊2(655)位址為0x1000,此區塊為未使用;區塊3(656)位址為0x2000,為已使用的區塊;區塊4(657)位址為0x3000,為已使用的區塊;區塊5(658)位址為0x4000,為已使用區塊。
當這些內接儲存裝置的檔案系統之資料以點對點資料散布的協定進行散布,需要經過前置處理,即如上述實施例所描述以部署程式進行掃描、編碼、分段等處理,形成如圖中區塊映射結構63,其中包括區塊描述(block description)631、位元圖632以及各區塊原始資料,包括取得記憶區中已使用的區塊資料,可排除未使用的區塊,此例中得出已使用的區塊包括區塊1資料633、區塊3資料634、區塊4資料635以及區塊5資料636。得出區塊映射結構63即映射為可散布至其他終端機的位元洪流資料結構61。
位元洪流資料結構61記載的資訊包括部署追蹤器位址(IP address of torrent tracker)611、分段長度612(16 KBs)以及各分段資料的資訊,此例顯示有第一資料613,其中記載了名稱(0x0000)以及長度(4 KBs),可映射至分割區結構65中實際資料的位址,其他資訊還包括第二資料614的名稱(0x2000)與長度(12 KBs),以及其他資料615,最後還記載了此分段資料的分段校驗碼617,即作為校驗碼的雜湊值618。
如此,所述部署系統中範本機與多個終端機之間即可通過上述位元洪流資料結構61、區塊映射結構63以及分割區結構65等記載的內容開始部署電腦作業環境的流程。
綜上所述,根據上述描述的部署電腦作業環境的方法與系統的實施例,系統利用點對點資料散布的技術傳遞分段資料,實現在多個電腦系統中部署作業環境的目的,值得一提的是,其中分享於終端機之間的檔案並非傳統的映射檔,而是根據特定點對點資料散布的協定所編碼與分段的資料,可以更有效地進行各節點部署作業環境。更者,以位元洪流的資料傳輸協定為例,反而是愈多終端機參與部署表示整體資源容量愈多,使得部署電腦作業環境更有效率。
以上所公開的內容僅為本發明的優選可行實施例,並非因此侷限本發明的申請專利範圍,所以凡是運用本發明說明書及圖式內容所做的等效技術變化,均包含於本發明的申請專利範圍內。
10:網路 101, 103, 105:終端機 100:範本機 111:伺服模組 113:網路模組 115:儲存裝置 117:部署程式 119:部署追蹤程式 40:範本機 401:內接儲存裝置 403:部署追蹤器 41:終端機一 42:終端機二 43:終端機三 411, 412, 413:傳送分段資料 414, 415, 416:散佈分段資料 417, 418, 419:回傳部署信息 61:位元洪流資料結構 611:部署追蹤器位址 612:分段長度 613:第一資料 614:第二資料 615:其他資料 617:分段校驗碼 618:雜湊值 63:區塊映射結構 631:區塊描述 632:位元圖 633:區塊1資料 634:區塊3資料 635:區塊4資料 636:區塊5資料 65:分割區結構 651:區塊識別碼 652:區塊位址 653:位元圖 654:區塊1資訊 655:區塊2資訊 656:區塊3資訊 657:區塊4資訊 658:區塊5資訊 步驟S201~S213:部署電腦作業環境的流程 步驟S301~S311:部署電腦作業環境的方法中各終端機運作流程 步驟S501~S522:部署電腦作業環境的流程
圖1顯示部署電腦作業環境的系統架構實施例圖;
圖2顯示部署電腦作業環境的方法的實施例流程圖;
圖3顯示部署電腦作業環境的方法中各終端機運作的實施例流程圖;
圖4顯示範本機與終端機之間執行作業環境部署的實施例示意圖;
圖5顯示運行於一個區域網路內多個電腦裝置之間的部署電腦作業環境的方法實施例流程圖;以及
圖6顯示部署電腦作業環境的方法中資料結構示意圖。
40:範本機
401:內接儲存裝置
403:部署追蹤器
41:終端機一
42:終端機二
43:終端機三
411,412,413:傳送編碼資料與分段資料
414,415,416:散佈分段資料
417,418,419:回傳部署信息

Claims (10)

  1. 一種部署電腦作業環境的方法,包括:提供一範本機,執行一部署程式以掃描該範本機的內接儲存裝置檔案系統區,對該內接儲存裝置檔案系統區中作業環境的資料分段與編碼,形成多個分段資料,建立各分段資料索引以及產生各分段校驗碼,並對各分段資料索引以及該各分段校驗碼演算形成一點對點資料散布的協定所需的編碼資料;根據該點對點資料散布的協定以該部署程式向一網域內多個終端機散布該多個分段資料;以及於各該終端機中,執行一作業環境複製程式,用於接收各個分段資料、解碼以及以校驗碼確認各分段資料無誤後,以該點對點資料散布的協定將確認無誤後的分段資料再次散布至該網域內其他該終端機;其中,各該終端機依照該點對點資料散布的協定自該範本機與其他該終端機接收該多個分段資料,並完成解碼與校驗,當依照各分段資料索引確認完成安裝作業環境時,即完成該終端機電腦作業環境的部署。
  2. 如請求項1所述的部署電腦作業環境的方法,其中該部署程式安裝於一儲存裝置中,該儲存裝置中安裝一可開機作業系統,該範本機以該儲存裝置開機,並執行其中的一部署程式,以針對該範本機中的一作業系統與一應用程式製作部署至其他該終端機的種子檔案,並於散布該多個分段資料後等待各該終端機的信息;其中該種子檔案的內容包括對該範本機中的該作業系統與該應用程式進行分段、編碼、建立索引與製作一校驗碼所處理形成的一編碼資料檔案,成為部署至其他該終端機的資料,該範本機並運行一動態主機配置協定的 伺服器,用以協助各該終端機之網路運作。
  3. 如請求項2所述的部署電腦作業環境的方法,其中,該範本機啟動後,還運行一部署追蹤器,用以追蹤該網域內各該終端機的部署進度。
  4. 如請求項3所述的部署電腦作業環境的方法,其中,當各該終端機完成電腦作業環境部署後,傳送一完成部署的信息至該部署追蹤器。
  5. 如請求項1所述的部署電腦作業環境的方法,其中,於掃描該範本機的內接儲存裝置檔案系統時,自動對其中已使用內接儲存裝置檔案系統區的資料進行分段、編碼以及建立各分段索引與校驗碼。
  6. 如請求項1至5中任一項所述的部署電腦作業環境的方法,其中該點對點資料散布的協定以一位元洪流的資料傳輸協定實現於該網域內的該多個終端機之間。
  7. 一種部署系統,包括:多個終端機,位於一網域內,其中設有一範本機;其中,於該範本機中,執行一部署程式,以掃描該範本機的內接儲存裝置檔案系統區,對該內接儲存裝置檔案系統區中作業環境的資料分段與編碼,形成多個分段資料,建立各分段資料索引以及產生各分段校驗碼,並對各分段資料索引以及該各分段校驗碼演算形成一點對點資料散布的協定所需的編碼資料,之後向該多個終端機以該點對點資料散布的協定散布該多個分段資料;其中,於各該終端機中,執行一作業環境複製程式,用於接收各個分段資料、解碼以及以校驗碼確認各分段資料無誤後,以該點對點資料散布的協定將確認無誤後的分段資料再次散布至該網域內其他該終端機;各該終端機依照該點 對點資料散布的協定自該範本機與其他終端機接收該多個分段資料,並完成解碼與校驗,當依照各分段資料索引確認完成安裝作業環境時,即完成該終端機電腦作業環境的部署。
  8. 如請求項7所述的部署系統,其中該部署程式安裝於一儲存裝置中,該儲存裝置中安裝一可開機作業系統,該範本機以該儲存裝置開機,並執行其中的一部署程式,以針對該範本機中的一作業系統與一應用程式製作部署至其他該終端機的種子檔案,並於散布該多個分段資料後等待各該終端機的信息;其中該種子檔案的內容包括對該範本機中的該作業系統與該應用程式進行分段、編碼、建立索引與製作該各分段校驗碼所處理形成的一編碼資料檔案,成為部署至其他該終端機的資料,該範本機並運行一動態主機配置協定的伺服器,用以協助各該終端機之網路運作。
  9. 如請求項8所述的部署系統,其中,該範本機啟動後,還運行一部署追蹤器,用以追蹤該網域內各該終端機的部署進度;當各該終端機完成電腦作業環境部署後,傳送一完成部署的信息至該部署追蹤器。
  10. 如請求項7至9中任一項所述的部署系統,其中該點對點資料散布的協定以一位元洪流的資料傳輸協定實現於該網域內的該多個該終端機之間。
TW109127389A 2020-08-12 2020-08-12 部署電腦作業環境的方法與部署系統 TWI740605B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW109127389A TWI740605B (zh) 2020-08-12 2020-08-12 部署電腦作業環境的方法與部署系統
US17/106,344 US11146631B1 (en) 2020-08-12 2020-11-30 Method for deploying computer operating environment and deployment system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW109127389A TWI740605B (zh) 2020-08-12 2020-08-12 部署電腦作業環境的方法與部署系統

Publications (2)

Publication Number Publication Date
TWI740605B true TWI740605B (zh) 2021-09-21
TW202207020A TW202207020A (zh) 2022-02-16

Family

ID=78008005

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109127389A TWI740605B (zh) 2020-08-12 2020-08-12 部署電腦作業環境的方法與部署系統

Country Status (2)

Country Link
US (1) US11146631B1 (zh)
TW (1) TWI740605B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011100799A1 (en) * 2010-02-18 2011-08-25 Smart Services Crc Pty Limited A system, method and software application for the dissemination of data across a plurality of computing systems
CN102193817A (zh) * 2010-02-09 2011-09-21 微软公司 简化物理和虚拟部署的管理
TW201624965A (zh) * 2014-12-17 2016-07-01 廣達電腦股份有限公司 網際網路小型電腦系統介面啓動參數部署系統及其方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060212517A1 (en) * 2005-03-15 2006-09-21 International Business Machines Corporation Method, system, and program product for maintaining synchronization among replicated applications using externality forwarding
CN101742702B (zh) * 2009-12-31 2014-03-19 中兴通讯股份有限公司 移动互联网业务共享系统及方法
US10664574B1 (en) * 2017-09-15 2020-05-26 Architecture Technology Corporation Distributed data storage and sharing in a peer-to-peer network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102193817A (zh) * 2010-02-09 2011-09-21 微软公司 简化物理和虚拟部署的管理
WO2011100799A1 (en) * 2010-02-18 2011-08-25 Smart Services Crc Pty Limited A system, method and software application for the dissemination of data across a plurality of computing systems
TW201624965A (zh) * 2014-12-17 2016-07-01 廣達電腦股份有限公司 網際網路小型電腦系統介面啓動參數部署系統及其方法

Also Published As

Publication number Publication date
US11146631B1 (en) 2021-10-12
TW202207020A (zh) 2022-02-16

Similar Documents

Publication Publication Date Title
US10613935B2 (en) System and method for supporting integrity of data storage with erasure coding
US9692823B2 (en) Inter-protocol copy offload
CN110399338B (zh) 基于区块链的分布式文件索引系统及方法、云存储服务器
JP2015519674A (ja) ストレージクラスタにおける消失符号付加および複製
CN110651246B (zh) 一种数据读写方法、装置和存储服务器
JP2005535019A (ja) ストレージ管理ブリッジ
JP2016513306A (ja) データ格納方法、データストレージ装置、及びストレージデバイス
JP6975228B2 (ja) 標準及び非標準分散ストレージ・ネットワーク・データ・アクセスの方法およびコンピュータ可読メモリ
TW200910092A (en) Firmware retrieval across a network
CN109302448B (zh) 一种数据处理方法及装置
CN105068836A (zh) 一种基于sas网络的远程可共享的启动系统
WO2015085529A1 (zh) 数据复制方法、数据复制装置和存储设备
TW202046096A (zh) 資訊處理裝置
JP2018190376A (ja) 管理コントローラによるsas/sataハードディスクドライブ更新
CN1278254C (zh) 确定高可用性集群之活跃度的方法和系统
KR101778907B1 (ko) 분산 저장 시스템에서의 캐시 및 비-캐시 사용
WO2020037625A1 (zh) 分布式存储系统及其数据读写方法、存储终端及存储介质
CN113746641B (zh) 一种基于分布式存储的odx协议处理方法
KR101601877B1 (ko) 분산 파일시스템에서 클라이언트가 데이터 저장에 참여하는 장치 및 방법
TWI740605B (zh) 部署電腦作業環境的方法與部署系統
WO2015196899A1 (zh) 一种实现ip盘文件存储的方法及装置
JP6376626B2 (ja) データ格納方法、データストレージ装置、及びストレージデバイス
KR101470857B1 (ko) iSCSI 스토리지 시스템을 이용한 네트워크 분산 파일 시스템 및 방법
US10409688B2 (en) System and method of using encryption algorithms in P2P encryption mode to restore integrity of data
US9971532B2 (en) GUID partition table based hidden data store system