繼上周發布 觀影指南丨十大最值得收看的奧斯汀Summit網絡主題演講 之後,我們再次為沒能親臨奧斯汀OpenStack Summit現場的童鞋們梳理本屆峰會SDN網絡主題的重要技術講座。UnitedStack有雲SDN網絡部PTL王為在奧斯汀峰會期間共觀看了20餘場技術講座,綜合之後再YouTube上觀看的回放,對36個Session進行了介紹和評論。
這些網絡技術講座的觀影指南涉及架構、功能與工具、開發與其他四大領域。我們將分主題系列發布,希望幫助國內的開發者、架構師和用戶更好地了解OpenStack在SDN網絡領域的最新發展。本文所介紹的相關講座在 YouTube 均有完整視頻(詳見:https://www.youtube.com/user/OpenStackFoundation/videos,在 Youtube 上搜索對應名稱即可)。
▼1. Practical OVN Architecture, Deployment, and Scale of OpenStack▼2. OpenStack and Opendaylight The Current Status and Future Direction▼3. OpenDay Light - Collaborating with OpenDaylight for a Network-Enabled Cloud▼4. Dragonflow - Neutron Done the SDN Way▼5. Deploying Neutron Provider Networking on Top of a L3 Provider Network Using BGP-EVPN▼6. Overstock.com's OpenStack Networking Strategy1. Practical OVN Architecture, Deployment, and Scale of OpenStack
評分:★★★★
簡介:開頭科普了一下 OVN 的架構,一些做的不錯的地方,然後著重介紹了這個 Release Cycle 中社區對 Scale 的進展和測試,以及其他一些目標。對 OVN 感興趣的同學應該看一看。
評論: 標題雖然叫Practical,但遺憾的是實踐的內容並不多,提到了社區做的 Scale測試,主要是利用Sandbox在20 臺物理機上做 2000個Hypyervisor的控制平面模擬,IBM在實際物理環境中部署過90個Hypervisor的Scale,下一步要測試 300 臺和 700 臺的規模。
關於最近的進展,Scale上有一定提升,例如 ovsdb-nb 和 ovsdb-sb 分拆到兩個進程等,但遺憾的是比較受人關注的 ovsdb 的多進程還在開發中,原生 NAT、擺脫 MQ 等一些關鍵 Feature 也還沒有做完。部署上已經支持了 Puppet OpenStack,同時社區對 Rolling Upgrades 也比較重視,這方面做的也不錯。下一步的目標主要還是 OVSDB 的 HA(關鍵 Feature)、L3 Gateway 和 NAT 的支持(關鍵 Feature)、Native 的 DHCP、MetaData 等等,還有一段路要走啊。
OVN 剛推出很多人看好,原因最主要是強大的社區,其次剛開始給出的設計文檔也不錯,遺憾的是剛拿出來的版本距離長期設計目標就差的很遠(OVSDB 的 HA 問題,甚至目前還是單進程的!大量的非分布式實現等等),所以就讓很多人憂慮 OVN 是不是太晚了。
一年多過去了,OVN 社區確實做出了很多努力,但遺憾的是前有 DragonFlow,後有 OpenDaylight OVSDB Netvirt 各種競爭,而且前者發展時間長、已有部署案例,後者在 HA、各種功能(SFC、VxLAN Gateway 等)也有所擅長,而且兩者對如何解決資料庫/資源同步問題都提出了自己的方案(versioned object、async sync)等,而OVN社區目前還沒有考慮過這個問題,只能說留給OVN的時間已經不多了啊。
2. OpenStack and Opendaylight The Current Status and Future Direction評分:★★★★☆
簡介:開頭科普了一下 OpenDaylight 的架構,然後介紹了在 OS M 版和 ODL Beryllium 版上的進展,特別是 V2 版 Driver 的情況,值得一看。
評論: V2 Driver 是一個關鍵性但複雜的事情,主要是增強了 HA 和 Scalability,這也得益於 OPNFV 的不斷測試。其中的關鍵問題之一是資料庫的不同步。做過類似 SDN 與 OpenStack 對接的開發者都知道,因為事涉兩個系統,兩個資料庫,所以保持數據一致性是一個很麻煩但有很重要的問題,一旦處理不好,輕則狀態不一致,重則大量髒數據充斥兩個系統還無法輕易刪除,最終無法維護。ODL 選擇了一個相對簡單一些的方案,就是將一個 Sync 操作拆開,拆一部分為獨立的循環,這個思路可能是和以前的 Neutron agent 學的?
我們可以看到 API 返回過程實際是沒變的,仍然是直接寫資料庫然後就返回,但此時狀態時 Pending 的,由另一個獨立線程周期去取 Pending 的數據,然後交給 ODL,這樣來保證 API 操作的即時性和狀態的一致性。
輕量測試框架看起來對用戶不會有很大的影響,但是對開發真會方便很多,跑和 OpenStack 的集成測試不需要專門跑 ODL 了,簡化很多。支持了基於 Port binding 的 OVS DPDK 集成(這樣你可以混布 DPDK 和 非 DPDK 了!),100% 通過 Tempest 測試。在新版的 ODL 上,HA、穩定性、各種 Feature 也增強很多,可以認為 ODL 和 OpenStack 集成已經很靠譜了。
在下一個版本中,一方面是 v2 的繼續增強,一方面是 SFC、FD.io、BGPVPN、L2GW 等這些的增強。按照 FD.io 的文檔,FD.io 社區的計劃也是通過 ODL 與 OpenStack 集成,按照目前的資料 FD.io 的性能特別是多流性能上就超出 OVS DPDK 一大截,值得期待。SFC 有其他 Session 做介紹,這裡就不多說了。最後做一點科普,OpenDaylight 可以作為純軟的 OpenStack SDN 後端,具體的模塊是 netvirt,也是以 OVSDB 來控制 OVS 完成網絡功能,目前功能的完善程度還是比較高的。
3. OpenDay Light - Collaborating with OpenDaylight for a Network-Enabled Cloud評分:★★★
簡介:這是一個在MarketPlace的短片演講,主要介紹了ODL本身和其與OpenStack集成的好處,以及一些客戶案例。
評論:對ODL不了解的同學可以看一看,看過 OpenStack and Opendaylight The Current Status and Future Direction 的同學就不用看了。
4. Dragonflow - Neutron Done the SDN Way評分:★★★★★
簡介:開頭科普了DragonFlow的架構和意義,然後介紹了最新的進展,其中重點是 Plugable DB (你將可以愉快的使用 ETCD、RamCloud、Redis 等作為分布式的資料庫後端)、Plugable 消息後端(你可以愉快的使用 0MQ)、分布式的 DNAT、DHCP 和 OVS 實現的安全組均已完成!
評論: 在2015年的溫哥華Summit 會後總結上,筆者就向國內同僚介紹過 DragonFlow 這個生機勃勃架構的項目,主要 Contributor 中 Gal 和 Eran 都是很有創造力的人,最近隨著國內的馬力的加入讓這個「小社區」更加充滿活力,從他們的 Feature 介紹中也能看出裡其發展之強。演講著重介紹了關於資料庫一致性的問題解決,和 ODL 重點討論的那個事情是一樣的,區別是二者的方法,DragonFlow 目前採用的是基於鎖實現,類似於兩步提交,但計劃修改成基於版本的對象控制,這個計劃其實和 ODL 的實現也是有類似的,但是這裡不用狀態這個欄位,而是用版本,確實看起來更優雅但實現難度還是比較高的。
OpenStack 與 SDN 集成的兩大痛點,一個消息問題,一個資料庫問題,不同的社區給出了不同的解決方案(棄用 MQ 還是採用分布式 MQ?基於 CAS 的比較還是基於狀態的異步處理?),很讓人拭目以待。此外 DragonFlow 還公布了他們在 Scale 上的路線圖,隨著 0MQ 的引入,他們把理論的 Scale 已經提高到 4000 節點,但這還是不是終點,目前的目標是 10000 臺節點!
DargonFlow 在更新速度上、架構上(他們在架構上在不斷進化)都絕對不輸目前 Neutron 幾個其他 SDN 方案,唯一遺憾的是社區和聲音都小了些,希望未來能有更多的慧眼識珠之人參與進來。
評分:★★★★
簡介:這是一個 Walmart 出品的其網絡結構設計 Case Study,主要技術是 MPBGP EVPN,對大型的 OpenStack 網絡設計(VxLAN 網絡設計)還是很有價值的,演講附有珍貴的實際性能數據。
評論: Walmart 首先談了他們的痛點:
1. 目前數據中心建設過程太過漫長,需要6-12個月;
2. 流程長、重複工作多、缺乏進度可視、相互依賴;
3. 傳統網絡架構需要很多網絡工程師維護,應用喜歡二層而網絡工程師喜歡三層,網絡和安全由不同的人負責 。
據此,Walmart 希望一個支持裸機和虛機、支持大二層、安全、可靠、無廠商鎖定的網絡方案。最終他們選擇MPBGP EVPN VxLan組網。
MPBGP EVPN 在網絡界已經不是新技術了,但和 OpenStack 結合其實不多,一來設備支持不那麼豐富,二來社區有L2 POP+ARP Responder的解決方案(當然也有 MPBGP EVPN 的軟體實現方案,BaGPipe!),此外 OpenContrail 作為開源軟體 SDN 界的技術擔當也一直支持,所以這個話題在 OpenStack 社區圈內討論的不多,但是如果你想真的解決 VxLan 的廣播問題,或者想擴展 VxLan 到 DCI,那 MPBGP EVPN 確實值得考慮。此外通過設備解決分布式路由?Ancast Gateway(簡單的說就是分布式的 VRF)。網絡架構整體是和 Spain-leaf 沒什麼區別,但重要的是 VxLan de/encap 是在 ToR 上做的。
最後,Walmart 給出了其性能測試數據,基於 Dell 和 Cisco 的硬體。有意思的是他們還有一個測試項叫 AppMix,混合了各種應用來模擬真實情況。另外還有 Walmart 給出的小包性能一般,瓶頸應該在軟體或虛擬機上,不應該是 ToR 的問題。
對了,筆者在會上問了 Walmart 使用的控制器或自動換軟體是什麼,答案是目前在用 VTS,將來計劃遷移到 Ansible 上,網絡資源全部是預配置的。
6. Overstock.com's OpenStack Networking Strategy評分:★★☆
簡介:用一句話介紹就是 Overstock.com 是如何使用 Midonet 然後過上了幸福的生活的。
評論:演講者之前網絡設計和規劃比較一般般,故障恢復需要數小時,用了 Midonet 和改善了架構後之後做到了零丟包,End。廣告太硬了,差評。
編者註:本文作者為UnitedStack有雲SDN網絡部PTL王為。有關此次奧斯汀OpenStack Summit各個技術主題的演講視頻,可以在YouTube上完整觀看。