Cumulus Linux 4.4 是具有 NVIDIA 用戶(hù)體驗(yàn)( NVUE )的第一個(gè)版本,這是 Cumulus Linux 的全新 CLI 。對(duì)新的網(wǎng)絡(luò) CLI 的興奮度和一個(gè)新的 56k 調(diào)制解調(diào)器是相同的。使 NVUE 與眾不同的不僅僅是它是一個(gè)新的 CLI ,而是它所基于的原則使其獨(dú)一無(wú)二。在其核心, NVUE 創(chuàng)建了 Cumulus Linux 的完整對(duì)象模型,實(shí)現(xiàn)了高級(jí)可編程性、可擴(kuò)展性和可用性。
什么是對(duì)象模型?
對(duì)象模型并不完全是網(wǎng)絡(luò)工程師每天考慮的事情。在我參與幫助團(tuán)隊(duì)設(shè)計(jì) NVUE 之前,我不知道對(duì)象模型是什么。
對(duì)象模型定義系統(tǒng)的組件及其相互之間的關(guān)系。例如,接口是一個(gè)對(duì)象。它具有 IP 地址或 MTU 設(shè)置等組件。重要的不僅僅是對(duì)象模型存在這一事實(shí),還包括如何將對(duì)象和組件之間的關(guān)系組合在一起的思想。
接口和 IP 地址是一個(gè)簡(jiǎn)單的例子,但更復(fù)雜的是什么呢?考慮一個(gè)“ bond ”接口,也稱(chēng)為端口通道。鍵合是像以太網(wǎng)端口一樣的頂級(jí)接口,將其他以太網(wǎng)接口的組件作為子接口,還是作為鍵合中的成員是接口的一個(gè)元素?
這些關(guān)系很快變得復(fù)雜起來(lái)。如果不仔細(xì)考慮這些問(wèn)題,就會(huì)造成糟糕的用戶(hù)體驗(yàn),您可能需要多次定義相同的設(shè)置,以實(shí)現(xiàn)最終目標(biāo)或不一致的配置。虛擬網(wǎng)絡(luò) CLI 可以讓您在 VRF 對(duì)象下定義 VRF 內(nèi)部的任何路由,但在頂層定義全局路由表中的任何路由,如以下示例所示:
ip vrf red ip route 10.1.1.0/24 via 169.254.1.1 !
ip route 192.168.1.0/24 via 172.16.1.1這是一個(gè)簡(jiǎn)單的示例,但現(xiàn)在定義路由的方式并不統(tǒng)一,這取決于您在系統(tǒng)中的位置。
使用對(duì)象模型可以得到什么?
了解了對(duì)象模型是什么之后,下一個(gè)問(wèn)題是,“為什么要關(guān)心?”通過(guò)擁有對(duì)象模型,構(gòu)建與系統(tǒng)交互的方式變得非常簡(jiǎn)單。系統(tǒng)與表示對(duì)象模型的 API 通信。當(dāng)然,第一個(gè)接口是 CLI ,但現(xiàn)在任何東西都可以是系統(tǒng)的接口: REST 、 gRPC 甚至RFC1149 鳥(niǎo)類(lèi)攜帶者。
圖 3 . Cumulus Linux 4 . 4 中提供了 CLI 和 REST 接口。
通過(guò)讓所有接口使用相同的對(duì)象模型,無(wú)論您如何與系統(tǒng)接口,都可以保證一致的結(jié)果。 CLI 和 REST API 使用相同的方法配置 BGP 對(duì)等機(jī)。根據(jù)您使用的接口,永遠(yuǎn)不可能看到不同的行為。因?yàn)闊o(wú)論您如何與對(duì)象模型交互,對(duì)象模型都是相同的,這意味著從使用 CLI 到構(gòu)建完全自動(dòng)化是一種演變,而不是一個(gè)全新的過(guò)程。
目前,任何網(wǎng)絡(luò)設(shè)備都需要 REST 和 CLI 。除此之外,我們還能想到什么呢?對(duì)象模型可以直接導(dǎo)入 Python 或 Java 等編程語(yǔ)言。這使您能夠使用真正的編程概念為一個(gè)設(shè)備或整個(gè)設(shè)備結(jié)構(gòu)構(gòu)建配置。您可以前所未有地強(qiáng)制執(zhí)行輸入、值和關(guān)系。以下代碼示例顯示了 NVUE Python 接口 MIGht 的外觀:
from nvue import Switch spine01 = Switch() x = 1 while x < len(spine01.interfaces): spine01.interfaces.x.state = "up" spine01.interfaces.x.ip.address = “10.1.” + x + “.1/24”?
spine01.apply()在本例中,我加載nvue庫(kù)并創(chuàng)建一個(gè)名為 spine01 的新Switch對(duì)象。我讓對(duì)象告訴我有l(wèi)en(spine01.interfaces)的系統(tǒng)上存在多少接口。對(duì)于每個(gè)接口,我將其置于 up 狀態(tài),并分配一個(gè) IP 地址,其子網(wǎng)值與接口號(hào)匹配。例如,端口 3 的 IP 地址為 10 . 1 . 3 . 1 / 24 。
這還不存在,但絕對(duì)是可能的,因?yàn)榇嬖谝粋€(gè)對(duì)象模型。與所有其他網(wǎng)絡(luò)供應(yīng)商系統(tǒng)(其中模型由 CLI 確定)不同,此 CLI 基于模型。對(duì)象模型是一個(gè)獨(dú)立的元素,可以導(dǎo)入到編程語(yǔ)言、 API 或任何其他系統(tǒng)中。
關(guān)于作者
Pete Lumbis 是 NVIDIA 以太網(wǎng)網(wǎng)絡(luò)技術(shù)營(yíng)銷(xiāo)總監(jiān)。 Pete 幫助客戶(hù)構(gòu)建、設(shè)計(jì)、自動(dòng)化和加速下一代數(shù)據(jù)中心網(wǎng)絡(luò)。皮特是 CCIE # 28677 和 CCDE 2012 :: 3 。
審核編輯:郭婷
-
以太網(wǎng)
+關(guān)注
關(guān)注
41文章
5631瀏覽量
175865 -
NVIDIA
+關(guān)注
關(guān)注
14文章
5308瀏覽量
106341 -
API
+關(guān)注
關(guān)注
2文章
1609瀏覽量
64000
發(fā)布評(píng)論請(qǐng)先 登錄
愛(ài)普生可編程晶振SG-8200CJ特性與應(yīng)用

愛(ài)普生SG-8101CG可編程晶振:醫(yī)療設(shè)備領(lǐng)域的精準(zhǔn)時(shí)鐘解決方案

愛(ài)普生可編程晶振SG-8101CE快速燒錄

EPSON SG-8018CG可編程晶振:無(wú)線(xiàn)通信領(lǐng)域的高精度時(shí)鐘解決方案

可編程交流負(fù)載標(biāo)準(zhǔn)
愛(ài)普生(EPSON) 常規(guī)可編程晶振

可編程交流電子負(fù)載各領(lǐng)域的作用
愛(ài)普生 SG-8101CB 可編程晶振和普通晶振相比有哪些優(yōu)勢(shì)?

使用bq769x0對(duì)高可用性系統(tǒng)進(jìn)行故障監(jiān)控

可編程晶振的優(yōu)點(diǎn)和缺點(diǎn)

愛(ài)普生(EPSON) 可編程快速交付有源晶振(SPXO)
用TMAG5328電阻器和電壓可編程霍爾效應(yīng)開(kāi)關(guān)實(shí)現(xiàn)可編程性和診斷

SG-8018CA可編程晶振X1G005571001300用于車(chē)載導(dǎo)航系統(tǒng)
淺析分布式風(fēng)電電池儲(chǔ)能系統(tǒng)可用性

可編程晶振都有什么頻率的呢?分享3個(gè)挑選可編程晶振的技巧

評(píng)論