IP Library Granted Patent US 10,382,258
Granted Patent B2
US 10,382,258 · App. 15/660,763 · Granted Aug 13, 2019

Viral system discovery and installation for distributed networks

Inventors: Nina Tang (Saratoga, CA); Steven Lang (San Jose, CA); Artem Gavrilov (San Jose, CA)
Assignee: Western Digital Technologies, Inc.
H04L41/0803H04L67/1097H04L41/084H04L69/325
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,382,258
App. No.
15/660,763
Granted
Aug 13, 2019
Kind
B2
Abstract

An example implementation includes a system having a network configuration generator, a first computing rack, and a second computing rack. The network configuration receives network configuration information for a first plurality of nodes and a second plurality of nodes, and generates a network configuration file including network configuration information for the first plurality of nodes and the second plurality of nodes. The first plurality of nodes includes a first configuration node to receive the network configuration file, identify network configuration information for the first plurality of nodes in the network configuration file as being part of the first computing rack, and update network configuration for the first plurality of nodes based on the identified network configuration information for the first computing rack.

Claims (91)

1. A system comprising:

a first computing rack comprising a first plurality of nodes communicatively connected together in a first subnet of a network, wherein the first plurality of nodes includes a first configuration node configured to:

receive a network configuration file;

identify network configuration information for the first plurality of nodes in the network configuration file as being part of the first computing rack; and

update network configuration for the first plurality of nodes based on the identified network configuration information for the first computing rack; and

a second computing rack comprising a second plurality of nodes communicatively connected together in a second subnet of the network that is different from the first subnet of the network, wherein the second plurality of nodes includes a second configuration node configured to:

receive the network configuration file, wherein a proxy data router in the first plurality of nodes is configured to forward the network configuration file from the first subnet to the second configuration node in the second subnet;

identify network configuration information for the second plurality of nodes in the network configuration file as being part of the second computing rack; and

update network configuration for the second plurality of nodes based on the identified network configuration information for the second computing rack.

2. The system of claim 1 , wherein:

the first plurality of nodes and the second plurality of nodes are linked to an intermediate network; and

the first configuration node is further configured to:

determine that the second computing rack has been properly network configured and is communicatively accessible over the intermediate network; and

provide a distributed computing system comprising the first plurality of nodes and the second plurality of nodes as being network configured based on the determination that the second computing rack has been properly network configured and is communicatively accessible over the intermediate network.

3. The system of claim 2 , wherein:

updating network configuration for the second plurality of nodes includes configuring a public Layer-3 network address for a publicly accessible node of the second plurality of nodes; and

determining that the second computing rack has been properly network configured includes:

polling connectivity status to the publicly accessible node periodically until connectivity is established; and

querying the publicly accessible node regarding whether the second plurality of nodes have been properly network configured.

4. The system of claim 1 , wherein the network configuration file is system-wide and comprises Layer-3 network configuration information for the first plurality of nodes and the second plurality of nodes.

5. The system of claim 1 , wherein the first plurality of nodes and the second plurality of nodes form part of a distributed object storage service with a storage application programming interface (API) served from one or more of a first gateway node within the first plurality of nodes and a second gateway node within the second plurality of nodes.

6. The system of claim 5 , wherein the first configuration node is further configured to

authenticate a computing device to the system;

receive, from the computing device, confirmation of acceptance of a license agreement;

receive, from the computing device, a set of distributed object storage configuration information for the distributed object storage service;

apply the set of distributed object storage configuration information to the first plurality of nodes and the second plurality of nodes; and

activate use of the distributed object storage service by other computing devices on a connected network by enabling accessibility of the first gateway node and the second gateway node.

7. The system of claim 1 , further comprising:

a master node configured to:

receive network configuration information from the first plurality of nodes and the second plurality of nodes; and

generate the network configuration file including network configuration information for the first plurality of nodes and the second plurality of nodes.

8. The system of claim 7 , wherein the master node includes a browser-accessible application served from the first configuration node.

9. A computer-implemented method comprising:

uploading a network configuration file to a first configuration node and a second configuration node, wherein:

a first plurality of nodes is communicatively connected together in a first computing rack in a first subnet of a network;

a second plurality of nodes is communicatively connected together in a second computing rack in a second subnet of the network that is different from the first subnet of the network;

the first plurality of nodes includes the first configuration node;

the second plurality of nodes includes the second configuration node; and

a proxy data router in the first plurality of nodes forwards the network configuration file from the first subnet to the second configuration node in the second subnet,

identifying network configuration information for the first plurality of nodes in the network configuration file as being part of the first computing rack;

updating network configuration for the first plurality of nodes based on the identified network configuration information for the first computing rack;

identifying network configuration information for the second plurality of nodes in the network configuration file as being part of the second computing rack; and

updating network configuration for the second plurality of nodes based on the identified network configuration information for the second computing rack.

10. The computer-implemented method of claim 9 , wherein:

the first plurality of nodes and the second plurality of nodes are linked to an intermediate network; and

the method further comprises:

determining that the second computing rack has been properly network configured and is communicatively accessible over the intermediate network; and

providing a distributed computing system comprising the first plurality of nodes and the second plurality of nodes as being network configured based on the determination that the second computing rack has been properly network configured and is communicatively accessible over the intermediate network.

11. The computer-implemented method of claim 10 , wherein:

updating network configuration for the second plurality of nodes includes configuring a public Layer-3 network address for a publicly accessible node of the second plurality of nodes; and

determining that the second computing rack has been properly network configured includes:

polling connectivity status to the publicly accessible node periodically until connectivity is established; and

querying the publicly accessible node regarding whether the second plurality of nodes have been properly network configured.

12. The computer-implemented method of claim 9 , wherein the network configuration file is system-wide and comprises Layer-3 network configuration information for the first plurality of nodes and the second plurality of nodes.

13. The computer-implemented method of claim 9 , wherein the first plurality of nodes and the second plurality of nodes form part of a distributed object storage service with a storage application programming interface (API) served from one or more of a first gateway node within the first plurality of nodes and a second gateway node within the second plurality of nodes.

14. The computer-implemented method of claim 13 , further comprising:

authenticating a computing device to a system;

receiving, from the computing device, confirmation of acceptance of a license agreement;

receiving, from the computing device, a set of distributed object storage configuration information for the distributed object storage service;

applying the set of distributed object storage configuration information to the first plurality of nodes and the second plurality of nodes; and

activating use of the distributed object storage service by other computing devices on a connected network by enabling accessibility of the first gateway node and the second gateway node.

15. The computer-implemented method of claim 9 , further comprising:

receiving network configuration information for the first plurality of nodes and the second plurality of nodes; and

generating an updated network configuration file including network configuration information for the first plurality of nodes and the second plurality of nodes.

16. The computer-implemented method of claim 15 , wherein receiving the network configuration information and generating the updated network configuration file is performed through a browser-accessible application served from the first configuration node.

17. A system, comprising:

at least one processor;

at least one memory;

means for uploading a network configuration file to a first configuration node and a second configuration node, wherein:

a first plurality of nodes is communicatively connected together in a first computing rack in a first subnet of a network;

a second plurality of nodes is communicatively connected together in a second computing rack in a second subnet of the network that is different from the first subnet of the network;

the first plurality of nodes includes the first configuration node;

the second plurality of nodes includes the second configuration node; and

a proxy data router in the first plurality of nodes is configured to forward the network configuration file from the first subnet to the second configuration node in the second subnet,

means for identifying network configuration information for the first plurality of nodes in the network configuration file as being part of the first computing rack;

means for updating network configuration for the first plurality of nodes based on the identified network configuration information for the first computing rack;

means for identifying network configuration information for the second plurality of nodes in the network configuration file as being part of the second computing rack; and

means for updating network configuration for the second plurality of nodes based on the identified network configuration information for the second computing rack.

18. The system of claim 17 , wherein:

the first plurality of nodes and the second plurality of nodes are linked to an intermediate network; and

the system further comprises:

means for determining that the second computing rack has been properly network configured and is communicatively accessible over the intermediate network; and

means for providing a distributed computing system comprising the first plurality of nodes and the second plurality of nodes as being network configured based on the determination that the second computing rack has been properly network configured and is communicatively accessible over the intermediate network.

19. The system of claim 18 , wherein:

updating network configuration for the second plurality of nodes includes configuring a public Layer-3 network address for a publicly accessible node of the second plurality of nodes; and

determining that the second computing rack has been properly network configured includes:

polling connectivity status to the publicly accessible node periodically until connectivity is established; and

querying the publicly accessible node regarding whether the second plurality of nodes have been properly network configured.

20. The system of claim 17 , further comprising:

means for receiving network configuration information for the first plurality of nodes and the second plurality of nodes; and

means for generating the network configuration file including network configuration information for the first plurality of nodes and the second plurality of nodes.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Oct 16, 2024
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: RINGCENTRAL, INC.
Reel/Frame 068917/0024 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 052915 FRAME 0566 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 059127/0001 →
SECURITY INTEREST Recorded Feb 6, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052915/0566 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2019
From: HGST NETHERLANDS B.V.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 050003/0057 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 19, 2019
From: TANG, NINA; LANG, STEVEN; GAVRILOV, ARTEM
To: HGST NETHERLANDS B.V.
Reel/Frame 048640/0546 →
Continuity (2)
Provisional Application 62505107 · May 11, 2017
Related Publication 20180331895A1 · Nov 15, 2018