專利名稱:一種部署應用軟件的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計算機領(lǐng)域部署應用軟件的方法,尤其是在數(shù)據(jù)中心或大規(guī)模計
算集群的安裝過程中通過網(wǎng)絡(luò)集中部署應用軟件的方法。
背景技術(shù):
隨著計算機應用的普及,計算機的應用規(guī)模不斷擴大。在數(shù)據(jù)中心、公用機房、科學計算環(huán)境中,具有幾十臺到上千臺計算機的情況已經(jīng)非常普遍。在這種環(huán)境中,計算機稱為節(jié)點機。為了使集群系統(tǒng)發(fā)揮作用,必須在這幾十到上千臺節(jié)點機上部署相應的應用軟件,并進行適當?shù)呐渲谩D壳霸诩合到y(tǒng)中部署應用軟件大多采用人工逐個節(jié)點安裝的方式,然而在眾多節(jié)點機上逐個安裝應用軟件是一項重復而費時費力的工作,而且人工操作難免出現(xiàn)操作失誤,影響集群系統(tǒng)的正常使用。因此在集群系統(tǒng)部署中亟需提供一種快捷可靠的部署應用軟件的方法。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種部署應用軟件的方法,實現(xiàn)在節(jié)點機上自動部署應用軟件。
為了解決上述問題,本發(fā)明提供了一種部署應用軟件的方法,其特征在于
集群中的節(jié)點機開機進入網(wǎng)絡(luò)啟動狀態(tài),從安裝服務器下載操作系統(tǒng)的鏡像和自動應答文件并安裝操作系統(tǒng),安裝完成后,根據(jù)所述自動應答文件中的掛載命令,掛載所述安裝服務器的軟件庫到本地,所述軟件庫包括各應用軟件的安裝文件和用于實現(xiàn)應用軟件自動安裝的輔助文件; 所述節(jié)點機根據(jù)所述自動應答文件中的調(diào)用命令調(diào)用所述輔助文件,在本地安裝各應用軟件。 進一步地,所述節(jié)點機成功安裝完應用軟件后,根據(jù)所述自動應答文件中取消掛載的命令取消掛載,并重新啟動系統(tǒng)。 進一步地,所述輔助文件包括一軟件列表文件,用于記錄需要安裝的應用軟件的名稱、安裝文件的目錄和安裝命令,所述節(jié)點機安裝所述軟件庫中的應用軟件時根據(jù)所述記錄進行安裝。 進一步地,所述輔助文件還包括一安裝腳本,所述節(jié)點機根據(jù)所述自動應答文件的調(diào)用命令調(diào)用所述安裝腳本順序解析所述軟件列表文件的記錄,找到相應的安裝文件目錄并執(zhí)行所述安裝命令,實現(xiàn)所述應用軟件的安裝,并將安裝過程中產(chǎn)生的日志記錄到安裝日志中。 進一步地,所述節(jié)點機安裝操作系統(tǒng)采用無人值守安裝(kickstart)方式。
進一步地,所述安裝服務器通過網(wǎng)絡(luò)共享服務將軟件庫共享到局域網(wǎng)中。
本發(fā)明提供了一種部署應用軟件的系統(tǒng),包括安裝服務器和與其連接的多個節(jié)點機,其中
4
所述安裝服務器用于保存和維護操作系統(tǒng)的鏡像、自動應答文件和軟件庫,為所述節(jié)點機提供網(wǎng)絡(luò)安裝操作系統(tǒng)和應用軟件的服務,該軟件庫中包括各應用軟件的安裝文件和用于安裝應用軟件的輔助文件; 所述節(jié)點機用于開機進入網(wǎng)絡(luò)啟動狀態(tài),從所述安裝服務器下載操作系統(tǒng)鏡像和所述自動應答文件,完成操作系統(tǒng)的安裝,根據(jù)所述自動應答文件的掛載命令將所述軟件庫掛載到本地,并根據(jù)所述自動應答文件的調(diào)用命令調(diào)用所述輔助文件,實現(xiàn)各應用軟件在本地的自動安裝。 進一步地,所述輔助文件包括軟件列表文件和安裝腳本,其中 所述軟件列表文件用于記錄應用軟件的信息,包括應用軟件名稱、安裝文件的目錄和安裝命令; 所述安裝腳本包含用于解析所述軟件列表文件和執(zhí)行所述安裝命令,根據(jù)所述軟件列表文件中的記錄安裝各應用軟件,以及將安裝過程中產(chǎn)生的日志記錄到安裝日志的命令。 進一步地,所述自動應答文件還包括應用軟件安裝完成后取消掛載的命令,用于所述節(jié)點機成功安裝完應用軟件后,取消掛載,并重新啟動。 進一步地,所述安裝服務器通過網(wǎng)絡(luò)文件共享服務將所述軟件庫共享到局域網(wǎng)中。 本發(fā)明由于采用了無人值守方式安裝操作系統(tǒng)和應用軟件,實現(xiàn)節(jié)點機上應用軟件的自動安裝,節(jié)省了人力資源,并且避免了人工操作的失誤,提高了應用軟件安裝的可靠性。由于安裝服務器提供軟件安裝服務,將軟件庫掛載到節(jié)點機,并根據(jù)預先的部署進行軟件安裝和配置,使得應用軟件的部署方式更為方便、快捷。
圖1為本發(fā)明實施例的網(wǎng)絡(luò)拓撲結(jié)構(gòu)示意圖; 圖2為本發(fā)明實施例安裝腳本的流程圖; 圖3為本發(fā)明實施例集群安裝過程中節(jié)點機的工作流程圖。
具體實施例方式
下面通過具體的實施例并結(jié)合附圖對本發(fā)明作進一步詳細的描述。 如圖1所示,本發(fā)明實施例的集群安裝過程中部署應用軟件的系統(tǒng),包括安裝服
務器和與其連接的多個節(jié)點機,其中 安裝服務器用于保存和維護操作系統(tǒng)的鏡像、自動應答文件和軟件庫,為節(jié)點機提供網(wǎng)絡(luò)安裝操作系統(tǒng)和應用軟件的服務,該軟件庫中包括應用軟件的安裝文件和用于安裝應用軟件的輔助文件; 節(jié)點機用于開機進入網(wǎng)絡(luò)啟動狀態(tài),從該安裝服務器下載操作系統(tǒng)鏡像和所述自動應答文件,完成操作系統(tǒng)的安裝,根據(jù)該自動應答文件的掛載命令將該軟件庫掛載到本地,并根據(jù)該自動應答文件的調(diào)用命令調(diào)用該輔助文件,實現(xiàn)各應用軟件在本地的自動安裝。 該輔助文件包括軟件列表文件和安裝腳本,其中
5
該軟件列表文件用于記錄應用軟件的信息,包括應用軟件名稱、安裝文件的目錄和安裝命令; 該安裝腳本包含用于解析該軟件列表文件和執(zhí)行該安裝命令,以及按照該軟件列表文件中的記錄安裝應用軟件的命令。 該自動應答文件還包括應用軟件安裝完成后取消掛載的命令,用于該節(jié)點機成功安裝完應用軟件后,取消掛載,并重新啟動。 該安裝服務器通過網(wǎng)絡(luò)文件共享服務,如網(wǎng)絡(luò)文件共享服務(NFS)或SAMBA (在Linux和UNIX系統(tǒng)上實現(xiàn)SMB協(xié)議的軟件),將該軟件庫共享到局域網(wǎng)中。 本實施例中軟件庫的制作步驟如下 步驟100 :維護應用軟件的安裝文件; 在安裝服務器上創(chuàng)建一個文件夾,命名為application,軟件庫的目錄樹如下 I application I----------即plist 〃軟件列表文件 I----------install, sh 〃安裝展卩本 I----------即pl 〃應用軟件即pl的文件夾 I------即pl-10-l. rpm 〃應用軟件即pl的安裝文件 I----------即p2 〃應用軟件即p2的文件夾 I------即p2-9-12. rpm 〃應用軟件即p2的安裝文件 ........................ 將各應用軟件的安裝文件保存到application中在application文件夾中為每
個應用軟件創(chuàng)建單獨的文件夾,將各個應用軟件的安裝文件分別保存到對應的文件夾中,如應用軟件appl的安裝文件appl-10-l.rpm保存到文件夾即pl中。
步驟110 :創(chuàng)建輔助文件; (1)創(chuàng)建應用軟件列表文件即plist,每個應用軟件信息記錄一行,分別記錄軟件
名稱、安裝文件目錄和安裝命令,格式如下即pl-10-1. rpm:即pl :rpm-ivh即pl-10-1. rpm 〃應用軟件appl的軟件名稱appl-10-l.rpm、安裝文件目錄即pl和安裝命令rpm-ivh即pl-10-1. rpm即p2-9-12. rpm:即p2:rpm-ivh即p2-9-12. rpm 〃應用軟件即p2的軟件名稱即p2-9-12. rpm、安裝文件目錄即p2和安裝命令rpm-ivh即p2-9-12. rpm (2)創(chuàng)建應用軟件的安裝腳本install, sh,該腳本用于解析即plist,然后執(zhí)行應用軟件的安裝命令,該腳本對應的流程圖如圖2所示,腳本內(nèi)容如下
# ! /bin/sh for line irT cat即plist—〃按順序讀取文件applist中的內(nèi)容,每次讀取一行,將該行的內(nèi)容保存到變量line中,找到相應的安裝文件目錄并執(zhí)行讀取的安裝命令,直到讀到文件applist的末尾;
do appname = —echo$line|awk-F〃 〃 ' {print$l}' |sed' s///'—
〃從變量line中解析出應用軟件的名稱,保存到變量即pname中; apppath = — echo$line |awk_F〃 〃 ' {print$2} ' |sed' s/'— 〃從變量line中解析出應用軟件安裝文件的保存路徑,保存到變量即ppath中;appcom = — echo$line |awk-F〃 〃 ' {print$3} | sed' s〃/'— 〃從變量line中解析出應用軟件的安裝命令保存到變量appcom中; cdS即卯a(chǎn)th 〃進入到即卯a(chǎn)th變量記錄的文件夾中; S即pcom〉〉 install, log 2 > &1〃執(zhí)行即pcom變量記錄的應用軟件的安裝命令,進行應用軟件的安裝,并將安裝過程中產(chǎn)生的日志記錄到安裝日志/root/install, log中; cd.. 〃回退到原來的文件夾,返回繼續(xù)讀取文件applist中的內(nèi)容。 Done 該安裝腳本執(zhí)行即pcom變量記錄的應用軟件的安裝命令進行應用軟件的安
裝時,如該應用軟件安裝失敗,則將安裝過程中產(chǎn)生的錯誤日志記錄到安裝日志/root/
install, log中,用來分析錯誤產(chǎn)生的原因,然后進行下一個應用軟件的安裝。 步驟120 :將安裝服務器上面的軟件庫application用網(wǎng)絡(luò)文件共享服務,如文件
共享服務器NFS或SAMBA,在局域網(wǎng)中共享。 本實施例節(jié)點機上應用軟件的安裝,是通過執(zhí)行操作系統(tǒng)網(wǎng)絡(luò)安裝服務的自動應答文件實現(xiàn)的。在該自動應答文件中加入將所述軟件庫掛載到本地的文件夾的掛載命令、調(diào)用所述安裝腳本和應用軟件安裝完成后取消掛載的取消掛載命令。節(jié)點機在操作系統(tǒng)安裝完畢后,讀取并執(zhí)行該自動應答文件中的命令,在節(jié)點機上進行應用軟件的自動安裝。
如對Linux操作系統(tǒng),修改自動應答文件rhel. ks,在該文件末尾加入如下命令
% post mkdir/tmp/application //倉寸建文^[牛目錄/temp/applicationmoimt_t nfs 192. 168. 0. 1:/即plication/tmp/即plication〃〃將軟件庫掛
載到本地文件夾/tmp/application cd/tmp/即plication //切換至lj文件目錄/temp/即plication . /install, sh 〃調(diào)用軟件庫中的安裝腳本install, shumount/tmp/即plication 〃安裝完成以后,取消掛載軟件庫
rm-fr/tmp/即plication
注192. 168. 0. 1是安裝服務器的IP地址。 本實施例節(jié)點機安裝操作系統(tǒng)采用無人值守安裝方式。節(jié)點機從網(wǎng)絡(luò)啟動狀態(tài)啟動,開機后從安裝服務器下載操作系統(tǒng)鏡像和自動應答文件,進行操作系統(tǒng)的安裝,操作系統(tǒng)安裝完成后自動運行該自動應答文件中加入的命令,將軟件庫掛載到本地的文件夾/tmp/即plication,該自動應答文件調(diào)用軟件庫中的安裝腳本install, sh,該安裝腳本解析
該軟件庫中的軟件列表文件,按照該軟件列表文件中的記錄在本地安裝應用軟件,安裝完
成后,該節(jié)點機根據(jù)該自動應答文件中的命令取消掛載軟件庫,重啟節(jié)點機。 本實施例集群安裝過程中部署應用軟件的方法,節(jié)點機設(shè)置為從網(wǎng)絡(luò)啟動,該節(jié)
點機的工作流程如圖3所示,具體包括以下步驟
7
步驟301 :該節(jié)點機開機,從安裝服務器下載操作系統(tǒng)的鏡像和自動應答文件,并安裝操作系統(tǒng); 該節(jié)點機安裝操作系統(tǒng)采用無人值守安裝(kickstart)方式。 步驟302 :操作系統(tǒng)安裝完成后,該節(jié)點機根據(jù)該自動應答文件的掛載命令,掛載
該安裝服務器中的軟件庫到本地; 該軟件庫包括應用軟件的安裝文件和用于安裝應用軟件的輔助文件,通過文件共享服務,如NFS或SAMBA,共享到局域網(wǎng)中。 對于上述Linux系統(tǒng)自動應答文件的掛載命令,該軟件庫掛載到創(chuàng)建的本地文件夾/tmp/即plication。 步驟303 :該節(jié)點機根據(jù)該自動應答文件的調(diào)用命令調(diào)用該輔助文件,在本地自動安裝各應用軟件; 該節(jié)點機執(zhí)行該自動應答文件中的調(diào)用命令,調(diào)用該輔助軟件的安裝腳本解析軟
件列表文件中記錄的軟件名稱、安裝文件的目錄和安裝命令,找到相應的安裝文件目錄并
執(zhí)行該安裝命令,在本地逐一對該軟件庫中的應用軟件進行安裝。 安裝過程中產(chǎn)生的日志記錄到安裝日志/root/install, log中。 步驟304 :該節(jié)點機安裝完應用軟件后,根據(jù)該自動應答文件的命令取消掛載,重
新啟動。
8
權(quán)利要求
一種部署應用軟件的方法,其特征在于集群中的節(jié)點機開機進入網(wǎng)絡(luò)啟動狀態(tài),從安裝服務器下載操作系統(tǒng)的鏡像和自動應答文件并安裝操作系統(tǒng),安裝完成后,根據(jù)所述自動應答文件中的掛載命令,掛載所述安裝服務器的軟件庫到本地,所述軟件庫包括各應用軟件的安裝文件和用于實現(xiàn)應用軟件自動安裝的輔助文件;所述節(jié)點機根據(jù)所述自動應答文件中的調(diào)用命令調(diào)用所述輔助文件,在本地安裝各應用軟件。
2. 如權(quán)利要求l所述的方法,其特征在于所述節(jié)點機成功安裝完應用軟件后,根據(jù)所述自動應答文件中取消掛載的命令取消掛 載,并重新啟動系統(tǒng)。
3. 如權(quán)利要求1所述的方法,其特征在于所述輔助文件包括一軟件列表文件,用于記錄需要安裝的應用軟件的名稱、安裝文件 的目錄和安裝命令,所述節(jié)點機安裝所述軟件庫中的應用軟件時根據(jù)所述記錄進行安裝。
4. 如權(quán)利要求3所述的方法,其特征在于所述輔助文件還包括一安裝腳本,所述節(jié)點機根據(jù)所述自動應答文件的調(diào)用命令調(diào)用 所述安裝腳本順序解析所述軟件列表文件的記錄,找到相應的安裝文件目錄并執(zhí)行所述安 裝命令,實現(xiàn)所述應用軟件的安裝,并將安裝過程中產(chǎn)生的日志記錄到安裝日志中。
5. 如權(quán)利要求1所述的方法,其特征在于所述節(jié)點機安裝操作系統(tǒng)采用無人值守安裝(kickstart)方式。
6. 如權(quán)利要求1所述的方法,其特征在于 所述安裝服務器通過網(wǎng)絡(luò)共享服務將軟件庫共享到局域網(wǎng)中。
7. —種部署應用軟件的系統(tǒng),包括安裝服務器和與其連接的多個節(jié)點機,其中 所述安裝服務器用于保存和維護操作系統(tǒng)的鏡像、自動應答文件和軟件庫,為所述節(jié)點機提供網(wǎng)絡(luò)安裝操作系統(tǒng)和應用軟件的服務,該軟件庫中包括各應用軟件的安裝文件和 用于安裝應用軟件的輔助文件;所述節(jié)點機用于開機進入網(wǎng)絡(luò)啟動狀態(tài),從所述安裝服務器下載操作系統(tǒng)鏡像和所述 自動應答文件,完成操作系統(tǒng)的安裝,根據(jù)所述自動應答文件的掛載命令將所述軟件庫掛 載到本地,并根據(jù)所述自動應答文件的調(diào)用命令調(diào)用所述輔助文件,實現(xiàn)各應用軟件在本 地的自動安裝。
8. 如權(quán)利要求7所述的系統(tǒng),其特征在于 所述輔助文件包括軟件列表文件和安裝腳本,其中所述軟件列表文件用于記錄應用軟件的信息,包括應用軟件名稱、安裝文件的目錄和 安裝命令;所述安裝腳本包含用于解析所述軟件列表文件和執(zhí)行所述安裝命令,根據(jù)所述軟件列 表文件中的記錄安裝各應用軟件,以及將安裝過程中產(chǎn)生的日志記錄到安裝日志的命令。
9. 如權(quán)利要求7所述的系統(tǒng),其特征在于所述自動應答文件還包括應用軟件安裝完成后取消掛載的命令,用于所述節(jié)點機成功 安裝完應用軟件后,取消掛載,并重新啟動。
10. 如權(quán)利要求7所述的系統(tǒng),其特征在于所述安裝服務器通過網(wǎng)絡(luò)文件共享服務將所述軟件庫共享到局域網(wǎng)中。
全文摘要
本發(fā)明公開了一種部署應用軟件的方法,集群中的節(jié)點機開機進入網(wǎng)絡(luò)啟動狀態(tài),從安裝服務器下載操作系統(tǒng)的鏡像和自動應答文件并安裝操作系統(tǒng),安裝完成后,根據(jù)所述自動應答文件中的掛載命令,掛載所述安裝服務器的軟件庫到本地,所述軟件庫包括各應用軟件的安裝文件和用于實現(xiàn)應用軟件自動安裝的輔助文件;所述節(jié)點機根據(jù)所述自動應答文件中的調(diào)用命令調(diào)用所述輔助文件,在本地安裝各應用軟件。本發(fā)明由于采用了無人值守方式安裝操作系統(tǒng)和應用軟件,實現(xiàn)節(jié)點機上應用軟件的自動安裝,節(jié)省了人力資源,并且避免了人工操作的失誤,提高了應用軟件部署的可靠性,使得應用軟件的部署方式更為方便、快捷。
文檔編號H04L29/06GK101788917SQ20101011567
公開日2010年7月28日 申請日期2010年2月26日 優(yōu)先權(quán)日2010年2月26日
發(fā)明者邸雙朋 申請人:浪潮(北京)電子信息產(chǎn)業(yè)有限公司