IP Library › Granted Patent US 10,708,082
Granted Patent B1
US 10,708,082 · App. 16/118,731 · Granted Jul 7, 2020

Unified control plane for nested clusters in a virtualized computing infrastructure

Inventors: Dinesh Bakiaraj (San Jose, CA); Yuvaraja Mariappan (San Jose, CA); Sachchidanand Vaidya (Santa Clara, CA); Rudramahesh S. Rugge (Los Altos, CA)
Assignee: Juniper Networks, Inc.
H04L12/4666H04L41/0806H04L45/586H04L45/64G06F9/455
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,708,082
App. No.
16/118,731
Granted
Jul 7, 2020
Kind
B1
Abstract

Techniques are disclosed for a unified control plane in a nested cluster environment. In one example, an underlay orchestrator for a virtualized computing infrastructure is configured to provision, in an underlay cluster of one or more servers, an overlay cluster of one or more overlay nodes. Each of the overlay nodes is a workload of one of the servers and has a virtual network interface. Further, each server executes a virtual router and a virtual router agent for the virtual router for routing packets among virtual network interfaces of the overlay nodes executed by the server. A network controller is configured to configure virtual network sub-interfaces for workloads of the overlay nodes to enable communications among workloads executing in different overlay nodes. Each of the sub-interfaces is a virtual network sub-interface of one of the virtual network interfaces.

Claims (58)

1. A controller comprising one or more computing devices, wherein each of the one or more computing devices comprises processing circuitry coupled to a memory device, wherein the controller further comprises:

an underlay orchestrator for a virtualized computing infrastructure, wherein the underlay orchestrator is configured for execution by the processing circuitry, and wherein the underlay orchestrator is configured to:

provision, in an underlay cluster of one or more servers, an overlay cluster of one or more overlay nodes, wherein each of the one or more overlay nodes is a workload of one of the one or more servers and has a virtual network interface,

wherein each server of the one or more servers executes a virtual router and a virtual router agent for the virtual router for routing packets among virtual network interfaces of the overlay nodes executed by the server; and

a network controller configured to:

receive, from a network controller manager of a master overlay node that orchestrates workloads of the one or more overlay nodes, a request to create virtual network sub-interfaces for workloads of the one or more overlay nodes; and

configure, in response to receiving the request from the network controller manager, virtual network sub-interfaces for the workloads of the one or more overlay nodes to enable communications among workloads executing in different overlay nodes, wherein each of the virtual network sub-interfaces is a sub-interface of one of the virtual network interfaces.

2. The controller of claim 1 , wherein, to configure the sub-interfaces, the network controller is further configured to configure the virtual network interfaces with unique virtual network sub-interface identifiers for the virtual network sub-interfaces.

3. The controller of claim 2 , wherein each of the unique sub-interface identifiers for the virtual network sub-interfaces comprises a unique Media Access Control (MAC)-based Virtual Local Area Network (VLAN) identifier for a VLAN of the one or more overlay nodes.

4. The controller of claim 1 , wherein each of the virtual routers is configured to:

receive network traffic associated with the workloads, wherein the network traffic includes a virtual network interface identifier and a virtual network sub-interface identifier; and

forward, based on the virtual network interface identifier and the virtual network sub-interface, identifier, the network traffic to a workload of the one or more overlay nodes.

5. The controller of claim 4 , wherein each virtual router is further configured to remove a first header of the network traffic that includes the virtual network interface identifier prior to forwarding the network traffic to a virtual network interface of the workload of the one or more overlay nodes that corresponds to the virtual network interface identifier.

6. The controller of claim 5 , wherein each virtual router is further configured to:

remove a second header of the network traffic that includes the virtual network sub-interface identifier prior to forwarding the network traffic to a virtual network sub-interface for the workload of the one or more overlay nodes that corresponds to the virtual network sub-interface identifier.

7. The controller of claim 6 ,

wherein the virtual network interface identifier comprises a first virtual network interface identifier, the virtual network interface for the workload comprises a first virtual network interface for a first workload, the virtual network sub-interface identifier comprises a first virtual network sub-interface identifier, and the virtual network sub-interface comprises a first virtual network sub-interface for the first workload, and

wherein each virtual router is further configured to:

receive network traffic associated with the first workload; and

forward, based on a second virtual network interface identifier for a second virtual network interface for a second workload of the one or more overlay nodes and a second virtual network sub-interface identifier of a second virtual network sub interface of the second workload, the network traffic to a virtual router for the second virtual network.

8. The controller of claim 7 , wherein each virtual router is further configured to attach a first header to the network traffic that includes the second virtual network interface identifier prior to forwarding the network traffic to the second virtual router.

9. The controller of claim 8 , wherein each virtual router is further configured to attach a second header to the network traffic that includes the second virtual network sub-interface identifier prior to forwarding the network traffic to the second virtual router.

10. The controller of claim 1 , wherein the network controller is further configured to invoke a network plugin of the one or more overlay nodes to configure the virtual network sub-interfaces for the workloads of the one or more overlay nodes.

11. The controller of claim 1 ,

wherein the master overlay node comprises an overlay orchestrator,

wherein the network controller is configured to receive, from the overlay orchestrator, one or more events, wherein the one or more events comprise at least one of a Create, Read, Update, or Delete (CRUD) request, a networking request, or a policy request.

12. The controller of claim 1 , wherein the underlay cluster executes on one or more bare-metal servers, each of the one or more bare-metal servers comprising processing circuitry and a storage device.

13. A method comprising:

provisioning, by an underlay orchestrator of a controller for a virtualized computing infrastructure, an overlay cluster of one or more overlay nodes in an underlay cluster of one or more servers,

wherein each of the one or more overlay nodes is a workload of one of the one or more servers and has a virtual network interface,

wherein the underlay orchestrator is configured for execution by the processing circuitry, and

wherein each server of the one or more servers executes a virtual router and a virtual router agent for the virtual router for routing packets among virtual network interfaces of the overlay nodes executed by the server;

receive, by a network controller of the controller and from a network controller manager of a master overlay node that orchestrates workloads of the one or more overlay nodes, a request to create virtual network sub-interfaces for workloads of the one or more overlay nodes; and

configuring, by the network controller and in response to receiving the request from the network controller manager, virtual network sub-interfaces for the workloads of the one or more overlay nodes to enable communications among workloads executing in different overlay nodes, wherein each of the virtual network sub-interfaces is a sub-interface of one of the virtual network interfaces.

14. The method of claim 13 , wherein configuring the virtual network sub-interfaces comprises configuring, by the network controller, the virtual network interfaces with unique virtual network sub-interface identifiers for the virtual network sub-interfaces.

15. The method of claim 14 , wherein each of the unique sub-interface identifiers for the virtual network sub-interfaces comprises a unique Media Access Control (MAC)-based Virtual Local Area Network (VLAN) identifier for a VLAN of the one or more overlay nodes.

16. The method of claim 13 , further comprising configuring, by the network controller, each virtual router to:

receive network traffic associated with the workloads, wherein the network traffic includes a virtual network interface identifier and a virtual network sub-interface identifier; and

forward, based on the virtual network interface identifier and the virtual network sub-interface identifier, the network traffic to a workload of the one or more overlay nodes.

17. The method of claim 13 ,

wherein the workload of the one or more overlay nodes comprises a first workload, the virtual network interface identifier comprises a first virtual network interface identifier that specifies a first virtual network interface for the first workload, and the virtual network sub-interface identifier comprises a first virtual network sub-interface identifier that specifies a first virtual network sub-interface for the first workload, and

wherein the method further comprises configuring, by the network controller, each virtual router to:

receive network traffic associated with the first workload; and

forward, based on a second virtual network interface identifier for a second virtual network interface for a second workload of the one or more overlay nodes and a second virtual network sub-interface identifier of a second virtual network sub-interface of the second workload, the network traffic to a second virtual router for the second virtual network.

18. The method of claim 13 , wherein the underlay cluster executes on one or more bare-metal servers, each of the one or more bare-metal servers comprising processing circuitry and a storage device.

19. A system comprising:

a first computing device comprising processing circuitry coupled to a memory device,

wherein the first computing device executes one or more overlay minion nodes of an overlay cluster,

wherein each of the one or more overlay minion nodes has a virtual network interface and executes workloads,

wherein the first computing device further executes a virtual router and a virtual router agent for the virtual router for routing packets among virtual network interfaces of the one or more overlay minion nodes of the overlay cluster; and

a second computing device comprising processing circuitry coupled to a memory device,

wherein the second computing device is configured to execute an overlay orchestrator configured to orchestrate the workloads executed by the one or more overlay minion nodes of the overlay cluster,

wherein the second computing device is further configured to execute a network controller manager configured to cause a network controller to configure virtual network sub-interfaces for the workloads executed by the one or more overlay minion nodes of the overlay cluster, and

wherein the virtual router agent is configured to receive, from the network controller, network configuration data for the virtual network sub-interfaces for the workloads,

wherein the first computing device is further configured to execute a network module configured to:

obtain the network configuration data from the virtual router agent; and

based on the network configuration data, configure virtual network sub-interfaces for the workloads of the one or more overlay nodes to enable communications among workloads executing in different overlay nodes, wherein each of the virtual network sub-interfaces is a sub-interface of one of the virtual network interfaces.

20. The system of claim 19 , wherein the network module is further configured to, based on the network configuration data, configure the virtual network interfaces of the one or more overlay minion nodes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 31, 2018
From: BAKIARAJ, DINESH; MARIAPPAN, YUVARAJA; VAIDYA, SACHCHIDANAND; RUGGE, RUDRAMAHESH S.
To: JUNIPER NETWORKS, INC.
Reel/Frame 046765/0785 →
Cited By (90)
US 12,192,051 US 12,206,696 US 12,242,882 US 12,244,621 US 12,245,130 US 12,255,802 US 12,260,205 US 12,261,866 US 12,267,345 US 12,278,758 US 12,284,113 US 12,284,197 US 12,289,249 US 12,289,284 US 12,309,181 US 12,309,182 US 12,309,185 US 12,309,236 US 12,323,449 US 12,328,257 US 12,335,348 US 12,341,689 US 12,341,690 US 12,348,545 US 12,355,626 US 12,355,793 US 12,368,745 US 12,373,259 US 12,381,901 US 12,401,669 US 12,401,718 US 12,407,701 US 12,407,702 US 12,418,555 US 12,452,272 US 12,457,231 US 12,463,994 US 12,463,995 US 12,463,996 US 12,489,771 US 12,495,052 US 12,506,690 US 12,506,762 US 12,511,110 US 12,526,297 US 12,531,907 US 12,537,836 US 12,549,575 US 12,549,577 US 12,556,559 US 12,561,165 US 12,562,984 US 12,563,064 US 12,563,071 US 12,563,072 US 12,580,932 US 12,580,935 US 12,580,937 US 12,591,446 US 12,592,877 US 12,592,950 US 12,598,205 US 12,613,930 US 12,621,234 US 12,621,324 US 12,621,329 US 12,627,686 US 12,627,690 US 12,634,312 US 12,634,376 US 12,652,302 US 12,659,325 US 12,659,333 US 12,689,640 US 12,695,768 US 12,701,070 US 12,706,840 US 12,706,931 US 12,706,933 US 12,706,980 US 12,712,897 US 12,719,746 US 12,719,786 US 12,719,896 US 12,726,495 US 12,730,899 US 12,739,267 US 12,744,799 US 12,744,802 US 12,750,382