
今天我們將之前內(nèi)容進行整合并進行擴展,仍然用大家熟悉的planespotter的微服務應用,跨企業(yè)的兩個數(shù)據(jù)中心站點分布式部署,通過VMware合作伙伴F5 BIG-IP DNS實現(xiàn)全局負載均衡,將不同地域或者不同ISP的用戶智能引流到不同的數(shù)據(jù)中心中planespotter的web前端和app服務,而在數(shù)據(jù)中心內(nèi)部,采用NSX內(nèi)置的與PaaS平臺原生集成的4層以及7層負載均衡實現(xiàn)本地微服務負載均衡,從而通過F5 GTM+NSX SLB作為LTM實現(xiàn)企業(yè)微服務雙活架構。而通過NSX實現(xiàn)集中式管理多中心的微服務的所有網(wǎng)絡,安全和負載均衡策略,簡化opex,讓業(yè)務部門或者devops流程自動化部署微服務時全自動化交付網(wǎng)絡服務。
我們先來介紹一下今天demo的多中心網(wǎng)絡邏輯拓撲,如下:

在BJ-DC1中,將planespotter微服務的web前端部署在之前我們demo過的環(huán)境bare-metal Openshift cluster中,app和redis部署在開源k8s/第三方PaaS中,將mysql部署在vsphere IaaS,ADS-B部署在bare-metal物理服務器上(大家如果對這個微服務不熟悉,可以參考公眾號第一篇文章)。
在BJ-DC2中,將planespotter的web前端和app中間件部署在VMware PKS容器云中。
“雙活微服務應用跨越不同的CaaS,PaaS,IaaS,bare-metal實現(xiàn)任意環(huán)境部署,而通過NSX無處不在統(tǒng)一管理所有的網(wǎng)絡,安全及負載均衡策略,在demo中,部署統(tǒng)一的NSX Manager,controller集群,DC部署獨立的Edge DPDK集群,兩個中心通過VC實現(xiàn)統(tǒng)一集中式管理計算集群。在真實環(huán)境中,用戶可以選擇統(tǒng)一或者部署獨立VC,統(tǒng)一NSX或者獨立的NSX-T在不同的DC,通過NSX global policy manager實現(xiàn)策略一致性部署。
而部署在多中心南北向的web前端的入口,通過F5 BIG-IP DNS也就是GTM實現(xiàn)智能DNS流量調(diào)度,在本次demo中,通過不同的request source將client導流至不同DC的NSX 4-7層負載均衡器。
而通過F5 BIG-IP DNS與NSX SLB可以實現(xiàn)完美集成,通過NSX與PaaS平臺集成,實現(xiàn)全自動化負載均衡器配置及部署,同時將各DC local NSX SLB作為server可以添加到GTM,并將NSX SLB virtual server通過GTM與link相關聯(lián)。
接下來進入demo時間,我們先看一下計算環(huán)境,如下圖:通過多個vsphere集群實現(xiàn)K8S集群,PKS集群資源的跨中心統(tǒng)一調(diào)度部署,(注意,demo為了簡化,并不是按照生產(chǎn)級設計),PKS可以支持AZ,在本demo中,部署在同一個AZ中。”

接下來看一下NSX無處不在的網(wǎng)絡環(huán)境,通過NSX統(tǒng)一管理bare-metal Openshit以及bare-metal ADS物理服務器,如下圖,可以看到一個兩節(jié)點bare-metal Openshift集群,以及物理機Ubuntu-ADSB。

下圖為NSX與vCenter集成,統(tǒng)一管理部署在vSphere IaaS上的K8S及PKS集群:

下圖為BJ-DC1和DC2通過與各自的PaaS或者CaaS平臺集成,實現(xiàn)全自動化的Geneve邏輯交換機,多租戶路由器自動化部署,此部分在之前的公眾號文章有過介紹,更為詳細的部分未來跟大家分享:


接下來我們看一下,通過NSX與PaaS集成實現(xiàn)的全自動化SLB自動化創(chuàng)建及部署,以及planespotter web前端的負載均衡策略上線:

下圖為PaaS集群部署以及微服務上線時,全自動化創(chuàng)建的負載均衡virutal server:

接下來我們看一下兩個中心微服務上線的狀態(tài)
下圖為BJ-DC1,web前端在openshift集群的部署,以及route的配置,

下圖為App及redis在K8S上的部署和配置,

下圖為BJ-DC2,Web和App微服務的配置和部署狀態(tài):

接下來我們來看一下F5 GTM的智能DNS實現(xiàn),創(chuàng)建兩個DC,如下圖,

創(chuàng)建4個BIG-IP Server,將GTM以及NSX-SLB加入到不同的DC,如下圖,

為planespotter的微服務應用創(chuàng)建wide ip,如下圖,

將NSX SLB以及virtual server加入到planespotter的wide ip中,如下圖:

設置基于Topology實現(xiàn)planespotter微服務的多中心智能DNS負載均衡,如下圖,

創(chuàng)建Topology record,將部署在不同地域的用戶及客戶端導流給不同的BJ-DC, 實現(xiàn)多中心負載均衡策略部署。
接下來,登錄兩臺部署在不同region的windows客戶機,通過nslookup查詢微服務的域名,我們可以看到,F(xiàn)5 GTM將DNS A記錄返回給不同的DC NSX SLB。如下圖:

我們在兩臺不同region的win客戶機訪問planespotter.f5.vmware.local微服務域名,發(fā)現(xiàn)通過BJ-DC1和BJ-DC2的實現(xiàn)雙活訪問,如下圖,10.11.28.0/24網(wǎng)段為DC1的Pod網(wǎng)段,10.88.4.0/24為DC2的Pod網(wǎng)段,

通過F5 GTM與NSX SLB集成,可實現(xiàn)在GTM按照用戶需要將流量切換至不同DC的不同ISP運營商,如下圖,我們將DC1的微服務前端流量均切換至DC2:

我們看到Region1的客戶端的nslookup請求被GTM redirect到了DC2的NSX SLB,如下圖:

我們可以看到Region-a的客戶端仍然可以訪問planespotter的微服務,但是訪問的是BJ-DC2的web前端,與Region-b的客戶端一致,如下圖:

應用已經(jīng)完美多活上線,更為重要的是,如何secure多中心微服務,如果統(tǒng)一策略的部署?通過NSX無處不在可實現(xiàn)整個planespotter跨中心微服務組件之間以及南北向的安全均由NSX安全微分段實現(xiàn)完善的保護,統(tǒng)一安全策略的部署,如下圖:

總結,通過VMware的SDDC以及NSX實現(xiàn)多中心微服務計算,存儲和網(wǎng)絡全自動化部署,通過NSX無處不在實現(xiàn)統(tǒng)一安全及微服務負載均衡自動化,通過VMware合作伙伴F5 Networks實現(xiàn)多中心智能DNS及流量調(diào)度,為用戶交付真正的微服務多中心多活解決方案。