日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

《Cisco IOS XR技术精要》一4.4 理解二级提交模型

發(fā)布時(shí)間:2025/3/21 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《Cisco IOS XR技术精要》一4.4 理解二级提交模型 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本節(jié)書摘來自異步社區(qū)《Cisco IOS XR技術(shù)精要》一書中的第4章,第4.4節(jié),作者 【美】Mobeen Tahir , Mark Ghattas , Dawit Birhanu , Syed Natif Nawaz,更多章節(jié)內(nèi)容可以訪問云棲社區(qū)“異步社區(qū)”公眾號(hào)查看

4.4 理解二級(jí)提交模型

Cisco IOS XR技術(shù)精要
Cisco IOS XR中使用了二級(jí)提交模型的思想。在單級(jí)提交模型中,輸入到路由器中的每條命令都會(huì)立刻生效。這種配置模型存在一些弊端,首先是用戶無法對(duì)輸入的命令進(jìn)行審核確認(rèn),如果不小心輸入了錯(cuò)誤的命令,錯(cuò)誤命令將會(huì)當(dāng)即生效,造成業(yè)務(wù)影響。其次是當(dāng)用戶使用腳本或整段配置“刷”配置時(shí),可能大多數(shù)的配置都是重復(fù)或無用的配置,而且,重復(fù)配置可能會(huì)導(dǎo)致系統(tǒng)處于不穩(wěn)定的狀態(tài)。

在二級(jí)提交模型中。在一級(jí)配置階段,用戶輸入的配置放入target config中,而不會(huì)影響路由器的running config。在這一階段,系統(tǒng)可以檢查命令的語法,用戶可以檢驗(yàn)配置的命令是否正確,從而保證target config的正確性。在二級(jí)配置階段(又叫提交[commit]階段)中,所有target config將被提交,合并成為路由器running config的一部分。

二級(jí)提交進(jìn)程有助于應(yīng)用大量配置;并幫助完成大量配置生效后的后續(xù)操作如命令驗(yàn)證、檢查點(diǎn)、日志等。二級(jí)提交進(jìn)程減少了進(jìn)程間通信(IPC)的負(fù)載,從而提高了系統(tǒng)性能。

圖4-5說明了二級(jí)配置模型的結(jié)構(gòu)。



4.4.1 生成target config

實(shí)際上,running config中的配置是用戶輸入的target config多次累積下來的結(jié)果。換句話說,用戶想要對(duì)當(dāng)前配置做修改所執(zhí)行的命令會(huì)存放在target config中。每個(gè)用戶都有自己唯一的target config,對(duì)其他用戶不可見。不過,基于每個(gè)用戶的target config實(shí)例生成的路由器running config,對(duì)每個(gè)用戶都是可見的。

用戶可以在不影響當(dāng)前路由器配置的條件下,查看或修改target config,或是將target config以文件形式備份出來1,IOS XR中的running config是無法直接編輯的。所有對(duì)running config的配置變更都必須將target config提交之后才能生效。

當(dāng)用戶進(jìn)入配置模式之后,系統(tǒng)會(huì)隱式地生成一個(gè)唯一的target config。這個(gè)target config不是running config的一個(gè)副本,而是在running config基礎(chǔ)上用戶新配置的、仍未提交的配置。用戶可以通過show configuration命令查看當(dāng)前會(huì)話的target config。還可以使用show configuration merge命令查看當(dāng)前會(huì)話的target config與running config合并后的結(jié)果。

例4-3給出了生成target config所必須的步驟。

例4-3 生成target config



4.4.2 commit操作

提交(commit)操作是指使用commit命令提交target config并生成新running config的過程,如圖4-6所示。默認(rèn)情況下的commit命令是不對(duì)配置做任何檢驗(yàn)的,換句話說,commit操作可能會(huì)因?yàn)榕渲谜Z義的問題導(dǎo)致提交失敗。



每次成功commit操作將觸發(fā)以下動(dòng)作。

1.執(zhí)行commit之前,首先會(huì)鎖住配置會(huì)話。

2.將配置變更保存到commit變更數(shù)據(jù)庫中,創(chuàng)建回退點(diǎn)。

3.向配置歷史中添加commit變更條目。

4.使用Syslog生成配置變更通告。

5.最后將target config合并到running config中,commit操作完成。

6.解鎖配置會(huì)話。

每次輸入并提交新配置后,Cisco IOS XR會(huì)向配置歷史中添加一條commit變更條目,并使用Syslog生成一條配置變更通告,如例4-4所示。

例4-4 Commit階段的日志通告信息



commit操作默認(rèn)會(huì)分配一份commit變更ID,允許用戶基于此ID查看配置變更細(xì)節(jié)。例4-4中的1000000057就是最后一次配置commit所生成的commit變更ID。通過這一ID,可以查看某次commit操作中所執(zhí)行的配置變更。

例4-5中,使用命令show configuration commit changes < commit-change-id >基于ID查看例4-4中commit的配置變更。

例4-5 查看例4-4中commit操作的配置變更



target config的提交方式既可以是“一意孤行”的,也可以是“盡力而為”的。前文介紹過,使用“一意孤行”這種默認(rèn)commit方式(commit命令不加任何選項(xiàng)),會(huì)將所有變更的配置一并提交上去。如果某條命令驗(yàn)證失敗,commit操作將會(huì)回退,并向配置代理返回一條錯(cuò)誤消息。

使用“盡力而為”方式(commit best-effort),系統(tǒng)僅會(huì)將驗(yàn)證通過的配置變更提交。當(dāng)然,如果某條命令驗(yàn)證失敗,也會(huì)向配置代理返回一條錯(cuò)誤消息,不過commit操作不會(huì)回退。用戶可以使用許多commit命令選項(xiàng),如例4-6所示。

例4-6 commit操作可用選項(xiàng)



commit操作階段,配置管理器會(huì)在后臺(tái)鎖住配置會(huì)話,以防其他配置代理對(duì)配置進(jìn)行變更。路由器會(huì)在commit操作結(jié)束后,對(duì)running config配置會(huì)話解鎖。關(guān)于commit命令的可用選項(xiàng)后文可能不會(huì)一一進(jìn)行介紹,更多命令配置信息請(qǐng)登錄Cisco.com進(jìn)行查詢。

例4-7給出了commit操作中comment選項(xiàng)(對(duì)配置變更添加描述信息)和label選項(xiàng)(為commit手動(dòng)分配一個(gè)ID)的用法。這兩個(gè)選項(xiàng)可使回退操作更加方便 2。

例4-7 使用label和comment選項(xiàng)的commit操作



1.commit操作confirmed選項(xiàng)
命令commit confirmed可使target config試驗(yàn)性地提交,而不是作為永久配置。用戶可以在commit confirmed后添加一個(gè)回退計(jì)時(shí)器,在配置提交一段時(shí)間后,使系統(tǒng)配置自動(dòng)回退到提交前的系統(tǒng)狀態(tài)。也可以在回退計(jì)時(shí)器到期之前,再次輸入commit confirmed,將配置提交成永久配置。配置模式支持confirmed提交操作,回退計(jì)時(shí)器單位可以是秒或分鐘。admin模式下不支持confirmed提交。

在例4-8中,用戶將系統(tǒng)主機(jī)名臨時(shí)從R1修改成CRS1-3,持續(xù)時(shí)間30秒。30秒后,配置將自動(dòng)回退到先前的主機(jī)名R1。

例4-8 使用confirmed選項(xiàng)的commit操作



2.commit失敗
配置可能會(huì)由于配置語義驗(yàn)證不通過而導(dǎo)致配置提交失敗。如果在默認(rèn)提交操作中發(fā)生提交失敗,target config不會(huì)應(yīng)用到running config上。在IOS XR中,提交失敗的信息可以通過show configuration failed命令查看,如例4-9所示。通過命令輸入可以查看提交失敗的原因及應(yīng)對(duì)辦法(如提示的話)。

例4-9 未定義class sample_class所導(dǎo)致的提交失敗



3.啟動(dòng)階段的配置失敗
在系統(tǒng)啟動(dòng)時(shí),用戶可能也會(huì)遇到一些配置失敗的情況。尤其是在對(duì)路由器的IOS XR軟件版本進(jìn)行升級(jí)或降級(jí)操作之后。

可能的配置失敗有以下幾種原因。

語法錯(cuò)誤(Syntax Errors):語法錯(cuò)誤是由parser(分析程序)檢驗(yàn)出來的,會(huì)提示CLI命令不支持。這種錯(cuò)誤通常是由于命令輸入錯(cuò)誤或是當(dāng)前的軟件版本支持不支持該命令所導(dǎo)致。
語義錯(cuò)誤(Semantic Errors):語義錯(cuò)誤是啟動(dòng)階段由系統(tǒng)后臺(tái)檢驗(yàn)出來的。例4-9就是語義錯(cuò)誤的一例。語義錯(cuò)誤是某個(gè)配置組件不能正常工作所導(dǎo)致的,常見原因是配置不一致或配置元素?zé)o法調(diào)用。
應(yīng)用錯(cuò)誤(Apply Errors):當(dāng)配置通過了語義檢查并確認(rèn)成為running config的一部分之后,有可能后臺(tái)組件無法更新其工作狀態(tài),這種問題被稱為應(yīng)用錯(cuò)誤。
用戶可以使用命令show configuration failed startup來查看啟動(dòng)階段的失敗配置,如例4-10所示。

例4-10 啟動(dòng)階段的配置失敗



1譯者注:備份target config的命令為save configuration device:directory-path,或showconfiguration | file filename。
2譯者注:IOS XR中有一種向配置文件中添加注釋(comment)的方法,用法是在配置之前先輸入一行以感嘆號(hào)!開頭的注釋信息,例如:
RP/0/RP0/CPU0:CRS(config)#!this is a test configuration-20130512-by-powerfoo
RP/0/RP0/CPU0:CRS(config)#hostname TEST
RP/0/RP0/CPU0:CRS(config)#commit
提交配置后,命令show run可以看到添加的注釋信息。盡管注釋需要commit才能生效,但這個(gè)注釋信息是不會(huì)顯示在show configuration commit list detail命令中的,請(qǐng)讀者區(qū)分這個(gè)“配置注釋”與本節(jié)介紹的“commit注釋”的區(qū)別。此外,刪除配置注釋的命令為clear comment,而不是傳統(tǒng)的no方式。

總結(jié)

以上是生活随笔為你收集整理的《Cisco IOS XR技术精要》一4.4 理解二级提交模型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。