虛擬應(yīng)用網(wǎng)絡(luò)VAN中的自動(dòng)化管理技術(shù)
NETCONF使用XML語言來完成配置過程數(shù)據(jù)和協(xié)議消息的交互,所有NETCONF的請求和應(yīng)答都使用XML描述?;赬ML數(shù)據(jù)交換,使它具有了強(qiáng)大的跨平臺(tái)通訊能力。同ISO/OSI一樣,NETCONF協(xié)議也采用了分層結(jié)構(gòu),NETCONF協(xié)議分成四層:內(nèi)容層、操作層、RPC層和通信協(xié)議層,如圖6所示:
圖6 NETCONF分層
通信協(xié)議層為NETCONF提供面向連接的、可靠的、順序的數(shù)據(jù)鏈路。NETCONF協(xié)議本身并不包含數(shù)據(jù)通訊協(xié)議,但定義了一系列推薦的數(shù)據(jù)通訊層協(xié)議,有console、SSH、BEEP、HTTPS、TELNET等。
RPC層提供了一個(gè)簡單的、傳輸協(xié)議無關(guān)的機(jī)制,通過使用和元素分別對操作層和內(nèi)容層的內(nèi)容進(jìn)行封裝。
操作層(Operations)定義了一系列在RPC中應(yīng)用的基本的原語操作,用來完成不同的網(wǎng)絡(luò)管理和監(jiān)控動(dòng)作,這些操作將組成NETCONF的基本能力。H3C Comware V7在此基礎(chǔ)上進(jìn)行協(xié)議操作擴(kuò)展,以提高協(xié)議操作的易用性。
內(nèi)容層定義管理對象的集合,可以是配置數(shù)據(jù)、狀態(tài)數(shù)據(jù)、統(tǒng)計(jì)信息等。
NETCONF協(xié)議定義了數(shù)據(jù)獲取的子樹過濾(Sub tree)機(jī)制,為用戶提供靈活的數(shù)據(jù)獲取過濾手段。Comware V7在此基礎(chǔ)上,擴(kuò)展了正則表達(dá)式過濾和簡單匹配過濾,進(jìn)一步增加了NETCONF數(shù)據(jù)過濾的操作易用性。
NETCONF協(xié)議支持向設(shè)備訂閱管理節(jié)點(diǎn)關(guān)心的系統(tǒng)日志事件。即,只要設(shè)備有符合訂閱條件的日志事件產(chǎn)生,設(shè)備就會(huì)將日志信息以NETCONF事件的方式通知給管理節(jié)點(diǎn)。通過事件訂閱機(jī)制,管理節(jié)點(diǎn)能夠?qū)崟r(shí)響應(yīng)設(shè)備的狀態(tài)變化,做出快速的反應(yīng),大大提高了管理節(jié)點(diǎn)的監(jiān)控能力。
NETCONF采用XML進(jìn)行管理者和代理者之間的數(shù)據(jù)傳輸和模塊表達(dá),并且兼顧監(jiān)控和故障管理,安全驗(yàn)證和訪問控制,可擴(kuò)展性強(qiáng)。它將配置數(shù)據(jù)和狀態(tài)數(shù)據(jù)分開,避免了操作時(shí)對不相關(guān)的數(shù)據(jù)進(jìn)行的多余處理,例如可以避免對狀態(tài)數(shù)據(jù)進(jìn)行的配置操作,進(jìn)一步提高了操作的效率。它不僅定義了多種取值和配置操作,還定義了錯(cuò)誤回滾等多種能力,并且支持能力的添加,具有較強(qiáng)的擴(kuò)展性,可滿足各種大型異構(gòu)網(wǎng)絡(luò)的配置需求。NETCONF規(guī)定必須采用安全的面向連接的通信傳輸方式,相比起SNMP采用UDP進(jìn)行傳輸?shù)姆绞絹碚f,進(jìn)一步加強(qiáng)了系統(tǒng)的安全性,同時(shí)也避免了UDP傳輸數(shù)據(jù)最大值的局限性。NETCONF解決了SNMP和CLI在配置等方面的先天性不足。同時(shí),通過將XML技術(shù)引入到網(wǎng)絡(luò)管理當(dāng)中來,能夠安全高效地處理大批量的數(shù)據(jù)傳輸。
3 自動(dòng)化腳本
TCL和python都是業(yè)界廣泛使用的腳本語言,網(wǎng)絡(luò)設(shè)備支持這些腳本語言,可以大大降低網(wǎng)絡(luò)管理員的學(xué)習(xí)成本,利用這些腳本語言,網(wǎng)絡(luò)管理員可以實(shí)現(xiàn)高度自動(dòng)化的管理。
網(wǎng)絡(luò)設(shè)備支持腳本語言通常都遵循如圖7的體系結(jié)構(gòu):
圖7 自動(dòng)化腳本架構(gòu)
用戶腳本由腳本解釋器解釋執(zhí)行,腳本解釋器內(nèi)嵌在網(wǎng)絡(luò)設(shè)備操作系統(tǒng)的內(nèi)部。TCL和Python都有各自獨(dú)立的腳本解釋器。除了用戶自行編寫的腳本,還可以使用業(yè)界開源或者第三方開發(fā)的腳本庫或者工具。腳本的解釋和執(zhí)行是在一個(gè)安全上下文內(nèi)進(jìn)行的,可以有效避免非授權(quán)的惡意攻擊。
在大型機(jī)構(gòu)里,大量的接入設(shè)備的配置一般都具有很大的相似性,但又不完全相同,不能通過簡單的復(fù)制粘貼copy其他設(shè)備的配置文件。業(yè)務(wù)有變更需要對網(wǎng)絡(luò)設(shè)備配置進(jìn)行修改時(shí),如果不使用自動(dòng)化技術(shù),需要逐一手工對每臺(tái)設(shè)備進(jìn)行配置,耗時(shí)非常長且容易出錯(cuò);而通過自動(dòng)化腳本可以對大批的設(shè)備進(jìn)行批量配置,既縮短了變更時(shí)間、出錯(cuò)的概率也大大降低。
4 嵌入式自動(dòng)化技術(shù)
嵌入式自動(dòng)化技術(shù)主要是對設(shè)備內(nèi)部事件進(jìn)行監(jiān)控,事件發(fā)生時(shí)執(zhí)行用戶定義策略。針對一些特定類型的故障,通過嵌入式自動(dòng)化技術(shù),維護(hù)人員可以預(yù)先定義故障處理的方法,一旦發(fā)生該類故障,設(shè)備自動(dòng)執(zhí)行預(yù)先定義好的故障處理策略,從而提高故障處理的效率。下文主要以H3C RTM(Real-Time event Manager)技術(shù)為例進(jìn)行說明。
RTM是一種嵌入式設(shè)備上內(nèi)嵌的、實(shí)時(shí)的策略驅(qū)動(dòng)的模型。用戶通過策略訂閱感興趣的實(shí)時(shí)事件。事件發(fā)生時(shí),執(zhí)行策略中制定的動(dòng)作。RTM可用來實(shí)時(shí)監(jiān)控設(shè)備,當(dāng)故障發(fā)生時(shí)能及時(shí)的收集第一現(xiàn)場信息,并采取故障診斷、故障恢復(fù)、匯總上報(bào)等措施。例如RTM與SCM聯(lián)動(dòng),監(jiān)控進(jìn)程的啟動(dòng)和停止,衡量系統(tǒng)的可靠性,并采取更靈活的策略。如圖8所示。
圖8 嵌入式自動(dòng)化技術(shù)架構(gòu)
RTM是一種開放的架構(gòu),可以很容易的將事件源添加到RTM框架中。RTM目前支持7種事件源。其它事件源也將會(huì)陸續(xù)添加到RTM框架中。
有匹配的事件發(fā)生時(shí),RTM可以執(zhí)行用戶配置的一個(gè)動(dòng)作或者多個(gè)動(dòng)作。RTM目前支持的動(dòng)作主要有:CLI、syslog、trap、switch-over、reboot等*。CLI是指執(zhí)行任一命令行;syslog和trap是向網(wǎng)管發(fā)送特定消息;switch-over可以實(shí)現(xiàn)主備自動(dòng)倒換;reboot可以實(shí)現(xiàn)對單獨(dú)板卡或者整個(gè)設(shè)備的重新啟動(dòng)。
RTM是一種開發(fā)的框架,很容易將動(dòng)作添加到RTM框架中。熟悉Comware CLI的用戶可以選擇使用Comsh script訂閱事件。RTM也支持完整的TCL8.5語法,并在此基礎(chǔ)上做了適當(dāng)擴(kuò)展,使用TCL可以編寫出更為靈活且功能強(qiáng)大的策略腳本。RTM框架對策略腳本執(zhí)行的安全性做了特別考慮。只有管理員或授權(quán)用戶才可注冊策略腳本,而且只有注冊的策略腳本才會(huì)生效運(yùn)行。策略腳本一旦被篡改,則不能再運(yùn)行。
5 結(jié)論
在網(wǎng)絡(luò)日益復(fù)雜的環(huán)境下,網(wǎng)絡(luò)管理承受著大量挑戰(zhàn)。通過“零配置”管理讓大量設(shè)備的開局能在短時(shí)間內(nèi)完成,使得新機(jī)房、新業(yè)務(wù)上線時(shí)間大大縮短。通過NETCONF網(wǎng)絡(luò)管理技術(shù),用戶可以使用API深度定制網(wǎng)絡(luò)管理系統(tǒng),將不同廠商的設(shè)備統(tǒng)一管理起來。自動(dòng)化腳本技術(shù)使得網(wǎng)絡(luò)管理腳本(甚至工具)共享成為可能,使一些低效的、繁瑣的、機(jī)械的網(wǎng)絡(luò)管理操作變成自動(dòng)化的高效操作。嵌入式自動(dòng)化技術(shù)使管理員能實(shí)時(shí)監(jiān)控設(shè)備,并在第一時(shí)間進(jìn)行信息收集和故障恢復(fù)嘗試,大大減少了網(wǎng)絡(luò)故障時(shí)間。
評論