SDN助力數(shù)據(jù)中心實(shí)現(xiàn)網(wǎng)絡(luò)資源的真正池化
掃描二維碼
隨時(shí)隨地手機(jī)看文章
隨著云計(jì)算技術(shù)的發(fā)展,傳統(tǒng)數(shù)據(jù)中心組網(wǎng)在網(wǎng)絡(luò)能力上的不足越來(lái)越明顯,主要體現(xiàn)在兩個(gè)方面,一是網(wǎng)絡(luò)虛擬化的支持能力不足,二是不支持業(yè)務(wù)自動(dòng)化部署和靈活編排。數(shù)據(jù)中心網(wǎng)絡(luò)引入SDN控制器,基于集中控制、轉(zhuǎn)控分離的架構(gòu)實(shí)現(xiàn)網(wǎng)絡(luò)資源全局集中管控、智能調(diào)度,提高了網(wǎng)絡(luò)資源利用率;基于開(kāi)放可編程的接口,實(shí)現(xiàn)業(yè)務(wù)的自動(dòng)化快速開(kāi)通部署。
SDN助力數(shù)據(jù)中心真正池化
SDN數(shù)據(jù)中心為多租戶提供虛擬、隔離、可擴(kuò)展、自管理的NaaS(Network as a Service),SDN助力云計(jì)算數(shù)據(jù)中心實(shí)現(xiàn)網(wǎng)絡(luò)資源的真正池化,使數(shù)據(jù)中心網(wǎng)絡(luò)在云計(jì)算時(shí)代實(shí)現(xiàn)網(wǎng)隨云動(dòng)。
SDN控制器在數(shù)據(jù)中心的引入,極大提升了數(shù)據(jù)中心網(wǎng)絡(luò)的承載和服務(wù)能力。但同時(shí),SDN控制器作為整個(gè)數(shù)據(jù)中心網(wǎng)絡(luò)的“大腦”,其高可靠部署對(duì)數(shù)據(jù)中心網(wǎng)絡(luò)的安全穩(wěn)定運(yùn)行非常重要。
SDN控制器的高可靠性分為兩個(gè)層面,分別是設(shè)備層面的高可靠和業(yè)務(wù)層面的高可靠。設(shè)備層面的高可靠是指SDN控制器設(shè)備硬件、軟件本身具有主備冗余的高可靠,在單一硬件和軟件模塊故障時(shí)SDN控制器依然能穩(wěn)定可靠運(yùn)行。業(yè)務(wù)層面的高可靠是指SDN控制器對(duì)網(wǎng)絡(luò)業(yè)務(wù)配置的高可靠下發(fā)以及業(yè)務(wù)配置數(shù)據(jù)的高可靠存儲(chǔ),比如配置事物全局一致性、南向數(shù)據(jù)一致性等功能。
SDN控制器的部署有單節(jié)點(diǎn)、單集群的部署,也有能滿足更高可靠性的異地災(zāi)備的主備集群部署。本文從單集群和主備集群的規(guī)劃與部署兩個(gè)方面,較詳細(xì)地闡述了SDN控制器高可靠規(guī)劃、部署與實(shí)現(xiàn)。
SDN控制器單集群規(guī)劃與部署單集群內(nèi)部,北向模塊、數(shù)據(jù)庫(kù)、南向模塊應(yīng)至少提供一主一備的冗余部署。
單集群部署的SDN控制器,要求集群內(nèi)節(jié)點(diǎn)服務(wù)器數(shù)量≥3臺(tái),節(jié)點(diǎn)劃分為L(zhǎng)eader和Follower的角色。Leader節(jié)點(diǎn)負(fù)責(zé)集群內(nèi)各節(jié)點(diǎn)業(yè)務(wù)的統(tǒng)一調(diào)度管理,當(dāng)有節(jié)點(diǎn)故障的時(shí)候,Leader節(jié)點(diǎn)負(fù)責(zé)將故障節(jié)點(diǎn)下的設(shè)備進(jìn)行重新分配。Leader節(jié)點(diǎn)故障時(shí),F(xiàn)ollower經(jīng)選舉比較,優(yōu)先級(jí)最高的Follower角色轉(zhuǎn)換成Leader節(jié)點(diǎn)。
北向Portal模塊應(yīng)能通過(guò)主備冗余方式或者多活方式,對(duì)外為北向應(yīng)用、協(xié)同層或云平臺(tái)提供統(tǒng)一的浮動(dòng)IP,通過(guò)北向接口接收應(yīng)用、協(xié)同層的控制信息。
Portal模塊通過(guò)輪詢方式將北向接收到的指令發(fā)放給集群內(nèi)節(jié)點(diǎn),由集群內(nèi)節(jié)點(diǎn)計(jì)算處理,并通過(guò)南向接口完成向設(shè)備配置的下發(fā)。
北向的負(fù)載均衡調(diào)度模塊應(yīng)能動(dòng)態(tài)檢測(cè)各節(jié)點(diǎn)北向接口狀態(tài),當(dāng)檢測(cè)到某節(jié)點(diǎn)的北向接口狀態(tài)異常時(shí),能標(biāo)記該節(jié)點(diǎn)為不可用,并出發(fā)節(jié)點(diǎn)異常告警,停止北向請(qǐng)求到該節(jié)點(diǎn)的發(fā)放。當(dāng)北向接口檢測(cè)到節(jié)點(diǎn)恢復(fù)正常后,能重新標(biāo)記為可用,并重新將節(jié)點(diǎn)加入到北向請(qǐng)求接收的隊(duì)列當(dāng)中。
集群內(nèi)控制器南向模塊應(yīng)能至少支持建立控制器節(jié)點(diǎn)到轉(zhuǎn)發(fā)設(shè)備間的一主一備雙連接,即轉(zhuǎn)發(fā)設(shè)備能和集群內(nèi)兩個(gè)控制器節(jié)點(diǎn)建立連接,默認(rèn)通過(guò)主連接管理轉(zhuǎn)發(fā)設(shè)備,當(dāng)主連接的控制器節(jié)點(diǎn)故障時(shí),自動(dòng)切換到備連接管理轉(zhuǎn)發(fā)設(shè)備,同時(shí)將備連接切換為主連接,并重新再給該設(shè)備建立一個(gè)備連接。
控制器集群內(nèi)應(yīng)能支持配置事物全局一致性,即一個(gè)業(yè)務(wù)配置涉及集群內(nèi)多個(gè)節(jié)點(diǎn)、數(shù)據(jù)庫(kù)節(jié)點(diǎn)、網(wǎng)絡(luò)控制節(jié)點(diǎn)、轉(zhuǎn)發(fā)設(shè)備節(jié)點(diǎn)時(shí),應(yīng)確保每個(gè)節(jié)點(diǎn)都能成功,如果中間某個(gè)節(jié)點(diǎn)異常,則全部配置事物回滾。
SDN控制器應(yīng)支持南向數(shù)據(jù)一致性,即當(dāng)控制器和南向轉(zhuǎn)發(fā)設(shè)備之間出現(xiàn)配置不一致時(shí),控制器能進(jìn)行南向差異發(fā)現(xiàn)和差異修復(fù),從而實(shí)現(xiàn)控制器和南向轉(zhuǎn)發(fā)設(shè)備配置一致。要求控制器能定期進(jìn)行差異化監(jiān)測(cè),發(fā)現(xiàn)差異時(shí),能主動(dòng)觸發(fā)告警通知用戶,用戶查看和確認(rèn)后,由用戶發(fā)起以控制器為準(zhǔn)或者以轉(zhuǎn)發(fā)設(shè)備為準(zhǔn)的差異化修復(fù)。
SDN控制器應(yīng)支持系統(tǒng)備份功能,定期將控制器系統(tǒng)數(shù)據(jù)生成快照,并將快照信息備份存放到遠(yuǎn)端服務(wù)器。當(dāng)控制器系統(tǒng)出現(xiàn)不可恢復(fù)的故障時(shí),可以使用歷史系統(tǒng)快照信息重新部署一套存有全部配置信息的相同控制器。
SDN控制器應(yīng)支持集群節(jié)點(diǎn)替換功能,集群內(nèi)某節(jié)點(diǎn)損壞(譬如服務(wù)器損壞,無(wú)法恢復(fù)),可以單獨(dú)使用新的服務(wù)器替換該故障節(jié)點(diǎn)。
SDN控制器集群部署在云計(jì)算數(shù)據(jù)中心場(chǎng)景時(shí),應(yīng)規(guī)劃在管理網(wǎng)中,SDN控制器通過(guò)管理網(wǎng)和軟硬件轉(zhuǎn)發(fā)設(shè)備通信,下發(fā)流表、策略等。因此在云計(jì)算數(shù)據(jù)中心場(chǎng)景要求管理網(wǎng)獨(dú)立規(guī)劃,和業(yè)務(wù)網(wǎng)物理隔離,保證SDN控制器和轉(zhuǎn)發(fā)設(shè)備之間的高質(zhì)量連接。
SDN控制器支持主備集群的容災(zāi)部署為進(jìn)一步提高SDN控制器的可靠性,SDN控制器除了單集群部署,還應(yīng)能支持主備集群的容災(zāi)部署方式。主備集群部署在不同的地域。正常情況下,主控制器集群工作處理業(yè)務(wù),備集群運(yùn)行但不處理業(yè)務(wù)。主備集群容災(zāi)部署時(shí),主集群業(yè)務(wù)數(shù)據(jù)庫(kù)與容災(zāi)備集群數(shù)據(jù)庫(kù)應(yīng)實(shí)現(xiàn)同步備份。
主備控制器集群間建立心跳連接,當(dāng)主控制器集群故障時(shí),可自動(dòng)或手動(dòng)完成容災(zāi)切換。要求心跳間隔、心跳超時(shí)個(gè)數(shù)閾值可配置,心跳超時(shí)后觸發(fā)告警或者觸發(fā)自動(dòng)主備倒換的動(dòng)作可配置。
SDN控制器主備集群部署建議架構(gòu)如圖所示。
圖? SDN控制器主備集群部署建議架構(gòu)
為增強(qiáng)系統(tǒng)的穩(wěn)定性和可靠性,在規(guī)劃時(shí)建議不開(kāi)啟故障時(shí)主備自動(dòng)切換和故障恢復(fù)時(shí)的自動(dòng)回切,建議人工手動(dòng)方式進(jìn)行切換。管理員在接收到心跳超時(shí)告警時(shí),人工確認(rèn)主備集群的工作狀態(tài),必要時(shí)進(jìn)行主備集群切換;故障恢復(fù)后,需要進(jìn)行回切時(shí),應(yīng)該在確認(rèn)系統(tǒng)狀態(tài)后,在業(yè)務(wù)低峰時(shí)段進(jìn)行回切。
主備集群部署時(shí),控制器集群北向?qū)覱penstack云平臺(tái)或者協(xié)同編排層,要求在Openstack云平臺(tái)或者協(xié)同編排層上配置主備集群的IP地址,并且定期檢查主備集群的角色、狀態(tài)。當(dāng)檢測(cè)到集群主備狀態(tài)變化并確認(rèn)后,能自動(dòng)或人工修改主備角色狀態(tài)。建議在檢測(cè)到集群狀態(tài)變化時(shí),觸發(fā)告警,在人工確認(rèn)后,修改主備角色狀態(tài)。
主備集群間帶寬和時(shí)延應(yīng)滿足集群需求,要求集群互聯(lián)預(yù)留帶寬≥1Gbit/s,集群互聯(lián)時(shí)延≤10ms。10ms內(nèi)異地容災(zāi)部署效果最好,超過(guò)10ms后可能會(huì)導(dǎo)致容災(zāi)數(shù)據(jù)丟失。當(dāng)集群互聯(lián)時(shí)延>10ms時(shí),認(rèn)為備集群位置不具備集群部署條件,不建議進(jìn)行主備集群部署,應(yīng)進(jìn)行備集群位置重選以符合主備集群部署條件。