# US 11,451,450 B2 · Scalable control plane for telemetry data collection within a distributed computing system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 11,451,450 B2
- Document ID: US11451450B2
- Status: Granted
- Kind: B2
- Application number: 17/249,351
- Filed: 2021-02-26
- Published: 2021-12-30
- Granted: 2022-09-20
- Earliest claimed: 2020-06-30
- Assignees: Juniper Networks, Inc.
- Applicants: Juniper Networks, Inc.
- Inventors: Neeren Shripad Patki; Harshit Naresh Chitalia; Moitrayee Gupta
- Web page: https://patentgrep.com/patent/US11451450B2

## CPC

- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- G06F 9/5061: {Partitioning or combining of resources}
- G06F 16/2379: {Updates performed during online database operations; commit processing}
- H04L 41/042: comprising distributed management centres cooperatively managing the network
- H04L 41/046: comprising network management agents or mobile agents therefor
- H04L 41/0806: for initial configuration or provisioning, e.g. plug-and-play
- H04L 41/22: comprising specially adapted graphical user interfaces [GUI]
- H04L 43/045: for graphical visualisation of monitoring data
- H04L 43/065: related to network devices
- H04L 43/08: Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L 43/20: the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

An example control plane that is executed on one or more processors in a distributed computing system is configured to receive an indication of a node to be onboarded into the distributed computing system, wherein the node comprises one of a compute node or a network device node, to discover one or more compute resources or network device resources that are associated with the node, and to assign, based on the discovery, the node to a collector that is executed in the distributed computing system, wherein the collector is configured to collect real-time telemetry data for the node during operation of the node. The control plane is further configured to receive, from the collector, the real-time telemetry data for the node that is collected by the collector, and to output, for display, a visual representation of the real-time telemetry data for the node.

## Claims

### Claim 1

A method comprising:
receiving, by one or more processors of a distributed computing system, an indication of a node to onboard for the distributed computing system, wherein the one or more processors are configured to onboard a compute node associated with one or more compute resources and to onboard a network device node associated with one or more network device resources in the distributed computing system, and wherein the node comprises one of the compute node or the network device node;
assigning, by the one or more processors, the node to one of a compute node collector or a network device node collector of the distributed computing system based on whether the node comprises the one of the compute node or the network device node;
receiving, by the one or more processors, telemetry data for the node that is collected over a period of time by the one of the compute node collector or the network device node collector assigned to the node; and
outputting, by the one or more processors and for display, a visual representation of the telemetry data for the node.

### Claim 2 (depends on 1)

The method of claim 1, wherein receiving the indication of the node to onboard for the distributed computing system comprises receiving, by the one or more processors and from a client device, a request to onboard the node for the distributed computing system.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
outputting, by the one or more processors and for display at the client device, a graphical dashboard that includes a visual representation of one or more nodes in the distributed computing system,
wherein outputting the visual representation of the telemetry data for the node comprises outputting, by the one or more processors and for display at the client device, the visual representation of the telemetry data for the node within the graphical dashboard.

### Claim 4 (depends on 2)

The method of claim 2, further comprising:
receiving, by the one or more processors and from the client device, a request to configure one or more alarms associated with the telemetry data for the node.

### Claim 5 (depends on 1)

The method of claim 1, wherein the one or more processors execute a control plane comprising one or more services, wherein the one or more services each include one or more pods that are configured to execute at least one respective application or function, and wherein the one or more services comprise at least one of:
one or more dashboard services that at least output the visual representation of the telemetry data for the node;
one or more controller services that at least assign the node to the one of the compute node collector or the network device node collector;
a data manager service that at least receives the telemetry data for the node;
a database service that at least stores the telemetry data for the node;
one or more adapter services that at least discover the one or more compute resources or the one or more network device resources associated with the node; or
a message service that at least enables communication between the one or more services of the control plane.

### Claim 6 (depends on 5)

The method of claim 5,
wherein (i) when the node comprises the compute node, the compute node collector is executed on the compute node, and the one or more controller services assign the compute node collector to the compute node, or
wherein (ii) when the node comprises the network device node, the network device node collector is executed on another node within the distributed computing system, and the one or more controller services assign the network device node collector to the network device node.

### Claim 7 (depends on 5)

The method of claim 5,
wherein the control plane is deployed in a single-node mode or a high-availability mode, and
wherein (i) when the control plane is deployed in the single-node mode, the one or more services of the control plane are executed on a single controller node of the distributed computing system, or (ii) when the control plane is deployed in the high-availability mode, each of the one or more services of the control plane executes in one of an active-active mode or an active-passive mode.

### Claim 8 (depends on 7)

The method of claim 7,
wherein the control plane is deployed in the high-availability mode,
wherein the data manager service executes in the active-active mode, and
wherein one pod of the one or more pods of the data manager service is instantiated on the node for execution to receive the telemetry data for the node.

### Claim 9 (depends on 8)

The method of claim 8, wherein one of the one or more pods of the data manager service is executed on a plurality of nodes of the distributed computing system to receive respective telemetry data for each of the plurality of nodes.

### Claim 10 (depends on 1)

The method of claim 1,
wherein the one of the compute node collector or the network device node collector is executed on either the node or another node within the distributed computing system, and
wherein assigning the node to the one of the compute node collector or the network device node collector comprises providing, by the one or more processors, information associated with the one or more compute resources or the one or more network device resources associated with the node.

### Claim 11 (depends on 1)

The method of claim 1,
wherein the one or more compute resources or the one or more network device resources associated with the node include one or more of a connection or a communication interface associated with the node, and
wherein the node comprises one of a bare-metal server or a virtual machine.

### Claim 12

A computing system comprising:
one or more processors; and
at least one computer-readable storage medium storing instructions that, when executed, cause the one or more processors to:
receive an indication of a node to onboard for a distributed computing system, wherein the instructions cause the one or more processors to onboard a compute node associated with one or more compute resources and to onboard a network device node associated with one or more network device resources in the distributed computing system, and wherein the node comprises one of the compute node or the network device node;
assign the node to one of a compute node collector or a network device node collector of the distributed computing system based on whether the node comprises the one of the compute node or the network device node;
receive telemetry data for the node that is collected over a period of time by the one of the compute node collector or the network device node collector assigned to the node; and
output, for display, a visual representation of the telemetry data for the node.

### Claim 13 (depends on 12)

The computing system of claim 12, wherein the instructions stored on the at least one computer-readable storage medium further cause the one or more processors to:
output, for display at a client device, a graphical dashboard that includes a visual representation of one or more nodes in the distributed computing system,
wherein the instructions stored on the at least one computer-readable storage medium that cause the one or more processors to output the visual representation of the telemetry data for the node cause the one or more processors to output, for display at the client device, the visual representation of the telemetry data for the node within the graphical dashboard.

### Claim 14 (depends on 12)

The computing system of claim 12, wherein the instructions stored on the at least one computer-readable storage medium cause the one or more processors to execute a control plane comprising one or more services, wherein the one or more services each include one or more pods that are configured to execute at least one respective application or function, and wherein the one or more services comprise at least one of:
one or more dashboard services that are configured at least to output the visual representation of the telemetry data for the node;
one or more controller services that are configured at least to assign the one of the compute node collector or the network device node collector;
a data manager service that is configured at least to receive the telemetry data for the node;
a database service that is configured at least to store the telemetry data for the node;
one or more adapter services that are configured at least to discover the one or more compute resources or the one or more network device resources associated with the node; or
a message service that is configured at least to enable communication between the one or more services of the control plane.

### Claim 15 (depends on 14)

The computing system of claim 14,
wherein (i) when the node comprises the compute node, the compute node collector is executed on the compute node, and the one or more controller services assign the compute node collector to the compute node, or
wherein (ii) when the node comprises the network device node, the network device node collector is executed on another node within the distributed computing system, and the one or more controller services assign the network device node collector to the network device node.

### Claim 16 (depends on 14)

The computing system of claim 14,
wherein the control plane is configured to be deployed in a single-node mode or a high-availability mode, and
wherein (i) when the control plane is deployed in the single-node mode, the one or more services of the control plane are executed on a single controller node of the distributed computing system, or (ii) when the control plane is deployed in the high-availability mode, each of the one or more services of the control plane is configured to execute in one of an active-active mode or an active-passive mode.

### Claim 17 (depends on 16)

The computing system of claim 16,
wherein the control plane is deployed in the high-availability mode,
wherein the data manager service is configured to execute in the active-active mode, and
wherein one pod of the one or more pods of the data manager service is instantiated on the node for execution to receive the telemetry data for the node.

### Claim 18 (depends on 17)

The computing system of claim 17, wherein one of the one or more pods of the data manager service is configured to execute on a plurality of nodes of the distributed computing system to receive respective telemetry data for each of the plurality of nodes.

### Claim 19 (depends on 12)

The computing system of claim 12,
wherein the one of the compute node collector or the network device node collector is executed on either the node or another node within the distributed computing system, and
wherein the instructions stored on the at least one computer-readable storage medium that cause the one or more processors to assign the node to the one of the compute node collector or the network device node collector further cause the one or more processors to provide information associated with the one or more compute resources or the one or more network device resources associated with the node.

### Claim 20

A computer-readable storage medium storing instructions that are executable by at least one processor to:
receive an indication of a node to onboard for a distributed computing system, wherein the instructions are executable by the at least one processor to onboard a compute node associated with one or more compute resources and to onboard a network device node associated with one or more network device resources in the distributed computing system, and wherein the node comprises one of the compute node or the network device node;
assign the node to one of a compute node collector or a network device node collector of the distributed computing system based on whether the node comprises the one of the compute node or the network device node;
receive telemetry data for the node that is collected over a period of time by the one of the compute node collector or the network device node collector assigned to the node; and
output, for display, a visual representation of the telemetry data for the node.
