IP Library Patent Application 18050004
Patent Application
App. No. 18/050,004

CLUSTERING OF DATA PLANES ON A CONTROL PLANE

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 None
App. No.
18/050,004
Abstract

Disclosed embodiments are directed at systems, methods, and architecture for configuring data planes based on clusters of nodes. A control plane links a plurality of microservices for a microservice architecture application. Each microservice includes a data plane that serves traffic for the microservice from the control plane and is processed at a node of a plurality of nodes. The control plane links a subset of the plurality of nodes in a cluster, such that the cluster is associated with a related set of microservices and data planes. The control plane updates configurations of nodes in the cluster to a latest configuration. The control plane sends the latest configuration to each data plane of the cluster. Each data plane of the cluster caches the latest configuration on a local storage disk of an associated node.

Claims (47)

1 . A method comprising:

establishing a microservice architecture application including a plurality of microservices, each microservice configured to perform a piecemeal function of an overall application function, the plurality of microservices managed by an application control plane;

linking in a cluster, by the application control plane, a set of nodes associated with a subset of the plurality of microservices and a corresponding set of data planes;

updating, by the application control plane, configurations of nodes in the cluster executing at the application control plane to a latest configuration; and

sending, by the application control plane, the latest configuration to each of the corresponding data planes associated with the cluster, wherein each data plane caches the latest configuration on a local storage disk of an associated node in the cluster.

2 . The method of claim 1 , wherein the microservice architecture application includes a plurality of clusters of microservices, each cluster associated with one or more categories, each category associated with one or more of a service group of microservices that together perform one or more related processes for the microservice architecture application or a type of function performed by microservices associated with the category.

3 . The method of claim 1 , wherein the nodes in the set of nodes are distributed among different data centers, geographies, and/or time zones.

4 . The method of claim 1 , further comprising:

determining one or more of the microservices of the subset that have a plugin installed; and

pushing, by the application control plane, a new configuration for the plugin to the data planes of the one or more microservices of the subset.

5 . The method of claim 4 , wherein the data planes of the one or more microservices of the subset have a same major version.

6 . The method of claim 4 , wherein minor versions of plugins at the data planes of the one or more microservices of the subset are not newer than a version installed at the application control plane.

7 . The method of claim 1 , further comprising:

pushing, to the data planes of the subset of microservices, a new version of an application serviced by the subset of microservices, wherein the new version includes a new plugin.

8 . The method of claim 1 , further comprising:

in response to an action at the application control plane, triggering an update to the data planes of the subset of microservices, wherein the update identifies the action.

9 . A method comprising:

establishing, at a first data plane of a first microservice of a plurality of microservices in a distributed gateway architecture, communication with an application control plane that manages a microservice architecture application, each microservice of the plurality of microservices configured to perform a piecemeal function of an overall application function, wherein the first data plane is associated with a cluster of data planes;

receiving, from the application control plane, a latest configuration sent to each data plane associated with the cluster; and

caching, by the first data plane, the latest configuration on a local storage disk; and

accessing the configuration at the local storage disk to serve the first microservice.

10 . The method of claim 9 , further comprising:

responsive to the application control plane being down, sending, by the first data plane, a request to reestablish communication with the application control plane.

11 . The method of claim 9 , further comprising:

responsive to the application control plane being down, continuing, by the first data plane, to serve requests for the first microservice based on the cached configuration.

12 . The method of claim 9 , further comprising:

responsive to receiving, from the application control plane, a configuration update, determining whether the first data plane can enable requested features of the configuration update; and

responsive to determining that the configuration update does not include new features from a newer version at the application control plane, caching the configuration update at the local storage disk.

13 . The method of claim 9 , wherein the microservice architecture application includes a plurality of clusters of microservices, each cluster associated with one or more categories, each category associated with one or more of a service group of microservices that together perform one or more related processes for the microservice architecture application or a type of function performed by microservices associated with the category.

14 . The method of claim 9 , further comprising:

receiving, from the application control plane, an update identifying an action at the application control plane, the update sent in response to the action at the application control plane.

15 . A system comprising:

a microservice executing on a node; and

a memory having instructions stored thereon, that when executed cause the node to perform actions comprising:

establishing, at a first data plane of a first microservice of a plurality of microservices in a distributed gateway architecture, communication with an application control plane that manages a microservice architecture application, each microservice of the plurality of microservices configured to perform a piecemeal function of an overall application function, wherein the data plane is associated with a cluster of data planes;

receiving, from the application control plane, a latest configuration sent to each data plane of associated with the cluster; and

caching, by the first data plane, the latest configuration on a local storage disk; and

accessing the configuration at the local storage disk to serve the first microservice.

16 . The system of claim 15 , wherein the microservice architecture application includes a plurality of clusters, each cluster associated with one or more categories.

17 . The system of claim 16 , wherein each category is associated with a service group of microservices that together perform a purpose for the microservice architecture application.

18 . The system of claim 15 , the actions further comprising:

responsive to the application control plane being down, sending, by the first data plane, a request to reestablish communication with the application control plane.

19 . The system of claim 15 , the actions further comprising:

responsive to the application control plane being down, continuing, by the first data plane, to serve requests for the first microservice based on the cached configuration.

20 . The system of claim 15 , the actions further comprising:

responsive to receiving, from the application control plane, a configuration update, determining whether the first data plane can enable requested features of the configuration update; and

responsive to determining that the configuration update does not include new features from a newer version at the application control plane, caching the configuration update at the local storage disk.

Assignments (2)
SECURITY INTEREST Recorded Feb 28, 2025
From: KONG INC.
To: HSBC VENTURES USA INC.
Reel/Frame 070372/0963 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2023
From: SUN, DATONG; TALVENSAARI, AAPO; BAGDI, HARRY; ZHOU, XUMIN; LUO, CHRONO; ZHOU, WANGCHONG; GUERRA, JAVIER
To: KONG INC.
Reel/Frame 063507/0163 →