中國電信股份有限公司江蘇分公司企業(yè)信息化部 李 彧
開源IT資產(chǎn)管理框架研究與應(yīng)用
中國電信股份有限公司江蘇分公司企業(yè)信息化部 李 彧
基于開源的Web服務(wù)器完備環(huán)境LAMP(Linux,Apache,MySQL,PHP/Perl),研究開源庫存和資產(chǎn)管理框架OCS Inventory NG(開放的計算機和軟件庫存下一代,簡稱OCSNG)與GLPI(免費計算機管理公園)的集成及其應(yīng)用。OCSNG發(fā)現(xiàn)并更新計算機的軟硬件清單信息,并可同步到GLPI;GLPI提供全面的IT(信息技術(shù))資源管理接口,建立庫存資產(chǎn)數(shù)據(jù)庫并全面管理IT資產(chǎn)。在此過程中合理利用開源,吸收專業(yè)領(lǐng)域最新發(fā)展元素,有效節(jié)省企業(yè)IT 投資成本。
資產(chǎn)管理;開源;集成
信息化建設(shè)投資的大規(guī)模增長,如何對企業(yè)IT(信息技術(shù))資產(chǎn)管理這一課題雖老生常談但又頗為棘手。針對目前IT資產(chǎn)管理現(xiàn)狀,考量各種開源IT庫存和資產(chǎn)管理框架并分析其異同,基于開源的LAMP(Linux,Apache,MySQL,PHP/Perl),通過重點剖析OCS Inventory NG(開放的計算機和軟件庫存下一代,以下簡稱OCSNG)和GLPI(免費計算機管理公園)的工作原理和集成過程,積極探索出了一條高效IT設(shè)備資產(chǎn)盤點管理的新思路、新模式,實現(xiàn)IT資產(chǎn)的全生命周期閉環(huán)管理及價值動態(tài)管理。
目前開源的IT資產(chǎn)管理軟件有法國的OCSNG、Fusion Inventory、GLPI及希臘的ITDB(入侵容忍數(shù)據(jù)庫)等。OCSNG和GLPI分別始創(chuàng)于2001年和2002年,歷史比較悠久,因此文檔支持較好,且兩者集成度較高。上述各個框架均基于LAMP進行搭建部署,它們的功能特性比較如表 1 所示。
LAMP是一個自由的、開源的軟件解決方案棧。LAMP指的是Linux(操作系統(tǒng)),Apache HTTP Web服務(wù)器,MySQL(數(shù)據(jù)庫軟件,但現(xiàn)在有時指MariaDB),最初的PHP(超級文本預(yù)處理語言,但現(xiàn)在有時指Perl或Python及它們的組合)的第一個字母,借此可建立一個可行通用的Web服務(wù)器完備環(huán)境[1]。
OCSNG是一個跨平臺的、開源的庫存和資產(chǎn)管理解決方案。它提供了豐富多樣的特性功能如相關(guān)的庫存信息、強大的部署系統(tǒng)、Web管理控制臺、多操作系統(tǒng)支持、三層體系架構(gòu)、Web service、插件支持、網(wǎng)絡(luò)掃描、GLPI同步等,可滿足大大小小組織使用多達成千上萬臺計算機的業(yè)務(wù)需求。但是用好這個庫存解決方案需要大量的技能[2]。OCS NG的體系架構(gòu)見圖 1。
GLPI是一個信息資源管理器,提供有一個功能全面的IT資管理接口,并建立一個資產(chǎn)清單(計算機、軟件等)數(shù)據(jù)庫。其增強功能可簡化管理員日常事務(wù)性工作,如帶有郵件提醒功能的工作跟蹤系統(tǒng),提供方法生成一個關(guān)于網(wǎng)絡(luò)拓撲的基本信息的數(shù)據(jù)庫[3]。它的主要功能包括:
1)所有技術(shù)資源的精確庫存。資產(chǎn)的所有屬性將被存放到一個數(shù)據(jù)庫中去。
2)維護操作和綁定程序的管理和歷史。這是一個動態(tài)的應(yīng)用,它直連可以向技術(shù)人員發(fā)出請求的用戶。因此,有一接口向后者授權(quán),如果需要的話則阻止該維護服務(wù),并檢索該問題是否在他們此前訪問過的技術(shù)資源列表之中碰到過。
OCSNG和GLPI集成后,可搭建出一個可自動更新計算機配置、許可證管理以及幫助臺等的強大的庫存和資產(chǎn)管理軟件。GLPI開發(fā)了一個允許OCSNG和GLPI數(shù)據(jù)庫之間自動同步的“OCSNG mode”。該功能在GLPI的Web控制臺上以本地方式實現(xiàn)[4]。
我們將在云平臺的虛擬機上構(gòu)建基于OCSNG-GLPI開源的IT庫存、資產(chǎn)管理系統(tǒng)。首先要搭建LAMP環(huán)境,然后安裝OCSNG管理服務(wù)器和客戶端代理,最后安裝GLPI并配置GLPI和OCSNG數(shù)據(jù)庫間自動同步模式“OCSNG mode”。
5.1 編譯部署LAMP基礎(chǔ)環(huán)境
因虛擬機操作系統(tǒng)為紅帽企業(yè)版5.5(Tikanga)及其默認安裝的Perl版本5.8.8已符合要求,因此我們僅需升級AMP(Apache,MySQL,PHP)。其中Apache版本為httpd-2.2.23,mod_perl-2.0.7;MySQL為5.5.28,且InnoDB引擎處于激活狀態(tài);PHP為5.4.8,zip壓縮包和GD庫(圖形的擴展庫)支持啟用。
5.2 部署OCSNG管理服務(wù)器及代理
部署OCSNG服務(wù)器和客戶端代理之前,我們有必要了解它們之間的交互過程,其工作原理如圖 2 所示。
OCSNG服務(wù)器接收代理以XML(可擴展標(biāo)記語言)格式發(fā)送的庫存,將數(shù)據(jù)存儲于MySQL數(shù)據(jù)庫。代理聯(lián)系服務(wù)器,而不是相反。在這個過程中服務(wù)器只監(jiān)聽。代理和服務(wù)器之間以HTTP和/或HTTPS(安全超文本傳輸協(xié)議)方式進行交換。軟件部署和SNMP(簡單網(wǎng)絡(luò)管理協(xié)議)掃描僅是HTTPS方式。客戶端代理至服務(wù)器流向的數(shù)據(jù)傳輸模式為:原始數(shù)據(jù)→XML格式化→發(fā)送到HTTP(S)://OCSNG server/ocsinventory→mod_perl快速處理→數(shù)據(jù)庫MySQL。
由上述交互過程可知,無論是管理服務(wù)器還是客戶端代理,部署上有一定的前提條件,需要我們部署時加以注意。
5.2.1 部署OCSNG管理服務(wù)器
OCSNG管理服務(wù)器由4個主要部分組成:數(shù)據(jù)庫服務(wù)器存儲庫存信息(MySQL),通信服務(wù)器負責(zé)處理數(shù)據(jù)庫服務(wù)器和代理之間的HTTP通信(Apache,Perl和mod_perl),管理控制臺允許管理員使用自己喜歡的瀏覽器查詢數(shù)據(jù)庫服務(wù)器(Apache,PHP),部署服務(wù)器存儲所有的軟件包部署配置〔Apache,SSL(安全套接層)〕。
因庫存的計算機數(shù)量遠低于10 000臺,我們在同一個虛擬機上安裝上述4個組件。安裝前須檢查所依賴的Perl模塊。
5.2.2 部署OCSNG客戶端代理
OCSNG客戶端代理目前支持Unix、Windows、MAC OS X等,目前最高版本為2.0.5。下面以O(shè)csinventory-Unix-Agent-2.0.5在RHEL5的編譯為例進行說明其部署過程。Unix客戶端代理僅能本地安裝。在安裝時如已選擇HTTP inventory方法,則可以選擇激活自動更新代理。安裝前同樣需檢查所依賴的Perl模塊。
5.3 部署GLPI及啟用OCSNG mode模式
5.3.1 部署GLPI
GLPI部署之前需創(chuàng)建GLPI數(shù)據(jù)庫,然后將安裝包解壓釋放在Apache的Web根目錄如/var/www或/var/www/html,并授予可寫權(quán)限給子目錄/files及/config。
訪問http://glpiserver/glpi/即可進行界面化配置GLPI,登錄后大致操作步驟如下:選擇語言如中文→接受許可→檢查先決條件→輸入數(shù)據(jù)庫連接參數(shù)→選擇glpi數(shù)據(jù)庫→完成。
5.3.2 啟用OCSNG mode
登錄GLPI進入主界面后,導(dǎo)航至:主頁>設(shè)置>常規(guī),在“資產(chǎn)清單”頁的enable the OCSNG mode的下拉列表中選擇“是”來激活OCSNG mode。
然后進入OCSNG mode(主頁>設(shè)置>OCSNG mode)設(shè)置GLPI和OCSNG同步的數(shù)據(jù)庫連接參數(shù),導(dǎo)入選項,常規(guī)信息等。測試GLPI與OCSNG數(shù)據(jù)庫的連接成功后,就可以從OCSNG導(dǎo)入或同步計算機庫存信息(主頁>工具>OCSNG)。
設(shè)備生命周期不外乎:新設(shè)備被加入庫存→設(shè)備因故障而被替換→舊設(shè)備退役下線。OCSNG和GLPI集成后,可以很好地實現(xiàn)IT資源的生命周期管理。
6.1 新設(shè)備入庫上線
新設(shè)備入庫上線時,通過客戶端代理,OCSNG可自動檢測新計算機。GLPI與OCSNG的集成相當(dāng)不錯,GLPI能夠從OCSNG導(dǎo)入設(shè)備的大部分技術(shù)特性。此外還可以識別如下信息。管理信息:用戶、技術(shù)聯(lián)系人、位置、庫存編號等;網(wǎng)絡(luò)信息:網(wǎng)絡(luò)、端口、工作區(qū)插座(work area outlet)、VLAN(虛擬局域網(wǎng));財務(wù)信息:收購日期、擔(dān)保信息、攤銷、……;合同信息:相關(guān)的支持合同。
6.2 替換
機器替換將被OCSNG的重復(fù)檢測機制自動檢測到。其將會檢查如下參數(shù):計算機名稱、序列號、MAC地址。當(dāng)檢測到一個機器復(fù)本,它將提出一個合并動作。GLPI備份舊計算機實體后,在下一次OCSNG的同步后其將會重新創(chuàng)建一個新的計算機條目。
6.3 生命周期結(jié)束
在計算機生命周期結(jié)束后,OCSNG會停止任何的庫存信息的接收。然而,GLPI不會自動從庫存數(shù)據(jù)庫刪除計算機實體。因此仍然可以在GLPI查詢到已刪除機器的記錄。
江蘇電信公司在開源Web服務(wù)器完備環(huán)境LAMP上,通過開源的庫存和資產(chǎn)管理框架OCSNG和GLPI的集成,驗證可實現(xiàn)IT資產(chǎn)的生命周期閉環(huán)管理:新設(shè)備入庫上線,設(shè)備因故障被替換,舊設(shè)備退役下線。盡管在開源部署過程中面臨文檔支持不夠、知識面要求廣、技術(shù)更新速度快等諸多問題,但充分合理利用開源為我所用,可吸收專業(yè)領(lǐng)域最新發(fā)展元素,有效節(jié)省企業(yè)IT投資成本,能夠積極探索出了一條高效的IT設(shè)備資產(chǎn)盤點管理的新思路、新模式。
[1] LEE James, WARE Brent. Open source Web development with LAMP: Using Linux, Apache, MySQL, Perl, and PHP[M]. [S.l.]: Addison-Wesley Professional, 2002.
[2] ANTAL Barzan Tony. It inventory and resource management with OCS inventory NG 1.02[M]. [S.l.]: Packt Publishing, 2010.
[3] The GLPI project[EB/OL]. [2012-11-30]. http://www.glpi-project. org/spip.php?article43.
[4] OCS inventory NG with GLPI[EB/OL]. [2012-11-30]. http://www. ocsinventory-ng.org/en/about/features/ocsng-glpi.html.