李晨悅,盧榮平,趙秀琴,郭 朋,普波濤
(中國鐵路西安局集團(tuán)有限公司 信息技術(shù)所,西安 710000)
隨著鐵路運(yùn)輸信息化水平的快速提升,一些重要的信息系統(tǒng)的規(guī)模不斷擴(kuò)大,系統(tǒng)架構(gòu)日益復(fù)雜,所產(chǎn)生的數(shù)據(jù)呈海量增長,對業(yè)務(wù)連續(xù)性要求和運(yùn)行維護(hù)(簡稱:運(yùn)維)質(zhì)量的要求不斷提高。與此同時(shí),系統(tǒng)運(yùn)維變得越來越復(fù)雜,管理難度越來越大[1],這使運(yùn)維工作的難度加大,也對運(yùn)維工程師提出了更高的技術(shù)要求[2]。目前,中國鐵路西安局集團(tuán)有限公司(簡稱:西安局集團(tuán)公司)的信息系統(tǒng)運(yùn)維工程師在運(yùn)維檢修作業(yè)過程中,由于缺少統(tǒng)一的技術(shù)標(biāo)準(zhǔn)和作業(yè)規(guī)范,信息系統(tǒng)軟件運(yùn)維檢修質(zhì)量參差不齊的問題逐步凸顯[3]。
本文以西安局集團(tuán)公司信息系統(tǒng)運(yùn)維管理的短板為切入點(diǎn),結(jié)合中國國家鐵路集團(tuán)有限公司下發(fā)的《系統(tǒng)平臺(tái)安全配置基線規(guī)范》[4]和《鐵路信息系統(tǒng)運(yùn)行維護(hù)計(jì)劃管理規(guī)定》[5],圍繞信息系統(tǒng)軟件運(yùn)維檢修作業(yè)所涉及的軟件系統(tǒng)、操作系統(tǒng)、中間件、數(shù)據(jù)庫等4個(gè)方面,對運(yùn)維檢修作業(yè)項(xiàng)點(diǎn)、作業(yè)周期、作業(yè)標(biāo)準(zhǔn)、作業(yè)知識(shí)庫和巡檢報(bào)告機(jī)制進(jìn)行了研究,對運(yùn)維寫實(shí)進(jìn)行了規(guī)范,并建立系統(tǒng)應(yīng)用軟件檢修知識(shí)庫和專項(xiàng)巡檢技術(shù)報(bào)告機(jī)制,從而達(dá)到統(tǒng)一、規(guī)范系統(tǒng)應(yīng)用軟件運(yùn)維檢修作業(yè)標(biāo)準(zhǔn)的目的,從根本上抓實(shí)、抓牢、抓好日常運(yùn)維檢修工作,真正實(shí)現(xiàn)應(yīng)用軟件從“故障修”向“計(jì)劃修”的轉(zhuǎn)變。
根據(jù)文獻(xiàn)[5]中關(guān)于應(yīng)用軟件、中間件、操作系統(tǒng)和數(shù)據(jù)庫的運(yùn)維檢修要求,重新梳理并確定應(yīng)用軟件運(yùn)維檢修作業(yè)項(xiàng)點(diǎn)、作業(yè)周期和作業(yè)內(nèi)容,制定信息系統(tǒng)軟件運(yùn)維檢修作業(yè)技術(shù)規(guī)范,明確檢修項(xiàng)點(diǎn)和周期,定義作業(yè)規(guī)范,建立檢修知識(shí)庫,并給出檢修報(bào)告標(biāo)準(zhǔn)。將信息系統(tǒng)軟件運(yùn)維檢修作業(yè)項(xiàng)點(diǎn)修訂為應(yīng)用軟件、中間件、操作系統(tǒng)、數(shù)據(jù)安全等4個(gè)方面共計(jì)13個(gè)作業(yè)項(xiàng)點(diǎn)。
1.1.1 檢修項(xiàng)點(diǎn)及周期
(1)信息系統(tǒng)軟件檢修項(xiàng)點(diǎn)及周期
信息系統(tǒng)軟件的健康檢查維護(hù)周期不超過3天;安全加固維護(hù)周期不超過1月;主備系統(tǒng)一致性、可用性檢查維護(hù)周期不超過1月;技術(shù)文檔整理與更新維護(hù)周期不超過1月。
(2)中間件檢修項(xiàng)點(diǎn)及周期
中間件的健康檢查維護(hù)周期不超過1周;性能調(diào)優(yōu)與安全加固維護(hù)周期不超過1月;日志備份清理維護(hù)周期不超過1月。
(3)操作系統(tǒng)檢修項(xiàng)點(diǎn)及周期
操作系統(tǒng)的健康檢查維護(hù)周期不超過1周;性能調(diào)優(yōu)與安全加固維護(hù)周期不超過1月;日志備份清理維護(hù)周期不超過1月。
(4)數(shù)據(jù)庫軟件及數(shù)據(jù)安全檢修項(xiàng)點(diǎn)及周期
數(shù)據(jù)庫軟件的表空間檢查與數(shù)據(jù)備份清理維護(hù)周期不超過1月;附件等非結(jié)構(gòu)化數(shù)據(jù)備份維護(hù)周期不超過1月;健康分析與口令加固維護(hù)周期不超過1個(gè)季度。
1.1.2 作業(yè)項(xiàng)點(diǎn)
本文圍繞信息系統(tǒng)軟件、中間件、操作系統(tǒng)、數(shù)據(jù)安全等4個(gè)方面,共制定了13個(gè)作業(yè)項(xiàng)點(diǎn),明確了作業(yè)內(nèi)容和運(yùn)維計(jì)劃寫實(shí)規(guī)范。13個(gè)作業(yè)項(xiàng)點(diǎn),如表1所示。
表1 13個(gè)作業(yè)項(xiàng)點(diǎn)
在日常項(xiàng)目運(yùn)維中,由于運(yùn)維工程師的業(yè)務(wù)水平參次不齊,使最終的巡檢效果不盡相同。為了全面提升局運(yùn)維管理水平,本文對運(yùn)維檢修作業(yè)方法和步驟進(jìn)行了細(xì)化。參照文獻(xiàn)[4],并依據(jù)信息系統(tǒng)軟件運(yùn)維檢修作業(yè)項(xiàng)點(diǎn),建立信息系統(tǒng)軟件運(yùn)維檢修作業(yè)知識(shí)庫(簡稱:知識(shí)庫),從而達(dá)到規(guī)范和統(tǒng)一應(yīng)用軟件運(yùn)維檢修作業(yè)標(biāo)準(zhǔn)的目的。知識(shí)庫的體系如圖1所示。
圖1 知識(shí)庫體系
知識(shí)庫主要包含中間件平臺(tái)軟件(WebLogic、Tomcat)、服務(wù)器、數(shù)據(jù)庫等軟件和設(shè)備的健康檢查、性能監(jiān)控與調(diào)優(yōu)、日志清理、資源占用情況、數(shù)據(jù)備份、表空間、數(shù)據(jù)表、索引等對象的空間占用情況,以及數(shù)據(jù)庫空間碎片回收、主備服務(wù)器之間高效同步應(yīng)用軟件程序包和附件等非結(jié)構(gòu)化數(shù)據(jù)的檢查方法和執(zhí)行腳本,包括14個(gè)大類、34個(gè)作業(yè)項(xiàng)點(diǎn)的指導(dǎo)說明,以及11個(gè)可執(zhí)行腳本和操作系統(tǒng)資源監(jiān)控程序。
1.2.1 中間件巡檢知識(shí)庫
中間件巡檢知識(shí)庫針對WebLogic、Tomcat 等中間件平臺(tái)軟件的日常維護(hù)、監(jiān)控和巡檢工作的技術(shù)指導(dǎo),可以有效地提高運(yùn)維工程師對中間件事件的分析和解決能力,確保中間件持續(xù)穩(wěn)定運(yùn)行。
中間件巡檢知識(shí)庫描述了如何對WebLogic的性能調(diào)優(yōu),以及如何使用Probe對Tomcat進(jìn)行監(jiān)控和健康檢查。具體內(nèi)容如下。
在對WebLogic進(jìn)行性能調(diào)優(yōu)的過程中,運(yùn)維工程師要注意備份“config.xml”“startManaged WebLogic.cmd”等文件(Unix 和Linux 操作系統(tǒng)),以及“startManagedWebLogic.sh”文件(Windows操作系統(tǒng))。
Lambda Probe(曾用名為Tomcat Probe)是一款實(shí)時(shí)監(jiān)控和管理Apache Tomcat 實(shí)例的基本工具,幾乎擁有Tomcat Manager 的所有功能,使應(yīng)用程序、數(shù)據(jù)源、發(fā)布、日志、線程、集群、系統(tǒng)信息、狀態(tài)、連接器狀態(tài)等Tomcat 功能對開發(fā)者和管理者更加透明。
在如圖2所示的LambdaProbe應(yīng)用程序卡片中,可以從不同角度查看項(xiàng)目的健康情況。例如,對于服務(wù)器的健康狀況,LambdaProbe可以從“應(yīng)用程序”“數(shù)據(jù)源”“發(fā)布”“日志”“線程”“集群”“系統(tǒng)信息”“連接器”“證書”“快速檢查”等選項(xiàng)進(jìn)行查看。運(yùn)維工程師在“日志”選項(xiàng)中可以查看具體的日志信息;在“線程”選項(xiàng)中可以監(jiān)控所有線程的狀態(tài);在“系統(tǒng)信息”選項(xiàng)中可以查看概況、內(nèi)存使用、操作系統(tǒng)等信息;在“連接器”選項(xiàng)中可以監(jiān)控并統(tǒng)計(jì)Tomcat 連接情況;在“快速檢查”選項(xiàng)中可快速查看數(shù)據(jù)源、內(nèi)存等。
圖2 LambdaProbe應(yīng)用程序卡片
Tomcat 內(nèi)存優(yōu)化是對 Java 虛擬機(jī)(JVM,Java Virtual Machine)進(jìn)行調(diào)優(yōu)。運(yùn)維工程師在修改文件之前,需要先備份文件(Linux 操作系統(tǒng)的文件路徑為CATALINAHOME/bin/catalina.sh,Windows操 作系統(tǒng)的文件路徑為CATALINAHOME/bin/catalina.sh,Windows操作系統(tǒng)文件路徑為CATALINA_HOME/bin/catalina.bat);修改后,需要重啟設(shè)備,以使文件生效。以Windows操作 系統(tǒng)為例,當(dāng)修改“TOMCAT_HOME/bin/catalina.bat”時(shí),可以在其前面加入“set JAVA_OPTS=-XX:PermSize=64M-XX:MaxPermSize=128M-Xms512M-Xmx1024M”,其中,Xms表示JVM 初始化的最小內(nèi)存;Xmx 表示JVM可使用的最大內(nèi)存;XX:PermSize表示內(nèi)存的永久保留區(qū)域;XX:MaxPermSize 表示內(nèi)存的最大永久保留區(qū)域。
1.2.2 服務(wù)器巡檢知識(shí)庫
Windows、Linux 和Unix 操作系統(tǒng)是Web服務(wù)器比較常用的操作系統(tǒng),其中,Linux 操作系統(tǒng)的安全性能最高,對運(yùn)維工程師的要求也最高,因此該部分運(yùn)維內(nèi)容也納入知識(shí)庫的范疇。服務(wù)器巡檢知識(shí)庫涵蓋如何檢查服務(wù)器的資源占用情況(包括CPU、內(nèi)存、分區(qū)空間、分區(qū)節(jié)點(diǎn)),如 何 在Linux主、備服務(wù)器間高效同步應(yīng)用軟件程序包和附件等非結(jié)構(gòu)化數(shù)據(jù)。
在實(shí)際應(yīng)用中,有的應(yīng)用項(xiàng)目部署在多臺(tái)服務(wù)器。為了減輕運(yùn)維工程師日常監(jiān)控的工作量,搭載Linux 操作系統(tǒng)的主備服務(wù)器需要對應(yīng)用軟件程序包和附件等非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行同步。因此,本文設(shè)計(jì)了Windows、Linux、AIX、HP-UNIX、Solaris等操作系統(tǒng)的自動(dòng)化運(yùn)行腳本,將采集的監(jiān)控日志通過文件傳輸協(xié)議(FTP,F(xiàn)ile Transfer Protocol)上傳至專用的日志文件服務(wù)器。運(yùn)維工程師只需要查看相應(yīng)服務(wù)器的監(jiān)控日志文件,即可判斷服務(wù)器的運(yùn)行狀況,進(jìn)而做出處置方案[6-8]。集中監(jiān)控方案如圖3所示。
圖3 集中監(jiān)控方案
1.2.3 數(shù)據(jù)庫巡檢知識(shí)庫
作為信息系統(tǒng)的運(yùn)維工程師,需要在日常運(yùn)維工作中定期進(jìn)行數(shù)據(jù)備份,監(jiān)測與分析數(shù)據(jù)大表、大對象、數(shù)據(jù)庫空間碎片回收等工作。本文在數(shù)據(jù)庫巡檢知識(shí)庫中對這些工作進(jìn)行歸納,對操作步驟中的重點(diǎn)和難點(diǎn)進(jìn)行詳細(xì)描述。比如,在對數(shù)據(jù)大表、大對象的監(jiān)測與分析中,建立了檢查數(shù)據(jù)庫用戶數(shù)據(jù)表、索引等對象的空間占用情況的運(yùn)行腳本。
例如,將數(shù)據(jù)庫用戶下的數(shù)據(jù)表根據(jù)其占用空間情況由大到小排序,取前15個(gè)表信息的運(yùn)行腳本:“select*from(selectsegment_type,segment_name,bytes/1 024/1024mbfromuser_segmentswheresegment_type='TA BLE'orderby mbdesc)whererownum<16”。通過對腳本的打包運(yùn)行,運(yùn)維工程師可以快速掌握數(shù)據(jù)庫當(dāng)前的運(yùn)行情況,及時(shí)處理數(shù)據(jù)庫的報(bào)警和異常信息,以保障數(shù)據(jù)庫的安全穩(wěn)定運(yùn)行。
為落實(shí)西安局集團(tuán)公司信息系統(tǒng)春季和秋季檢查等專項(xiàng)工作,嚴(yán)格對照信息系統(tǒng)軟件運(yùn)維檢修作業(yè)項(xiàng)點(diǎn),建立涵蓋運(yùn)維檢修作業(yè)全要素的《信息系統(tǒng)軟件專項(xiàng)巡檢技術(shù)報(bào)告》,形成信息系統(tǒng)軟件專項(xiàng)巡檢技術(shù)報(bào)告機(jī)制[9]。
《信息系統(tǒng)軟件專項(xiàng)巡檢技術(shù)報(bào)告》給出了巡檢的統(tǒng)一標(biāo)準(zhǔn),包含信息系統(tǒng)軟件、中間件、服務(wù)器、數(shù)據(jù)庫等4個(gè)方面的檢查和處理結(jié)果。
運(yùn)維工程師可以使用編寫好的可執(zhí)行程序,隨時(shí)檢查系統(tǒng)狀態(tài)、數(shù)據(jù)庫使用情況等相關(guān)信息。
當(dāng)運(yùn)維工程師每次按照運(yùn)維檢修技術(shù)規(guī)范完成信息系統(tǒng)巡檢時(shí),按統(tǒng)一格式填寫《信息系統(tǒng)軟件專項(xiàng)巡檢技術(shù)報(bào)告》,實(shí)現(xiàn)巡檢規(guī)范化。
本文結(jié)合鐵路企業(yè)信息系統(tǒng)運(yùn)維管理現(xiàn)狀,詳細(xì)介紹了信息系統(tǒng)軟件運(yùn)維檢修作業(yè)的技術(shù)規(guī)范、知識(shí)庫、巡檢技術(shù)報(bào)告這3項(xiàng)研究成果。目前,該研究成果已經(jīng)正式在西安局集團(tuán)公司推廣應(yīng)用,顯著提升了信息系統(tǒng)的運(yùn)維質(zhì)量。