一種軟件分發(fā)方法、系統(tǒng)及服務(wù)器的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)網(wǎng)絡(luò)領(lǐng)域,尤其涉及一種軟件分發(fā)方法、系統(tǒng)及服務(wù)器。
【背景技術(shù)】
[0002]為了解決企事業(yè)單位,尤其是大型企業(yè)中計(jì)算機(jī)軟件的統(tǒng)一管理,往往需要在每個(gè)員工的計(jì)算機(jī)中安裝、更新或者卸載某些特定的軟件。傳統(tǒng)的做法是通過(guò)每個(gè)員工手動(dòng)進(jìn)行軟件的下載、安裝、更新或者卸載,這種做法不僅浪費(fèi)了大量的工作時(shí)間,而且容易出現(xiàn)安裝版本不一致等問(wèn)題,效率較低且可靠性不高。
[0003]為了解決這個(gè)問(wèn)題,人們開(kāi)發(fā)了軟件分發(fā)的技術(shù),軟件分發(fā)是指通過(guò)網(wǎng)絡(luò)連接自動(dòng)批量的將軟件從服務(wù)器安裝到多臺(tái)不同的計(jì)算機(jī)中或者對(duì)計(jì)算機(jī)中的軟件進(jìn)行統(tǒng)一的升級(jí)和卸載,從而達(dá)到高效準(zhǔn)確的軟件管理。
[0004]現(xiàn)有的軟件分發(fā)系統(tǒng)主要有兩種,一種是將軟件分發(fā)系統(tǒng)集成于企業(yè)服務(wù)系統(tǒng)的軟件產(chǎn)品中,并作為該軟件產(chǎn)品的附屬功能,以組策略來(lái)進(jìn)行軟件分發(fā),但這種方式只能支持域中的分發(fā)軟件;另一種軟件分發(fā)系統(tǒng)采用AD域進(jìn)行部署,由于借AD域部署,所以在管理的計(jì)算機(jī)數(shù)量上受限,因而這兩種方案都無(wú)法實(shí)現(xiàn)全面的軟件管理。
【發(fā)明內(nèi)容】
[0005]針對(duì)上述問(wèn)題,本發(fā)明的目的是提供一種軟件分發(fā)方法、系統(tǒng)及服務(wù)器,實(shí)現(xiàn)了對(duì)不同域中的目標(biāo)計(jì)算機(jī)進(jìn)行軟件分發(fā),且目標(biāo)計(jì)算機(jī)的數(shù)量不受限制。
[0006]本發(fā)明實(shí)施例提供了一種軟件分發(fā)方法,包括如下步驟:
[0007]將注冊(cè)的目標(biāo)計(jì)算機(jī)增加至受控節(jié)點(diǎn)隊(duì)列中;
[0008]為所述受控節(jié)點(diǎn)隊(duì)列中的每個(gè)受控節(jié)點(diǎn)配置一個(gè)虛擬機(jī)及提供所述虛擬機(jī)的訪(fǎng)問(wèn)地址;
[0009]將至少一個(gè)數(shù)據(jù)包傳輸至所述數(shù)據(jù)包指向的虛擬機(jī),所述數(shù)據(jù)包包括軟件安裝/卸載/禁止運(yùn)行信息。
[0010]作為上述方案的改進(jìn),所述將至少一個(gè)數(shù)據(jù)包傳輸至所述數(shù)據(jù)包指向的虛擬機(jī)具體包括:
[0011]將所述至少一個(gè)數(shù)據(jù)包直接傳輸至所述數(shù)據(jù)包指向的虛擬機(jī);和/或
[0012]將所述至少一個(gè)數(shù)據(jù)包通過(guò)至少一個(gè)設(shè)置于所述服務(wù)器和虛擬機(jī)之間的網(wǎng)關(guān)服務(wù)器傳輸至所述數(shù)據(jù)包指向的虛擬機(jī)。
[0013]作為上述方案的改進(jìn),在所述將至少一個(gè)數(shù)據(jù)包傳輸至所述數(shù)據(jù)包指向的虛擬機(jī)之后,還包括,
[0014]接收所述虛擬機(jī)執(zhí)行所述數(shù)據(jù)包返回的執(zhí)行狀態(tài);及
[0015]根據(jù)所述執(zhí)行狀態(tài)顯示并保存所述虛擬機(jī)的日志管理信息;
[0016]其中,所述日志管理信息包括所述虛擬機(jī)上的軟件接收狀態(tài)、軟件安裝狀態(tài)及軟件卸載狀態(tài)的信息。
[0017]本發(fā)明實(shí)施例還提供一種服務(wù)器,包括:
[0018]注冊(cè)單元,用于將注冊(cè)的目標(biāo)計(jì)算機(jī)增加至受控節(jié)點(diǎn)隊(duì)列中;
[0019]配置單元,用于為所述受控節(jié)點(diǎn)隊(duì)列中的每個(gè)受控節(jié)點(diǎn)配置一個(gè)虛擬機(jī)及提供所述虛擬機(jī)的訪(fǎng)問(wèn)地址;
[0020]發(fā)送單元,用于將至少一個(gè)數(shù)據(jù)包傳輸至所述數(shù)據(jù)包指向的虛擬機(jī),所述數(shù)據(jù)包包含包括軟件安裝/卸載/禁止運(yùn)行信息。
[0021]作為上述方案的改進(jìn),所述發(fā)送單元具體用于,將所述至少一個(gè)數(shù)據(jù)包直
[0022]接傳輸至所述數(shù)據(jù)包指向的虛擬機(jī);和/或
[0023]將所述至少一個(gè)數(shù)據(jù)包通過(guò)至少一個(gè)設(shè)置于所述服務(wù)器和虛擬機(jī)之間的網(wǎng)關(guān)服務(wù)器傳輸至所述數(shù)據(jù)包指向的虛擬機(jī)。
[0024]作為上述方案的改進(jìn),所述服務(wù)器還包括,
[0025]接收單元,用于接收所述虛擬機(jī)執(zhí)行所述數(shù)據(jù)包返回的執(zhí)行狀態(tài);及
[0026]日志管理單元,用于根據(jù)所述執(zhí)行狀態(tài)顯示并保存所述虛擬機(jī)的日志管理信息;
[0027]其中,所述日志管理信息包括所述虛擬機(jī)上的軟件接收狀態(tài)、軟件安裝狀態(tài)及軟件卸載狀態(tài)的信息。
[0028]本發(fā)明實(shí)施例還提供一種軟件分發(fā)系統(tǒng),包括服務(wù)器、目標(biāo)計(jì)算機(jī)以及虛擬機(jī),
[0029]所述服務(wù)器將在該服務(wù)器上注冊(cè)的所述目標(biāo)計(jì)算機(jī)增加至受控節(jié)點(diǎn)隊(duì)列中及向所述受控節(jié)點(diǎn)隊(duì)列中的每個(gè)受控節(jié)點(diǎn)配置一個(gè)所述虛擬機(jī),并在向每個(gè)受控節(jié)點(diǎn)提供所述虛擬機(jī)的訪(fǎng)問(wèn)地址后,將至少一個(gè)數(shù)據(jù)包傳輸至所述數(shù)據(jù)包指向的虛擬機(jī),所述數(shù)據(jù)包包括軟件安裝/卸載/禁止運(yùn)行信息;
[0030]所述虛擬機(jī)接收所述數(shù)據(jù)包,并根據(jù)所述數(shù)據(jù)包的信息執(zhí)行相應(yīng)的操作;
[0031]所述目標(biāo)計(jì)算機(jī),通過(guò)所述訪(fǎng)問(wèn)地址訪(fǎng)問(wèn)對(duì)應(yīng)的虛擬機(jī),以運(yùn)行所述虛擬機(jī)上安裝且可運(yùn)行的軟件。
[0032]作為上述方案的改進(jìn),還包括
[0033]網(wǎng)關(guān)服務(wù)器,連接于所述服務(wù)器與虛擬機(jī)之間,用于接收所述服務(wù)器輸出的數(shù)據(jù)包,并將所述數(shù)據(jù)包發(fā)送至該數(shù)據(jù)包指向的虛擬機(jī)。
[0034]作為上述方案的改進(jìn),所述虛擬機(jī),用于接收所述數(shù)據(jù)包,并根據(jù)所述數(shù)據(jù)包指定的方式執(zhí)行相應(yīng)的操作。
[0035]作為上述方案的改進(jìn),所述虛擬機(jī)具有軟件管理模塊,所述軟件管理模塊包括數(shù)據(jù)接收單元、數(shù)據(jù)獲取單元及執(zhí)行單元,其中,
[0036]所述數(shù)據(jù)接收單元,用于接收所述服務(wù)器或所述網(wǎng)關(guān)服務(wù)器發(fā)送的數(shù)據(jù)包,其中,所述數(shù)據(jù)包包括待執(zhí)行的軟件的列表;
[0037]所述數(shù)據(jù)獲取單元,用于根據(jù)所述數(shù)據(jù)接收單元接收的數(shù)據(jù)包,從所述服務(wù)器或所述網(wǎng)關(guān)服務(wù)器上獲取與所述數(shù)據(jù)包匹配的軟件包;
[0038]所述執(zhí)行單元,用于執(zhí)行所述軟件包。
[0039]作為上述方案的改進(jìn),所述軟件管理模塊還包括反饋單元,
[0040]所述反饋單元,用于向所述服務(wù)器反饋所述虛擬機(jī)上的操作狀態(tài)的信息;
[0041]所述服務(wù)器還用于根據(jù)所述反饋單元反饋的信息,在所述服務(wù)器的服務(wù)端上顯示并保存所述虛擬機(jī)的日志管理信息;
[0042]其中,所述日志管理信息包括受控節(jié)點(diǎn)上的軟件接收狀態(tài)、軟件安裝狀態(tài)及軟件卸載狀態(tài)的信息。
[0043]與現(xiàn)有技術(shù)相比,本發(fā)明公開(kāi)的具有如下有益效果:
[0044]本發(fā)明實(shí)施例提供的軟件分發(fā)方法和系統(tǒng),通過(guò)所述服務(wù)器設(shè)置與所述受控節(jié)點(diǎn)對(duì)應(yīng)的虛擬機(jī),以通過(guò)分發(fā)軟件至所述虛擬機(jī),實(shí)現(xiàn)了對(duì)不同域中的目標(biāo)計(jì)算機(jī)的軟件分發(fā)。此外,本發(fā)明實(shí)施例提供的軟件分發(fā)方法和系統(tǒng),還通過(guò)設(shè)置至少一個(gè)網(wǎng)關(guān)服務(wù)器,實(shí)現(xiàn)了數(shù)據(jù)包在云平臺(tái)不同集群之間的傳輸,擴(kuò)大了服務(wù)器對(duì)目標(biāo)計(jì)算機(jī)的管理數(shù)量,具有較高的適用性,用戶(hù)體驗(yàn)佳。
【附圖說(shuō)明】
[0045]為了更清楚地說(shuō)明本發(fā)明的技術(shù)方案,下面將對(duì)實(shí)施方式中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施方式,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0046]圖1是本發(fā)明第一實(shí)施例提供的軟件分發(fā)系統(tǒng)的架構(gòu)圖。
[0047]圖2是本發(fā)明第二實(shí)施例提供的軟件分發(fā)系統(tǒng)的架構(gòu)圖。
[0048]圖3是本發(fā)明第一實(shí)施例提供的軟件分發(fā)方法的流程圖。
[0049]圖4是本發(fā)明第二實(shí)施例提供的軟件分發(fā)方法的流程圖。
[0050]圖5是本發(fā)明第一實(shí)施例提供的服務(wù)器的結(jié)構(gòu)示意圖。
[0051]圖6是本發(fā)明第一實(shí)施例提供的服務(wù)器的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0052]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0053]為了便于理解本發(fā)明實(shí)施例,下面先對(duì)本發(fā)明實(shí)施例的軟件分發(fā)系統(tǒng)進(jìn)行描述。
[0054]請(qǐng)參閱圖1,圖1是本發(fā)明第一實(shí)施例提供的軟件分發(fā)系統(tǒng)的架構(gòu)圖。所述軟件分發(fā)系統(tǒng)100包括服務(wù)器10、至少一個(gè)目標(biāo)計(jì)算機(jī)及至少一個(gè)與目標(biāo)計(jì)算機(jī)匹配的虛擬機(jī)。所述服務(wù)器10、至少一個(gè)目標(biāo)計(jì)算機(jī)及所述虛擬機(jī)可通過(guò)局域網(wǎng)、城域網(wǎng)、廣域網(wǎng)或其他通信協(xié)議方式實(shí)現(xiàn)數(shù)據(jù)的傳輸。
[0055]在本發(fā)明實(shí)施例中,所述服務(wù)器10可由云平臺(tái)中的多個(gè)物理主機(jī)按照一定的網(wǎng)絡(luò)協(xié)議或者數(shù)據(jù)傳輸協(xié)議構(gòu)成,其中,所述服務(wù)器10可創(chuàng)建一個(gè)或一個(gè)以上的獨(dú)立的虛擬機(jī),如圖1中的虛擬機(jī)21、虛擬機(jī)22、虛擬機(jī)23及虛擬機(jī)24,每個(gè)虛擬機(jī)都可作為一個(gè)邏輯服務(wù)器運(yùn)行,并安裝有指定的操作系統(tǒng)、應(yīng)用軟件及被配置有指定的訪(fǎng)問(wèn)地址。
[0056]在本發(fā)明實(shí)施例中,當(dāng)所述目標(biāo)計(jì)算機(jī)在所述服務(wù)器10上完成注冊(cè)后,所述服務(wù)器10即可將該注冊(cè)過(guò)的目標(biāo)計(jì)算機(jī)增加至該服務(wù)器10的受控節(jié)點(diǎn)隊(duì)列中,并向所述受控節(jié)點(diǎn)隊(duì)列中的每個(gè)受控節(jié)點(diǎn)均配置一個(gè)指定的虛擬機(jī)。如圖1中,將所述虛擬機(jī)21配置給受控節(jié)點(diǎn)31、將虛擬機(jī)22配置給受控節(jié)點(diǎn)32、將虛擬機(jī)23配置給受控節(jié)點(diǎn)33及將虛擬機(jī)24配置給受控節(jié)點(diǎn)34。所述服務(wù)器10在為所述受控節(jié)點(diǎn)配置虛擬機(jī)的同時(shí),還將虛擬機(jī)的訪(fǎng)問(wèn)地址提供給所述受控節(jié)點(diǎn)。
[0057]在本發(fā)明實(shí)施例中,所述服務(wù)器10可將預(yù)定的數(shù)據(jù)包發(fā)送至所述數(shù)據(jù)包指向的虛擬機(jī),所述虛擬機(jī)可根據(jù)接收到的數(shù)據(jù)包的信息執(zhí)行相應(yīng)的操作,其中,所述數(shù)據(jù)包可包括軟件安裝/卸載/禁止運(yùn)行信息,從而在所述虛擬機(jī)上安裝/卸載或設(shè)置禁止運(yùn)行軟件。
[0058]在