999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

web遠程升級Solaris及進度跟蹤設(shè)計

2016-11-29 03:42:43
軟件 2016年9期
關(guān)鍵詞:系統(tǒng)

于 洋

(北京郵電大學 通信與信號處理專業(yè),北京 海淀 100876)

web遠程升級Solaris及進度跟蹤設(shè)計

于洋

(北京郵電大學 通信與信號處理專業(yè),北京 海淀 100876)

現(xiàn)代企業(yè)或單位服務(wù)器主機眾多,如果逐個對各個主機版本升級并進行系統(tǒng)環(huán)境的配置將產(chǎn)生龐大的工作量,一種可以實現(xiàn)對主機的集成管理[9]的設(shè)計成為必須。當前Solaris操作系統(tǒng)應(yīng)用于許多企業(yè)服務(wù)器,相對于windows服務(wù)器,其具有穩(wěn)定性高,網(wǎng)絡(luò)完善的優(yōu)點,本文是針對Solaris操作系統(tǒng)的主機提供的一種版本升級解決方案,主要闡述通過web頁面遠程控制Solaris主機對其進行升級和系統(tǒng)環(huán)境的配置過程,并且通過web頁面實時跟蹤進度的實現(xiàn)原理。

solaris;進度跟蹤;集成管理;升級

本文著錄格式:于洋. web遠程升級Solaris及進度跟蹤設(shè)計[J]. 軟件,2016,37(9):115-117

0 引言

Solaris操作系統(tǒng)屬于Unix的一個分支,由之前SUN公司研發(fā),SUN被收購之前的操作系統(tǒng)代碼仍為開源。當前Solaris操作系統(tǒng)用于許多Oracle服務(wù)器。由于Solaris操作系統(tǒng)集成了SSH(Secure Shell)服務(wù),SSH可以在本地主機和遠程主機之間,建立命令和數(shù)據(jù)的傳輸通道,服務(wù)器端通過web服務(wù)器來SSH公鑰登錄[7-8]到需要升級的Solaris主機,并且傳遞數(shù)據(jù)和命令給Solaris主機。而Solaris主機又可以通過http請求的方式將主機的重要進度信息返回給web服務(wù)器。

1 系統(tǒng)框架設(shè)計

器中,MySQL數(shù)據(jù)庫存放主機的信息,包括主機的硬件類型、域、當前最高版本對應(yīng)的BE(Boot Enviroment啟動環(huán)境)名稱等;當有新的Solaris主機注冊到系統(tǒng)中后,web服務(wù)器通過SSH公鑰登錄的方式首先為該主機安裝操作系統(tǒng)升級和系統(tǒng)環(huán)境配置所需要的Shell腳本。

圖1 系統(tǒng)整體框架

圖1 中總體設(shè)計主要分為兩個部分,web服務(wù)

在Solaris主機群中,設(shè)計需要的腳本主要包括創(chuàng)建狀態(tài)文件腳本stat-create、更改主機狀態(tài)的腳本stat-changer、執(zhí)行腳本execution、環(huán)境配置腳本env-conf和狀態(tài)監(jiān)控腳本stat-watch。實現(xiàn)對Solaris系統(tǒng)狀態(tài)的監(jiān)控和采集。

2 主機狀態(tài)跟蹤設(shè)計

2.1系統(tǒng)升級

由于Solaris的BE(Boot Environment啟動環(huán)境)對應(yīng)著不同操作系統(tǒng)的版本,安裝的系統(tǒng)包版本不同,每次系統(tǒng)升級都會創(chuàng)建一個新的BE作為最新操作系統(tǒng)版本的啟動環(huán)境。但是在Solaris文件系統(tǒng)/export目錄下的文件在各個BE中的內(nèi)容是相同的,不會因為啟動環(huán)境的不同而改變。在升級時最好能在當前主機的最高版本進行升級,從而最大程度避免由于依賴而產(chǎn)生的升級錯誤,而更換到主機最高版本BE需要重新啟動主機,為了實現(xiàn)整個過程的自動化,可以使系統(tǒng)在重新啟動后繼續(xù)完成系統(tǒng)升級等功能,則在/export目錄下創(chuàng)建隱藏目錄.stat,在.stat目錄下創(chuàng)建一個隱藏文件,該文件的文件名用于判斷當前主機的狀態(tài),而隱藏文件的內(nèi)容記錄主機當前的最高版本的BE名稱,設(shè)計stat-changer腳本的功能在于更改.stat目錄下的隱藏文件的名稱,具體名稱與主機狀態(tài)對應(yīng)為:.upgrade為主機為更新狀態(tài)、.basic_config為環(huán)境配置狀態(tài)、.finish為升級和配置完成狀態(tài)、.fail為升級失敗狀態(tài)。

圖1中SSH遠程安裝完成必要腳本后,運行stat-create腳本添加注冊時該主機的最高版本的BE名稱作為參數(shù),在/export目錄下創(chuàng)建隱藏目錄.stat,在.stat目錄下創(chuàng)建.finish文件,在文件中寫入作為參數(shù)傳遞來的主機最高版本的BE名稱。設(shè)置系統(tǒng)啟動后自動運行execution和stat-watch腳本。

當用戶通過web網(wǎng)頁為主機進行升級后,web服務(wù)器SSH公鑰登錄到主機并運行stat-changer腳本,stat-changer通過讀取.stat目錄下文件的內(nèi)容獲得主機最高版本的BE名稱,并且判斷最高版本的BE是否為當前運行的BE,如果不是則激活主機最高版本的BE,如果是最高版本則不做任何操作,修改.stat目錄下的文件名為.upgrade,需要升級主機操作系統(tǒng)重新啟動后,運行execution腳本,該腳本程序流程如圖2所示。

圖2中如果檢測文件名為.finish則不對主機做任何操作,如果是.upgrade則對主機執(zhí)行升級命令,升級完成后返回0則說明升級成功,修改文件名為.basic_config,并且修改文件內(nèi)容中的主機最高版本BE名稱為當前升級到的BE的名稱,重啟主機;如果升級失敗,則把文件名稱改為.fail重啟主機。重啟后主機會在最新版本的BE上啟動,檢測文件名為.basic_config則運行env-conf腳本對主機進行系統(tǒng)環(huán)境的配置,具體配置包括log session、創(chuàng)建用戶等基本內(nèi)容,本文不對該腳本內(nèi)容進行詳細介紹。如果文件名為.fail則向web服務(wù)器報告升級失敗狀態(tài),此時主機仍可以正常運行,只是在升級之前的版本上運行。

圖2 execution

2.2狀態(tài)跟蹤

stat-watch腳本運行進程開啟FIFO管道,實現(xiàn)與stat-changer、execution和env-conf腳本運行進程間的通信,由stat-watch進程對主機的運行狀態(tài)了進度進行監(jiān)控,對于不同腳本運行的進程,通過不同的協(xié)議與stat-watch進程進行通信,具體協(xié)議設(shè)置如下表,以stat-changer為例。

圖3 進度跟蹤框架

stat-changer、execution和env-conf腳本進程在腳本開始運行或結(jié)束運行時向有名管道中寫入表1中表示開始或結(jié)束的協(xié)議,退出協(xié)議的M值為退出狀態(tài)碼。在重要的進度狀態(tài)向管道中寫入表1中表示關(guān)鍵描述的協(xié)議,協(xié)議中的msg即為關(guān)鍵描述部分。當操作系統(tǒng)升級成功后,向管道寫入帶有最新的系統(tǒng)版本號的消息協(xié)議。

表1 stat-changer進度跟蹤消息協(xié)議

stat-watch腳本進程在發(fā)現(xiàn)有名管道中有數(shù)據(jù)時,讀取管道中的數(shù)據(jù),根據(jù)消息協(xié)議,解析消息的內(nèi)容來源,通過對協(xié)議的解析,了解消息內(nèi)容作用,在原有消息前加入“主機名”(注:同域中主機名一般不會出現(xiàn)重復,可以作為唯一識別)。對于需要web服務(wù)器更新數(shù)據(jù)庫的消息如帶有最新版本號的消息,在原有消息前加入“主機名|UPDATE|”協(xié)議頭。stat-watch腳本通過http協(xié)議POST請求web服務(wù)器用來接收消息的API,把消息內(nèi)容作為請求的內(nèi)容返回給web服務(wù)器。

web服務(wù)器接收到消息內(nèi)容,web服務(wù)器的消息處理API對消息內(nèi)容進行解析,同樣采用表1中的消息協(xié)議,對于不需要更新數(shù)據(jù)庫信息的消息,根據(jù)主機名在web服務(wù)器本地文件系統(tǒng)創(chuàng)建日志文件,根據(jù)SC、EXE、ENV來判斷出當前執(zhí)行的腳本和正在進行的操作。把返回的重要進度分塊存入日志文件。用于監(jiān)控的web頁面實時刷新,從日志文件中讀取處于升級狀態(tài)的主機的最新進度。由于進度信息存在了本地文件系統(tǒng),所有即使退出了用于監(jiān)控web頁面,之后再次打開數(shù)據(jù)依然保留。對于帶有UPDATE|的消息,web服務(wù)器根據(jù)其主機名更新主機在數(shù)據(jù)庫中的信息。如果消息中顯示的退出碼不是正常退出,則說明主機在升級過程中出現(xiàn)了異常,判斷是升級異常還是環(huán)境配置異常,如果是系統(tǒng)環(huán)境配置異常,用戶根據(jù)狀態(tài)信息可以查看是哪些環(huán)境在配置過程中出現(xiàn)了錯誤。如果是升級異常,則表示升級沒有成功,用戶同樣可以查看具體出現(xiàn)異常的位置了,用戶可以對出錯主機的操作系統(tǒng)進行檢測后再進行升級,或選擇手動升級。

3 總結(jié)

本文主要介紹了針對Solaris操作系統(tǒng)的主機通過web頁面對其進行升級和系統(tǒng)環(huán)境的配置過程,并且通過web頁面實時跟蹤進度的實現(xiàn)原理。本文涉及了Solaris操作系統(tǒng)、Shell腳本、SSH公鑰登錄、進程間通信、http協(xié)議、文件I/O、數(shù)據(jù)庫應(yīng)用等多種技術(shù),該設(shè)計理論得到了實踐的驗證。該實現(xiàn)原理不僅僅可以用在系統(tǒng)的升級,同時還可以用于系統(tǒng)的安裝和測試等方面,根據(jù)需要可以將更多的需求按照該原理集成到管理系統(tǒng)中,可拓展性強。由于Solaris操作系統(tǒng)是Unix-like的操作系統(tǒng),而本文介紹的設(shè)計理論幾乎沒涉及Solaris特殊功能,所以該理論設(shè)計同樣可以用于Linux或Unix等操作系統(tǒng),實現(xiàn)跨平臺運行。

[1] 喻剛, 王國生, 張磊“基于Solaris的綜合信息系統(tǒng)設(shè)計與實現(xiàn)”10.3969/j.issn.1006-6675-B.2012.01.029.

[2] 曹江華, 李巖麗“Solaris10系統(tǒng)管理”, 電子工業(yè)出版社978-7-121-09895-6, 2010.

[3] 李向群“solaris操作系統(tǒng)原理”, 機械出版社, 978-7-111-22641-3, 2008.

[4] SHEN yang “Webmin管理Sun Solaris 10 x86 Unix系統(tǒng)”10.3969/j.issn.1007-5348.2008.12.003.

[5] Janice Winsor著“SOLARIS系統(tǒng)管理員指南”機械工業(yè)出版社.

[6] Arnold Robbins/Nelson H. F. Beebe “SHELL腳本學習指南”機械工業(yè)出版社.

[7] 黃洋, 宋俊德, 宋美娜, 等. 基于本體與SSH架構(gòu)的異構(gòu)數(shù)據(jù)集成框架的研究[J]. 軟件, 2014, 35(11): 36-41.

[8] 王雪梅, 郭麗娜. 基于SSH的在線考試系統(tǒng)的設(shè)計與實現(xiàn)[J]. 軟件, 2015, 36(12): 132-136.

[9] 李可, 李昕. 基于Hadoop生態(tài)集群管理系統(tǒng)Ambari的研究與分析[J]. 軟件, 2016, 37(02): 93-97.

Remote Upgrade of Solaris and Progress Tracking Design

YU Yang (College of Communication and Signal Processing, Beijing University of Posts and Telecommunications, Haidian District, Beijing)

Modern enterprises has many unit server hosts , upgrading and configuring the operating system one by one will produce huge workload, one design which can achieve the integrated management of the host[9]becomes necessary. The current Solaris operating system which used in many enterprise servers, compared to windows server, has the advantages of high stability, perfect network, this article host provides a version upgrade solution for the Solaris operating system, mainly through web pages remote control Solaris host to upgrade its system environment and the configuration process, and through the web page to track the progress of real-time principle.

Solaris; Progress tracking; Integrated management; Upgrade

TP 311

A

10.3969/j.issn.1003-6970.2016.09.027

于洋,北京郵電大學研究生(1991-)

通訊聯(lián)系人: 于洋(1991-)

猜你喜歡
系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統(tǒng)
基于UG的發(fā)射箱自動化虛擬裝配系統(tǒng)開發(fā)
半沸制皂系統(tǒng)(下)
FAO系統(tǒng)特有功能分析及互聯(lián)互通探討
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統(tǒng) 德行天下
PLC在多段調(diào)速系統(tǒng)中的應(yīng)用
主站蜘蛛池模板: 99热国产这里只有精品9九| 日韩a级毛片| 亚洲精品国产综合99久久夜夜嗨| 欧美97欧美综合色伦图 | 性视频一区| 亚洲精品国产成人7777| 欧美成人一级| 亚洲中字无码AV电影在线观看| 日韩二区三区无| 在线免费无码视频| 一级成人a毛片免费播放| 国产成人艳妇AA视频在线| 亚洲国产中文精品va在线播放| 国产精品私拍99pans大尺度| 国产91av在线| 久久综合九九亚洲一区| 欧美日韩久久综合| 99热这里都是国产精品| 97国内精品久久久久不卡| 日本日韩欧美| 国产成人福利在线视老湿机| 制服丝袜在线视频香蕉| 成人伊人色一区二区三区| 91久久国产综合精品女同我| Jizz国产色系免费| 国产亚洲日韩av在线| 99精品免费在线| 中文毛片无遮挡播放免费| 日本一本在线视频| 久久黄色影院| 久久国产精品无码hdav| 日韩无码黄色| 亚洲乱伦视频| 成人综合在线观看| 亚洲成年人网| 久久青草热| 欧美另类图片视频无弹跳第一页| 四虎永久在线精品国产免费| www成人国产在线观看网站| 国产精品综合色区在线观看| 亚洲—日韩aV在线| 日本爱爱精品一区二区| 日韩在线视频网站| 亚洲成综合人影院在院播放| 国产成人AV综合久久| 亚洲精品免费网站| 国产在线精品人成导航| 亚洲日韩精品无码专区97| 亚洲男人天堂久久| 久久久亚洲色| 欧美成人综合视频| 国产精品久久自在自线观看| 亚洲视频四区| 91成人精品视频| 免费在线视频a| 99热在线只有精品| 国产精品成人一区二区| 亚洲无码37.| 亚洲一区二区精品无码久久久| 2020极品精品国产| 国产情精品嫩草影院88av| 欧美视频在线不卡| 亚洲αv毛片| 午夜少妇精品视频小电影| 国产一区自拍视频| 在线观看精品国产入口| 91在线精品免费免费播放| 国产精品视频a| 亚洲综合激情另类专区| 欧美黄色网站在线看| 成人福利在线观看| 伊人久久影视| 中文国产成人精品久久| 国产99视频精品免费视频7| 亚洲美女一区| 狠狠色噜噜狠狠狠狠色综合久| 人妻丝袜无码视频| 日韩a级片视频| 欧美一区福利| 在线无码av一区二区三区| 成人精品区| 久久夜色精品国产嚕嚕亚洲av|