各模塊主要功能如下:
1.NCI-Controller實現了CNI,負責響應PoD以及服務的增刪改,并執(zhí)行相應的組網和服務配置;
2.NCI-OpenvSwitch負責運行OvS(OpenvSwitch)網橋,組網和服務配置通過下發(fā)給NCI-OpenvSwitch的接口和流表配置來實現;
3.NCI-Supervisor負責資源(namespaces、subnets、ips、node-subnets等)的管理,一方面對NCI-Controller申請的資源執(zhí)行分配,一方面向NCI-Provider同步資源信息;
4.NCI-Provider則負責根據NCI-Supervisor同步過來的信息去配置Kubernetes Node所上聯的Leaf交換機,完成Kubernetes資源池內部的整體組網配置。
NCI方案優(yōu)勢
與數據中心網絡聯動
NCI方案中PoD的組網邏輯主要基于硬件Leaf交換機上的LS(Logical Switch)和LR(Logical Router)來實現,面向跨資源池(異構)互聯場景時,NCI方案采用Multi-Fabric架構組網,通過部署在Region中的Service Leaf(虛擬路由)為容器資源池與Region內部相同資源池、Region內部異構資源池、Region之間異構資源池以及多中心提供統(tǒng)一互聯的二層、三層虛擬網絡,從而實現容器資源池與整個數據中心網絡的聯動。
簡化容器網絡的使用
NCI(控制器模塊)通過對接和納管上聯設備,將多層級的容器網絡抽象為雙層設計,解耦并重構了容器資源和網絡的復雜訪問邏輯。NCI基于Subnet來為PoD分配地址,以滿足業(yè)務組網編排時層次化的地址劃分需求。基于Subnet來分配IP地址大幅簡化了策略的配置管理。
基于VPC的業(yè)務隔離
在NCI的設計實現中,一個VPC對應Kubernetes集群中的一個Namespace;同一Namespace中的PoD通過組網編排,最終可以對外提供完整的業(yè)務,多個業(yè)務則對應由多個Namespace提供。NCI在Kubernetes資源池中引入VPC的實現,為企業(yè)運營提供了一致的資源粒度,使得容器網絡能夠被SDN控制器統(tǒng)一管理和編排。
總結
云杉網絡NCI容器方案采用雙層網絡的設計、通過控制器和插件的方式簡化容器網絡的配置、編排和管理,滿足企業(yè)容器資源池的按需彈性擴容和一致性的服務訪問,兼顧了混合云網絡的性能與靈活性。在編排層面向多中心、多資源池統(tǒng)一管控,為企業(yè)上云提供了自服務的混合云網絡,滿足了云數據中心網絡安全高效的要求,增強了企業(yè)云數據中心的延展性和應用的靈活部署與調度能力。