Search All Patents in Edge Computing
Patent US10404523
Issued 2019-09-03
Data Center Management With Rack-controllers
Provided is a process, including: receiving, with a rack-controller, via a first network, an application program interface (API) request; based on the API request, selecting, with the rack-controller, one of a plurality of routines to effectuate control via the second network of at least some of the plurality of rack-mounted computing devices; executing, with the rack-controller, the selected routine and, as a result, sending one or more commands via the second network encoded in a second protocol different from the first protocol to effectuate an action indicated by the API request.
Much More than Average Length Specification
View the Patent Matrix® Diagram to Explore the Claim Relationships
USPTO Full Text Publication >
- 1. A tangible, non-transitory, machine-readable medium storing instructions that when executed by one or more processors of a rack-controller effectuate operations to control a plurality of rack-mounted computing devices, the operations comprising:
receiving, with the rack-controller, via a first network, at least two application program interface (API) requests, wherein:
the rack-controller is configured to control the plurality of rack-mounted computing devices mounted in a plurality of different rack units of one or more racks;
the rack-controller is configured to control the rack-mounted computing devices via a second network of one or more out-of-band networks distinct from an in-band network with which data is conveyed between rack-mounted computing devices or between rack-mounted computing devices and the internet and different from the first network;
the rack-controller includes a gateway between the first network and the second network; and
the at least two API requests are encoded in a first protocol;
based on a first one of the API requests, selecting, with the rack-controller, a first one of a plurality of routines to effectuate control via the second network of a first group of the plurality of rack-mounted computing devices, the plurality of routines including:
a first routine that reads a sensor via the second network on one of the rack-mounted computing devices;
a second routine that reads a sensor via the second network on the rack but not on one of the rack-mounted computing devices;
a third routine that scans computing devices on the second network and produces an inventory of the scanned computing devices on the second network;
a fourth routine by which a configuration of an extensible firmware interface (EFI) of a given one of the rack-mounted computing device is adjusted; and
a fifth routine by which a rack-mounted computing device is power cycled;
based on a second one of the API requests, selecting, with the rack-controller, a second one of the plurality of routines to effectuate control via the second network of a second group of the plurality of rack-mounted computing devices, wherein the second selected routine is the fifth routine; and executing, with the rack-controller,
the first selected routine and, as a result, sending one or more commands via the second network encoded in a second protocol different from the first protocol to effectuate an action indicated by the first API request, and
the second selected routine, and, as a result, sending one or more commands via the second network encoded in a third protocol different from the first protocol to power cycle the second group of the plurality of rack-mounted computing devices, receiving via the second network one or more power-on-self-test (POST) codes, and sending via the first network an indication of the one or more POST codes.
- 22. A method, comprising:
receiving, with a rack-controller, via a first network, at least two application program interface (API) requests, wherein:
the rack-controller is configured to control a plurality of rack-mounted computing devices mounted in a plurality of different rack units of one or more racks;
the rack-controller is configured to control the rack-mounted computing devices via a second network of one or more out-of-band networks distinct from an in-band network with which data is conveyed between rack-mounted computing devices or between rack-mounted computing devices and the internet and different from the first network;
the rack-controller includes a gateway between the first network and the second network; and
the at least two API requests are encoded in a first protocol;
based on a first one of the API requests, selecting, with the rack-controller, a first one of a plurality of routines to effectuate control via the second network of a first group of the plurality of rack-mounted computing devices, the plurality of routines including:
a first routine that reads a sensor via the second network on one of the rack-mounted computing devices;
a second routine that reads a sensor via the second network on the rack but not on one of the rack-mounted computing devices;
a third routine that scans computing devices on the second network and produces an inventory of the scanned computing devices on the second network;
a fourth routine by which a configuration of an extensible firmware interface (EFI) of a given one of the rack-mounted computing device is adjusted; and
a fifth routine by which a rack-mounted computing device is power cycled;
based on a second one of the API requests, selecting, with the rack-controller, a second one of the plurality of routines to effectuate control via the second network of a second group of the plurality of rack-mounted computing devices, wherein the second selected routine is the fifth routine; and executing, with the rack-controller,
the first selected routine and, as a result, sending one or more commands via the second network encoded in a second protocol different from the first protocol to effectuate an action indicated by the first API request, and
the second selected routine and, as a result, sending one or more commands via the second network encoded in a third protocol different from the first protocol to power cycle the second group of the plurality of rack-mounted computing devices, receiving via the second network one or more power-on-self-test (POST) codes, and sending via the first network an indication of the one or more POST codes.
- 23. A data center, comprising:
a data center management computing device communicatively coupled to an out-of-band network; and a plurality of racks, each rack comprising:
a plurality of rack-mounted computing devices within the plurality of racks and communicatively coupled to an in-band network;
a rack-controller communicatively coupled to the data center management computing device via the out-of-band network;
a powerline network having a rack-specific network address space independent of address spaces of other powerline networks of other racks;
a plurality of powerline modems each associated with a respective one or more of the rack-mounted computing devices; and
a tangible, non-transitory, machine-readable medium of the rack controller storing instructions that when executed by the rack-controller effectuate operations comprising:
receiving, with a rack-controller, via the out-of-band network, at least two requests;
based on a first one of the requests, selecting, with the rack-controller, a first one of a plurality of routines to effectuate control via the second network of a first group of the plurality of rack-mounted computing devices, the plurality of routines including:
first routine that reads a sensor via the second network on one of the rack-mounted computing devices;
a second routine that reads a sensor via the second network on the rack but not on one of the rack-mounted computing devices;
a third routine that scans computing devices on the second network and produces an inventory of the scanned computing devices on the second network;
a fourth routine by which a configuration of an extensible firmware interface (EFI) of a given one of the rack-mounted computing device is adjusted; and
a fifth routine by which a rack-mounted computing device is power cycled; and
based on a second one of the requests, selecting, with the rack-controller, a second one of the plurality of routines to effectuate control via the second network of a second group of the plurality of rack-mounted computing devices, wherein the second selected routine is the fifth routine; and
executing, with the rack-controller,
the first selected routine and, as a result, sending one or more commands via the powerline network to effectuate an action in response to the request, and
the second selected routine, and, as a result, sending one or more commands via the powerline network to power cycle the second group of the plurality of rack-mounted computing devices, receiving via the powerline network one or more power-on-self-test (POST) codes, and sending via the out-of-band network an indication of the one or more POST codes.
- 47. A tangible, non-transitory, machine-readable medium storing instructions that when executed by one or more processors of a rack-controller effectuate operations to control a plurality of rack-mounted computing devices, the operations comprising:
receiving, with the rack-controller, via a first network, an application program interface (API) request, wherein:
the rack-controller is configured to control the plurality of rack-mounted computing devices mounted in a plurality of different rack units of one or more racks;
the rack-controller is configured to control the rack-mounted computing devices via a second network, different from the first network;
the rack-controller includes a gateway between the first network and the second network;
the rack-controller is configured to cause a component identifier of a component of one of the rack-mounted computing devices to be read from a register of the component and conveyed via a system management bus of the one of the rack-mounted computing devices before being sent to the rack-controller via the second network;
the rack-controller is configured to receive the component identifier;
the second network is an out-of-band network distinct from an in-band network with which data is conveyed between rack-mounted computing devices or between rack-mounted computing devices and the internet; and
the API request is encoded in a first protocol;
based on the API request, selecting, with the rack-controller, one of a plurality of routines to effectuate control via the second network of at least some of the plurality of rack-mounted computing devices, the plurality of routines including:
a first routine that reads a sensor via the second network on one of the rack-mounted computing devices;
a second routine that reads a sensor via the second network on the rack but not on one of the rack-mounted computing devices;
a third routine that scans computing devices on the second network and produces an inventory of the scanned computing devices on the second network; and
a fourth routine by which a configuration of an extensible firmware interface (EFI) of a given one of the rack-mounted computing device is adjusted; and
executing, with the rack-controller, the selected routine and, as a result, sending one or more commands via the second network encoded in a second protocol different from the first protocol to effectuate an action indicated by the API request, wherein sending at least one of the commands comprises selecting a command corresponding to a capability of the component based on the component identifier.