亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Web的集群部署管理系統(tǒng)

        2016-01-05 05:24:11芳,

        劉 芳, 吳 瓊

        (1.東北石油大學(xué) 計算機與信息技術(shù)學(xué)院, 黑龍江大慶 163318;

        2.大慶油田有限責(zé)任公司 勘探開發(fā)研究院, 黑龍江大慶 163712)

        基于Web的集群部署管理系統(tǒng)

        劉芳1, 吳瓊2

        (1.東北石油大學(xué) 計算機與信息技術(shù)學(xué)院, 黑龍江大慶 163318;

        2.大慶油田有限責(zé)任公司 勘探開發(fā)研究院, 黑龍江大慶 163712)

        摘要:隨著集群技術(shù)的廣泛應(yīng)用,對集群部署技術(shù)的研究也越來越多.采用Linux環(huán)境下Shell腳本技術(shù)及Web開發(fā)技術(shù),在分析集群部署管理邏輯流程的基礎(chǔ)上,設(shè)計和實現(xiàn)了集群部署管理系統(tǒng).利用該系統(tǒng)可以對集群節(jié)點進行集中部署、部署日志查詢及應(yīng)用情況查詢,滿足了系統(tǒng)管理人員的工作需求.

        關(guān)鍵詞:集群部署管理; Linux; 集群Web管理; 腳本管理

        集群系統(tǒng)憑借其超強計算能力、高性價比獲得了越來越廣泛的應(yīng)用,對集群管理的研究也成為一個熱門的方向[1-2].集群系統(tǒng)需要對集群內(nèi)的計算資源、高性能計算應(yīng)用進行有效的管理.目前,主要通過命令行和少量的Web管理功能進行集群管理[3],尤其是Web方式,已經(jīng)成為集群監(jiān)控和管理的一種主要手段[4-5].本文設(shè)計實現(xiàn)基于Web的集群部署管理系統(tǒng),通過該系統(tǒng)實現(xiàn)Web圖形用戶接口(GUI),系統(tǒng)管理員在任何地方都可以對集群進行部署和管理,以降低集群系統(tǒng)的管理難度, 為管理員提供一個友好的界面,并支持遠程的訪問與管理.

        1開發(fā)技術(shù)

        1.1Shell腳本

        Shell腳本常用于系統(tǒng)管理工作,或是結(jié)合現(xiàn)有程序以完成小型的、特定的工作[6].Shell可以簡單被看成是批處理文件,也可以被看成是一個程序語言,這個程序語言是利用Shell與相關(guān)工具命令的,所以不需要編譯即可執(zhí)行,且擁有不錯的排錯工具,可以幫助系統(tǒng)管理員快速管理好主機[7].文獻[8]利用Shell腳本技術(shù)和相關(guān)的工具命令,對集群部署過程進行了設(shè)計與實現(xiàn),本文在此基礎(chǔ)上,對現(xiàn)有腳本進行整合,形成腳本工具.

        1.2 調(diào)用Shell腳本

        Shell腳本存放在Linux服務(wù)器,本機執(zhí)行腳本只需要直接執(zhí)行命令即可,但本文是基于Web模式的系統(tǒng),需要遠程調(diào)用腳本,所以采用JSch技術(shù)對Shell腳本進行調(diào)用.JSch是SSH2的一個純Java實現(xiàn),它允許使用者連接到一個sshd服務(wù)器,使用端口轉(zhuǎn)發(fā)、X11轉(zhuǎn)發(fā)、文件傳輸?shù)?Shell腳本通常都會有返回值,這些返回值以流的方式被獲取,并且可以被利用,具體實現(xiàn)將在后文介紹.

        1.3JSP技術(shù)

        JSP技術(shù)為創(chuàng)建高度動態(tài)的Web應(yīng)用提供了一個獨特的開發(fā)環(huán)境,它提供在HTML代碼中混合某種程序代碼、由語言引擎解釋執(zhí)行程序代碼的能力[9].JSP技術(shù)是當(dāng)今比較流行的Web開發(fā)技術(shù),很容易整合到多種應(yīng)用體系結(jié)構(gòu)中,以利用現(xiàn)存的工具和技巧,并且能擴展到支持企業(yè)級的分布式應(yīng)用中.JSP技術(shù)能夠支持高度復(fù)雜的基于Web的應(yīng)用,同時擁有Java編程語言“一次編寫,各處運行”的特點.本文利用JSP技術(shù)對系統(tǒng)的Web界面進行設(shè)計.

        2系統(tǒng)簡介

        2.1系統(tǒng)邏輯流程

        集群部署管理系統(tǒng)流程圖如圖1所示.系統(tǒng)管理員通過Web界面發(fā)送各種請求信息到Linux管理服務(wù)器上,管理服務(wù)器接收請求信息后對Shell腳本進行觸發(fā).這些請求信息是Shell腳本的輸入,不同的請求信息調(diào)用不同的Shell腳本,并發(fā)送到各個節(jié)點中, 節(jié)點根據(jù)不同的Shell腳本進行相關(guān)的操作執(zhí)行,并將輸出返回到服務(wù)器上,服務(wù)器整理各個節(jié)點返回信息, 形成結(jié)果發(fā)送到Web界面中,

        圖1 集群部署管理系統(tǒng)流程圖

        系統(tǒng)管理員就可以在Web界面上查看到相應(yīng)的輸出信息.

        2.2系統(tǒng)功能

        集群部署管理系統(tǒng)分為集群部署、日志管理、應(yīng)用管理和腳本管理4個主要功能,圖2所示為系統(tǒng)功能模塊圖.集群部署完成集群節(jié)點操作系統(tǒng)、應(yīng)用軟件、系統(tǒng)環(huán)境配置等工作,分為單節(jié)點部署和多節(jié)點部署;日志管理提供部署日志查詢;應(yīng)用管理功能提供部署節(jié)點應(yīng)用軟件查詢,分為應(yīng)用查詢和應(yīng)用同步兩個子功能;腳本管理包括腳本編輯和腳本配置兩個子功能.

        圖2 系統(tǒng)功能模塊圖

        3系統(tǒng)實現(xiàn)

        3.1Shell腳本實現(xiàn)

        腳本的實現(xiàn)是所有功能模塊的后臺基礎(chǔ),為了實現(xiàn)腳本高效管理和模塊化應(yīng)用,對腳本進行了集中編輯和配置,這也是腳本管理中兩個重要功能.為了達到上述目標(biāo),對每個腳本的編輯采用標(biāo)注化方式,即標(biāo)注化輸入、標(biāo)注化輸出等,腳本執(zhí)行中應(yīng)用到的配置文件同樣采用模塊化方式,配置文件單獨編寫只在應(yīng)用時被調(diào)用.下面介紹腳本編輯和腳本配置管理功能的實現(xiàn).

        (1)腳本編輯

        以集群部署腳本ClusterDeploy.sh為例說明腳本編輯.腳本的設(shè)計包括輸入、輸出和腳本程序設(shè)計.輸入輸出設(shè)計為標(biāo)注化界面實現(xiàn)打下基礎(chǔ),ClusterDeploy.sh的標(biāo)注化輸入為4個:開始節(jié)點、結(jié)束節(jié)點、軟件、操作系統(tǒng).標(biāo)注化的輸入根據(jù)所要在頁面上顯示的輸出對腳本程序進行設(shè)計,如下所示代碼為ClusterDeploy.sh腳本部分輸出代碼:

        echo"Poweringoffnodesfordeploying:"

        poweroff$INSTALLNODE

        echo"Testingdeploynodespowerstat:"

        powerstat$INSTALLNODE

        echo"Poweringonnodesfordeploying:"

        poweron$INSTALLNODE

        echo"Testingdeploynodespowerstat:"

        powerstat$INSTALLNODE

        echo" $INSTALLNODEaredeploying!"

        echo"Pleasewaiting..................."

        echo"Thisprocessneedsafewminutes................"

        nodeset$INSTALLNODEboot

        servicedhcpdstop

        echo"END"

        /export/bin/ibminstall/ibmdeploy.sh

        (2)腳本配置

        本系統(tǒng)中有多個腳本文件支持調(diào)用,對這些腳本的管理采用集中配置的方法.編寫腳本配置文件ShellMan.config對腳本運行管理,管理內(nèi)容包括服務(wù)器Ip地址、腳本運行Ip地址、用戶名、口令、腳本運行路徑等,其中腳本路徑賦值給變量,這些變量將在腳本調(diào)用中發(fā)揮重要作用,ShellMan.config文件內(nèi)容如下:

        manageNode=nodeList:10.65.69.1

        shellIp=10.65.69.1

        port=22

        userName=root

        password=11 1111

        shell=/export/bin/ibminstall/ibmdeploy.sh

        getLogListShell=/export/bin/ibminstall/ibmdeploylog.sh

        getLogDetail=/export/bin/ibminstall/ibmdeploylogdetail.sh

        cggShell=/runapp/cgg.sh

        omega_father=/runapp/omega_father.sh

        omega_cn=/runapp/omega_cn.sh

        omega_py=/runapp/omega_py.sh

        pgShell=/runapp/pg.sh

        cggFilePath=d:/dqyjy/cgg

        omegaFilePath=d:/dqyjy/omega

        pgFilePath=d:/dqyjy/pg

        nodedeployShell=/runapp/nodedeploy.sh

        3.2 腳本調(diào)用實現(xiàn)

        圖3為腳本調(diào)用流程圖.首先建立Session連接,設(shè)置Session參數(shù)包括用戶名、口令、Ip地址和端口號,這些都已經(jīng)在ShellMan.config文件中配置完成.開啟Session連接后打開Exec通道執(zhí)行腳本命令,待腳本執(zhí)行完成后獲取返回值.腳本調(diào)用采用JSch技術(shù),利用該技術(shù)建立Session,代碼如下:

        圖3 腳本調(diào)用流程圖

        Session=jsch.getSession(ShellConfigCache.getShellConfigCache().shellConfigEntity.getUserName(),ShellConfigCache.getShellConfigCache().shellConfigEntity.getIp(),ShellConfigCache.getShellConfigCache().shellConfigEntity.getPort());

        Session.setPassword(ShellConfigCache.getShellConfigCache().shellConfigEntity.getPassword());

        程序具體調(diào)用哪個腳本由ShellMan.config文件中定義的腳本名稱變量決定,shell變量指向哪個腳本文件,就執(zhí)行哪個腳本,其代碼如下:

        ((ChannelExec)channel).setCommand(shell);

        3.3頁面實現(xiàn)

        3.3.1集群部署

        圖4所示為系統(tǒng)部署運行界面,部署分為單節(jié)點部署和多節(jié)點部署兩種方式,該界面為多節(jié)點部署界面.系統(tǒng)管理員在選擇操作系統(tǒng)、節(jié)點名稱和軟件名稱后就可以對相關(guān)節(jié)點進行部署,截圖下半部分的部署日志是部署過程中的輸出顯示,包括相關(guān)的服務(wù)啟動、節(jié)點安裝準(zhǔn)備、節(jié)點狀態(tài)等信息.

        圖4 系統(tǒng)部署運行界面

        3.3.2應(yīng)用管理

        圖5是系統(tǒng)應(yīng)用情況管理界面,界面上分布了五種節(jié)點應(yīng)用類型的按鈕和一個同步部署情況按鈕.點擊5個按鈕中的任意一個,在下面會顯示出該類型節(jié)點的部署情況,包括軟件名稱、節(jié)點個數(shù)和節(jié)點名稱等.同步部署情況按鈕完成節(jié)點當(dāng)前部署情況的同步查詢,按鈕點擊后會觸發(fā)相關(guān)腳本查詢所有節(jié)點并生成新的節(jié)點應(yīng)用情況.

        圖5 系統(tǒng)應(yīng)用情況管理界面

        3.3.3日志管理

        圖6是日志管理界面,該界面中將部署時生成的日志以列表的形式列出,點擊每個日志文件名稱就會觸發(fā)查詢?nèi)罩灸_本,腳本成功執(zhí)行后就會列出部署時間、部署軟件、節(jié)點等信息.

        圖6 日志管理界面

        4 結(jié)束語

        本文研究了Linux環(huán)境下的Shell腳本技術(shù)以及Web開發(fā)中腳本調(diào)用技術(shù),并利用Shell腳本和JSP技術(shù),設(shè)計和實現(xiàn)了集群部署管理系統(tǒng).該系統(tǒng)能夠完成集群大批量部署和單節(jié)點部署,滿足了系統(tǒng)管理人員對集群部署和應(yīng)用情況查詢的基本需求,簡化了工作量,提高了集群系統(tǒng)管理效率.

        參考文獻:

        [1]SandipA,ChristianP,JiantaoK.System-levelresourcemonitoringinhigh-performancecomputingenvironments[J].JournalofGridComputing,2003,1(3):273-289.

        [2]RajermaniT,ElankovanS.Clustercontrolmanagementasclustermiddleware[C]// 4thAsianConference,ACIIDS2012.IntelligentInformationandDatabaseSystems.Taipei:TaiwanSpringerScience&BusinessMedia, 2012:73-82.

        [3]馮勝鵬,郭雷.集群管理在Web上的設(shè)計與實現(xiàn)[J].計算機輔助工程, 2006,15(1):14-17.

        [4]LeiYC,GongYL,ZhangSet al.ResearchonschedulingalgorithmsinWebclusterservers[J].JournalofComputerScienceandTechnology, 2003, 18(6): 703-716.

        [5]MatthewLM,BrentNC,DavidEC.Thegangliadistributedmonitoringsystem:design,implementation,andexperience[J].ParallelComputing,2004,30(17):817-840.

        [6]羅賓, 比博.Shell腳本學(xué)習(xí)指南[M].O'ReillyTaiwan公司,譯.北京:機械工業(yè)出版社,2009.

        [7]鳥哥,王世江.鳥哥的Linux私房菜基礎(chǔ)學(xué)習(xí)篇[M].3版.北京:人民郵電出版社,2010.

        [8]吳瓊,王穎,梁金鈐,等.Linux環(huán)境下基于Qt和xCAT的集群部署系統(tǒng)[J].計算機系統(tǒng)應(yīng)用,2013,22(7):27-30.

        [9]劉廣紅,董小社, 吳維剛, 等.基于Web的遠程集群系統(tǒng)管理設(shè)計與實現(xiàn)[J].計算機應(yīng)用研究,2003,20(5):123-125.

        (編輯:郝秀清)

        收稿日期:2014-07-26

        基金項目:黑龍江省高等教育科學(xué)研究“十二五”規(guī)劃課題(HGJXH B1110131)

        作者簡介:劉芳,女,lfliufang1983@126.com

        文章編號:1672-6197(2015)02-0032-04

        中圖分類號:Tp393

        文獻標(biāo)志碼:A

        Managementsystemofweb-basedclusterdeployment

        LIUFang1,WUQiong2

        (1.SchoolofComputerandInformationTechnology,NortheastPetroleumUniversity,Daqing163318,China;

        2.ExplorationandDevelopmentResearchInstitute,DaqingOilfieldCompanyLimited,Daqing163712,China)

        Abstract:With the cluster technology is widely used, the research of the cluster deployment technology is increasing. Based on the analysis of the logical process of cluster deployment management, using the Linux environment Shell script technology and Web development technology, the cluster deployment management system is designed and implemented. The system could centralize deploy Cluster nodes,query deployment log and query applications, and it satisfy the work requirement of the system management.

        Key words:cluster deployment management; Linux; cluster web management; script management

        欧美亅性猛交内射| 久久99老妇伦国产熟女高清| 午夜精品一区二区三区视频免费看| 男人天堂亚洲天堂av| 国产精品久线在线观看| 国产精品99久久精品爆乳| 日韩一区二区三区中文字幕| 人妻精品久久一区二区三区| 狠狠噜狠狠狠狠丁香五月| 国产午夜影视大全免费观看 | 免费a级毛片无码a∨男男| 国产精品爆乳在线播放| 天堂av一区二区在线| 无码人妻久久久一区二区三区| 久久久精品456亚洲影院| 麻豆AⅤ精品无码一区二区| 81久久免费精品国产色夜| 亚洲av男人电影天堂热app| 亚洲综合精品成人| 亚洲男人在线无码视频| 日本刺激视频一区二区| 国产丶欧美丶日本不卡视频| 亚洲日本天堂| 免费av在线视频播放| 久久综合伊人77777麻豆| 一区二区三区国产亚洲网站| 免费一级国产大片| 久久综合激情的五月天 | 国产亚洲av综合人人澡精品| 青青草视频网站免费观看| 国产女人乱码一区二区三区| 天天躁夜夜躁狠狠躁2021a2| 日韩中文字幕欧美亚洲第一区| 国产毛片一区二区三区| 老熟妇乱子伦牲交视频| 国产精自产拍久久久久久蜜 | 精品久久免费国产乱色也| 欧美激情肉欲高潮视频| 熟妇五十路六十路息与子| av中文字幕在线资源网| 中文无码av一区二区三区|