A server and rack system includes at least one server rack; multiple server slots within the rack; multiple near field communication (nfc) tags; a server located within one of the server slots; an nfc reader within and powered by the server; and an entity that needs to receive locations of servers within racks of the system. Each of the multiple nfc tags is positioned on the rack so as to individually correspond, on a one-to-one basis, with each of the multiple server slots, and each of the nfc tags is programmed with an identifier of the specific rack and slot with which it corresponds, and the nfc reader is positioned such that, when power is supplied to the nfc reader by the server, the nfc reader will read the identifier that corresponds to the slot the server is located within and automatically communicate that identifier to the entity.
|
1. A server and rack system comprising:
at least one server rack;
multiple server slots within the at least one rack;
multiple near field communication (nfc) tags;
a server located within one of the multiple server slots;
an nfc reader contained within, and powered by the server; and
an entity that needs to receive locations of servers within racks of the system;
wherein each of the multiple nfc tags is positioned on the rack so as to individually correspond, on a one-to-one basis, with each of the multiple server slots, and each of the nfc tags is programmed with an identifier of the specific rack and slot with which it corresponds; and
wherein the nfc reader is positioned such that, when power is supplied to the nfc reader by the server, the nfc reader will automatically without human intervention read the identifier programmed into the nfc tag that corresponds to the slot the server is located within, without reading any adjacent slot and automatically communicate that identifier to the entity.
|
This disclosure relates generally to computer equipment configuration management and, more particularly, identification of the location of individual servers in racks.
Large server farms and cloud centers may have several thousand servers placed in racks. Today, various cloud based services need to consider locality of the servers in order to optimize their resiliency and performance. Therefore, it has become increasingly important for the server itself to know its location within the data center (rack # and U slot).
For example, Apache Hadoop is an open-source software framework for distributed storage and distributed processing of very large data sets on computer clusters built from commodity hardware. One of the requirements for Hadoop is that, for effective scheduling of work, every Hadoop-compatible file system should provide location awareness: the name of the rack where a worker node is located. Hadoop applications can use this information to ideally run work on the node where the data is located or, if not possible, ideally on the same rack and switch to reduce backbone traffic.
Likewise, such knowledge is needed in the OpenStack “SWIFT” architecture for the “ring” aspect because a ring represents a mapping between the names of entities stored on disk and their physical location. There are separate rings for accounts, containers, and one object ring per storage policy. When other components need to perform any operation on an object, container, or account, they need to interact with the appropriate ring to determine its location in the cluster.
Most conventional methods for identifying the locations of servers in racks are prone to errors, due to human error itself or mis-wiring.
Another approach involves separately installing physical contacts on the rack frame and a corresponding set of contacts on the server that form a physical connection between the two and allows the server to read its location via the contacts. However, this physical connection is a potential source of failure due to misalignment or degradation of the contacts over time as servers are inserted and removed.
Thus, there is an ongoing technological problem involving the need for a fully automatic way for a server to identify its location in a rack that is highly reliable, low cost and is not subject to physical degradation from use.
One aspect of this disclosure involves a server and rack system including at least one server rack, multiple server slots within the at least one rack, multiple near field communication (NFC) tags, a server located within one of the multiple server slots, and an NFC reader within and powered by the server. The system also involves an entity that needs to receive locations of servers within racks of the system. The system is configured such that each of the multiple NFC tags is positioned on the rack so as to individually correspond, on a one-to-one basis, with each of the multiple server slots, and each of the NFC tags is programmed with an identifier of the specific rack and slot with which it corresponds. The NFC reader is positioned such that, when power is supplied to the NFC reader by the server, the NFC reader will read the identifier programmed into the NFC tag that corresponds to the slot the server is located within and automatically communicate that identifier to the entity.
Advantageously, our solution eliminates the problems inherent with a physical connection. Still further, it can easily be retrofitted to existing racks. It is also automatic, so it eliminates the likelihood of human error.
The foregoing and following outlines rather generally the features and technical advantages of one or more embodiments of this disclosure in order that the following detailed description may be better understood. Additional features and advantages of this disclosure will be described hereinafter, which may form the subject of the claims of this application.
This disclosure is further described in the detailed description that follows, with reference to the drawings, in which:
This disclosure provides a technical solution to address the aforementioned problems.
As shown, and as is typical, the rack 100 further includes a mid-rack switch 104 mounted therein via which servers 102 within the rack can communicate with each other. In use, the rack 102 will also include a top rack switch (not shown) via which rack to rack communication can occur.
In accordance with our solution, the rack further includes multiple near field communication (NFC) tags 110 mounted either on an interior edge 112 of the frame 104 or, alternatively, on an interior side surface 114 of the rack 100. Each NFC 110 tag is programmed with an identifier of at least the rack 102 within which it resides, along with the specific slot within that rack 102 with which it corresponds. Thus, each NFC tag 110 will individually correspond, on a one-to-one basis, with a single slot and thereby uniquely identify each rack/slot combination. Advantageously, NFC tags are inexpensive and require no direct power source, so attachment to a rack 100 during manufacture is simple.
NFC tags and readers typically work on a frequency of 13.56 MHZ at a range of up to about 10 cm or less, but more practically at about 4 cm. There are multiple standards that govern NFC, for example ISO/IEC 18092/ECMA-340 and ISO/IEC 21481/ECMA-352, and any suitable NFC tag reader combination can be used. Since NFC 110 tags are commercially available from multiple sources and the programming of NFC tags 110 is also well known, those aspects will not be discussed herein.
Ideally, the NFC reader 200 position is also such that, when inserted into a rack, it cannot read NFC tag 110 for an adjacent slot.
Ideally, as shown in
Advantageously, it should be appreciated that, by using the NFC tag 110 and NFC reader 200, alignment between the two is not critical and no physical contact between the two is required, so the prospect of misalignment and wear present with physical contacts is eliminated.
The first scenario is from the standpoint of populating a new rack 100 with servers 102 or adding a new server 102 into an existing rack 100. With this scenario, one or more servers 102 are inserted into respective slot(s) in the rack 100 (Step 402). Once everything appropriate has been physically installed and connected, power is applied to the server(s) 102.
The second scenario is from the standpoint of a server 102 that is already installed in a rack 100 and operating. With this scenario, some entity requests that a server identify its location (Step 406). Depending upon the particular implementation, for example, the entity may be a Hadoop file system, part of a OpenStack Swift architecture, a program that needs to populate a configuration file or set up a data repository for use by Hadoop or Swift services, an inventory control program, a software installation program, etc.
Under both scenarios, following Step 404 or Step 406, power is applied to the NFC reader 200 of the server (Step 408). The NFC reader 200 then reads the NFC tag 110 for its slot within the rack 100 (Step 410), and, either directly or indirectly, reports its current rack and slot to the relevant (typically the requesting) entity.
Thus, it should now be appreciated that the system can automatically, and without human intervention, convey server rack and position within the rack without any human intervention. Moreover, if a server needs to be removed and a new one installed, there is no need for a person to modify wiring, change any settings or manually update any configuration or other file contents because the location of any server within the rack can be polled and will be known to be accurate.
Having described and illustrated the principles of this application by reference to one or more example embodiments, it should be apparent that the embodiment(s) may be modified in arrangement and detail without departing from the principles disclosed herein and that it is intended that the application be construed as including all such modifications and variations insofar as they come within the spirit and scope of the subject matter disclosed.
Griffith, Douglas, Makineedi, Sreenivas, Desai, Anand T., Muppala, Srinivasa R.
Patent | Priority | Assignee | Title |
11832416, | Sep 06 2022 | Nvidia Corporation | Motile tracking of datacenter components |
Patent | Priority | Assignee | Title |
7436303, | Mar 27 2006 | Hewlett Packard Enterprise Development LP | Rack sensor controller for asset tracking |
8674822, | Jun 04 2010 | Microsoft Technology Licensing, LLC | Low-cost high-fidelity asset tracking in data center facilities |
20070222597, | |||
20070250410, | |||
20090207022, | |||
20150256386, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Dec 18 2015 | DESAI, ANAND T | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 037404 | /0337 | |
Dec 18 2015 | GRIFFITH, DOUGLAS | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 037404 | /0337 | |
Dec 18 2015 | MAKINEEDI, SREENIVAS | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 037404 | /0337 | |
Dec 18 2015 | MUPPALA, SRINIVASA R | International Business Machines Corporation | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 037404 | /0337 | |
Jan 04 2016 | International Business Machines Corporation | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
May 25 2020 | REM: Maintenance Fee Reminder Mailed. |
Nov 09 2020 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Oct 04 2019 | 4 years fee payment window open |
Apr 04 2020 | 6 months grace period start (w surcharge) |
Oct 04 2020 | patent expiry (for year 4) |
Oct 04 2022 | 2 years to revive unintentionally abandoned end. (for year 4) |
Oct 04 2023 | 8 years fee payment window open |
Apr 04 2024 | 6 months grace period start (w surcharge) |
Oct 04 2024 | patent expiry (for year 8) |
Oct 04 2026 | 2 years to revive unintentionally abandoned end. (for year 8) |
Oct 04 2027 | 12 years fee payment window open |
Apr 04 2028 | 6 months grace period start (w surcharge) |
Oct 04 2028 | patent expiry (for year 12) |
Oct 04 2030 | 2 years to revive unintentionally abandoned end. (for year 12) |