1. 程式人生 > >NSX技術的淺析

NSX技術的淺析

nsx nsx-t


VMware NSX是VMware的網絡虛擬化平臺,他可以過濾任何在超級管理器中來往的流量。

VMware的方法抽象了物理的零信任安全,同時使用分布式的基於超級管理器屬性的網絡覆蓋。管理員可以在一個集中的關系系統中創建規則,而且強制跨分布式防火墻設備。最終實現集中管理的解決方案,每個超級管理程序可以擴展到兩位數的Gpbs。


VMware NSX,則更進一步通過網絡提供對計算和存儲實現的相同虛擬化功能。

NSX網絡虛擬化分vSphare環境下的NSX(NSX-V)和多虛擬化環境下的NSX(NSX-MH),是不同的軟件,最新版本分別是6.2.0和4.2.4,這點在部署之前就需要了解。其中,NSX-MH更像原生態的Nicira NVP平臺,主要在KVM和Xen之上,基於OVS實現網絡虛擬化。

但是,無論使用NSX-V還是NSX-MH,其基本邏輯架構都是相同的,不同點僅為數據平面中的一些組件(如NSX-V中,虛擬交換機為vSphare分布式交換機,而NSX-MH中,虛擬交換機為OVS)。下圖為NSX網絡虛擬化架構的基本示意圖。它建立在底層物理網絡之上,在邏輯網絡中,分數據平面、控制平面、管理平面。其中數據平面中,又分分布式服務(包括邏輯交換機、邏輯路由器、邏輯防火墻)和NSX網關服務。控制平面的主要組件是NSX控制器。而管理平面的主要組件是NSX Manager。請看下圖所示。

技術分享

  • 有了這些組件,NSX可以提供的功能服務如下:

交換:在網絡中的任何位置實現大二層交換網絡的擴展,而無需考慮底層物理網絡。

路由:IP子網之間的路由,可以在邏輯網絡中完成,不需要有流量出到物理路由器或三層交換機。這種路由是在虛擬機的Hypervisor層執行的,CPU消耗很小,可為虛擬網絡架構內的路由表提供最佳路徑。

防火墻:有了這個功能,安全防護就可以在Hypervisor層以及虛擬網卡層面執行。這將能夠以可擴展的方式實施防火墻規則,而不會在物理防火墻設備上造成瓶頸。防火墻分布在Hypervisor層之上,只產生極少的CPU開銷,並且能夠線速執行。

邏輯負載平衡:支持四到七層的負載平衡,並且能夠執行SSL端接。

VPN服務:可實現二、三層VPN服務。

NSX-V的架構,其實非常簡單,因為它的邏輯層次非常清晰——管理平面、控制平面、數據平面,每個平面中的組件也不多。

在NSX-V架構中,數據平面是基於VDS搭建的。VDS需要在每一個ESXi的hypervisor上啟用,而每一個ESXi主機,都有一個用戶空間和一個內核空間(如下圖所示)。

技術分享

我們通過將VMware Installation Bundles(VIBs)安裝到ESXi主機hypervisor的內核空間,以實現NSX-V的各種功能——分布式交換和路由、分布式防火墻和VXLAN的封裝與解封裝。

而用戶空間,則是用於與控制平面、管理平面提供通訊路徑的組件;

在VMware NSX平臺中,我們使用VETP代理工作機制,負責將VXLAN流量從本地子網傳輸到另一個子網。而傳輸區域(Transport Zone)則是VNI的可配置的邊界。相同傳輸區域中的vSphere集群,使用了相同的VNI,一個傳輸區域可以包含不同vSphere集群中的ESXi主機,當然,一個vSphere集群也可以是不同傳輸區域的一部分。傳輸區域會告知主機或集群邏輯交換機被創建。

在傳統物理網絡中,對於同一個主機內的一個Web服務器與App服務器的通信,由於他們處在不同網段,需要三層交換機來處理它們之間的流量,因此,流量在出主機後需要經過ToR二層交換機去往核心交換機,再回到二層交換機並重新進入主機,需要4跳連接。當然,如果ToR交換機開啟了三層功能,通信則只需要2跳。而在NSX環境中,由於我們直接在主機的hypervisor層面實現了三層功能,因此,Web服務器與App服務器是直連的,它們之間的通信連接是0跳,如下圖所示。值得註意的是,無論NSX-V還是NSX-MH環境,就流量的跳數問題上,達成的效果都是一致的。


2016年5月,VMware悄無聲息地對NSX的多hypervisor版本進行了重大更新,推出NSX-T取代NSX-MH。NSX網絡虛擬化軟件的多hypervisor版本支持KVM、ESXi、Xen hypervisor,這是VMware在2012年收購Nicira及其網絡虛擬化平臺後在網絡虛擬化領域的又一次大動作。 然而,由於NSX-T提供了很多新功能,升級NSX-MH不是簡單地本地更新。相反,可能會牽涉到完全重新安裝整個產品,用戶需要花更多的費用、精力做出技術調整以適應現有環境。


VMware nsx-t旨在解決新興應用框架和體系結構,異構終端和技術堆棧。除了這些環境的,也可能包括其他的虛擬機管理程序,容器,裸機和公共雲。nsx-t允許開發團隊選擇最適合其特定的應用技術。nsx-t也設計用於管理,IT運營和擴展。


NSX-T 一些關鍵架構重點包括以下內容:

管理平面:nsx-t管理平面用先進的集群技術設計,使平臺能夠處理大規模並發API請求。

控制平面:nsx-t控制平面跟蹤實時虛擬網絡和系統的安全狀態。nsx-t控制平面分離控制平面為中心的集群控制平面(CCP)和局部控制平面(LCP)。這大大簡化了CCP的工作,使平臺能夠擴展異構端點。

數據平面的nsx-t:數據平面不依賴於vSwitch,所有的創建,讀取,更新和刪除(CRUD)操作是通過nsx-t來執行。

備註:NSX-T裏面的交換機不同於-V的VDS。VDS的創建、讀取、更新和刪除都是vCenter進行控制的,-T裏面這種功能會移到NSX Mananger來做,包括配置uplink teaming策略和定義QoS等等。所以才能夠實現與vSphere的解耦合。分布式路由、分布式防火墻、、NAT、DHCP都在-T集成。


技術分享

多租戶路由模型

nsx-t支持多層次的路由器功能之間的邏輯分離的路由模型(已知在NSX作為Tier0路由器)和租戶路由器的功能(稱為一級路由器的NSX)。Tier0邏輯路由器,路由層可由雲提供商控制,能夠窺視與物理基礎設施。

這一邏輯路由器,雲租戶提供了路由層,可以通過GUI API /每租戶和附屬於Tier0路由器配置。

nsx-t實例化的hypervisor分布式路由器的路由可優化多層次的東西。


在異構環境中,nsx-t具有一致的操作、監視界面,還有管理和故障排除、復雜環境的異構基礎設施運行操作工具箱。nsx-t有端口連接檢測和Traceflow,幫助用戶跟蹤連接虛擬和物理設備。


技術分享

NSX的REST API是強大的,是一個開放的規範,可以融合各種語言和綁定相應的插件,包括與CMP整合,也包括OpenStack。

NSX OpenStack插件可供開發建立和維護多租戶雲服務開發。

NSX邊緣節點提供極端的網關和服務性能,使用創新的英特爾DPDK技術。

NSX-T是與vCenter無關的,可以對接其他不同的PaaS平臺。



本文出自 “滴水穿石孫傑” 博客,請務必保留此出處http://xjsunjie.blog.51cto.com/999372/1982352

NSX技術的淺析