{"id":113,"date":"2023-07-01T02:13:10","date_gmt":"2023-06-30T20:43:10","guid":{"rendered":"https:\/\/hill9.org\/journal\/?p=113"},"modified":"2023-08-14T15:43:15","modified_gmt":"2023-08-14T10:13:15","slug":"home-lab-rack-accessories","status":"publish","type":"post","link":"https:\/\/hill9.org\/journal\/2023\/07\/01\/home-lab-rack-accessories\/","title":{"rendered":"Rack &#038; Accessories for Linux Kernel Development Lab"},"content":{"rendered":"\n<p>After enjoying the benefits of having a full-fledged hardware lab for Linux development at work, it became apparent that I needed to build at least some of the capabilities of a systems development lab at home. In a series of posts, I am sharing what I built, how I sourced different components and how I put this together. In this first part, I will focus on the 19&#8243; rack and its organization.<\/p>\n\n\n\n<p>The starting requirement list at this point in time was the following :<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Compact 19&#8243; rack where I could fit in multiple test computers (small devices, servers)<\/li>\n\n\n\n<li>Avoid having to convert the storage room into a &#8220;datacenter&#8221; room which would require cabling and air-conditioning<\/li>\n\n\n\n<li>Multi-architecture &#8211; have at least ARM, x86 and RISC-V as development machines<\/li>\n\n\n\n<li>Top of the rack switch and private network to isolate testing network traffic from my home network (gigabit cat 6)<\/li>\n\n\n\n<li>Serial console capabilities for all devices with a terminal server &#8211; absolutely necessary for Linux kernel and open source platform software development<\/li>\n\n\n\n<li>Remote power cycling facility, for the same reasons as #5<\/li>\n\n\n\n<li>An electronics workbench where I could do minor work with boards or components<\/li>\n\n\n\n<li>Well organized shelf for components and tools<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>The Rack<\/strong><\/h2>\n\n\n\n<p>I bought a 12U Legrand Valrack 19&#8243; wall mounted network rack (600mm depth) instead of a floor mounted server rack and converted it to a floor mounted rack. Server racks typically have 1000 mm depth and would have required me to convert the storage room in the house in order to house the rack. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"473\" src=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-1024x473.png\" alt=\"\" class=\"wp-image-130\" srcset=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-1024x473.png 1024w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-300x139.png 300w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-768x355.png 768w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-1536x710.png 1536w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-2048x946.png 2048w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-850x393.png 850w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>My go-to vendor for datacenter equipment is <a rel=\"noreferrer noopener\" href=\"https:\/\/goo.gl\/maps\/e9oNyMxECjER2JoBA\" target=\"_blank\">Railton Electronics &amp; Telecom<\/a>. They are based on S. P. Road, Bangalore. Since the network rack is wall mounted by design, I modified it with a set of lockable wheels to make it a floor mounted rack.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"473\" src=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_131737-1024x473.jpg\" alt=\"\" class=\"wp-image-174\" srcset=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_131737-1024x473.jpg 1024w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_131737-300x139.jpg 300w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_131737-768x355.jpg 768w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_131737-1536x710.jpg 1536w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_131737-2048x946.jpg 2048w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_131737-850x393.jpg 850w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>These are <a href=\"https:\/\/www.amazon.in\/gp\/product\/B07GQHK217\" target=\"_blank\" rel=\"noreferrer noopener\">SWIIFT Polyurethane PU Swivel Caster Wheels with 360 Degree Top Plate, 2-inch<\/a>. Since network racks do not come with the provision for wheels, I had drill the holes and fasten the wheels with 8mm 1&#8243; nuts and bolts myself.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Top of the rack switch<\/strong><\/h2>\n\n\n\n<p>I am using a <a rel=\"noreferrer noopener\" href=\"https:\/\/www.amazon.in\/gp\/product\/B0723DT6MN\" target=\"_blank\">Mikrotik CSS326-24G-2S+RM 24 port Gigabit Ethernet switch<\/a> as the TOR switch. I also set up a router for the private subnet in the rack (<a rel=\"noreferrer noopener\" href=\"https:\/\/www.amazon.in\/gp\/product\/B07F7HDRKX\" target=\"_blank\">MikroTik hEX S Gigabit Ethernet Router with SFP Port &#8211; RB760iGS<\/a>) in such a way that the machines in the rack can be accessed from the home network and the rack systems had internet access, but the local traffic is within the subnet.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"155\" src=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-1-1024x155.png\" alt=\"\" class=\"wp-image-135\" srcset=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-1-1024x155.png 1024w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-1-300x46.png 300w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-1-768x116.png 768w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-1-1536x233.png 1536w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-1-2048x311.png 2048w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-1-850x129.png 850w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Instead of making patch cords myself, I am using <a href=\"https:\/\/www.amazon.in\/gp\/product\/B0B77FY25D\" target=\"_blank\" rel=\"noreferrer noopener\">iVoltaa Ethernet Cable CAT6A Cable Dual Shielded (SF\/UTP) Professional Series &#8211; 10Gigabit\/Sec LAN Network\/High Speed Internet Cable, 550MHZ.<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Power supply<\/strong><\/h2>\n\n\n\n<p>For now, I am using multiple 6A power connections from wall sockets into the rack to power different devices inside instead of single PDU drawing 16A. Since most of the devices planned for the rack are fairly low power, this would work fine. All the ARM and RISC-V devices as well as the switch is powered by this power strip at the back of the rack. The larger servers are connected to 6A sockets on the wall in order to not overdraw current on one single socket.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"196\" src=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-2-1024x196.png\" alt=\"\" class=\"wp-image-139\" srcset=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-2-1024x196.png 1024w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-2-300x57.png 300w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-2-768x147.png 768w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-2-1536x293.png 1536w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-2-2048x391.png 2048w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-2-850x162.png 850w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Remote power cycling<\/strong><\/h2>\n\n\n\n<p>For remote power cycling, I am using <a rel=\"noreferrer noopener\" href=\"https:\/\/www.amazon.in\/gp\/product\/B09PNLDYFM\" target=\"_blank\">Wipro smart plugs<\/a> and <a rel=\"noreferrer noopener\" href=\"https:\/\/www.amazon.in\/gp\/product\/B0974PKL46\" target=\"_blank\">Wipro Smart Extensions<\/a>. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"473\" height=\"1024\" src=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-3-473x1024.png\" alt=\"\" class=\"wp-image-140\" srcset=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-3-473x1024.png 473w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-3-139x300.png 139w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-3-709x1536.png 709w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-3-300x650.png 300w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/06\/image-3.png 749w\" sizes=\"auto, (max-width: 473px) 100vw, 473px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"473\" src=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_145504-1024x473.jpg\" alt=\"\" class=\"wp-image-176\" srcset=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_145504-1024x473.jpg 1024w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_145504-300x139.jpg 300w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_145504-768x355.jpg 768w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_145504-1536x710.jpg 1536w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_145504-2048x946.jpg 2048w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230630_145504-850x393.jpg 850w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>They can be controlled by Wipro&#8217;s own mobile app or <a href=\"https:\/\/play.google.com\/store\/apps\/details?id=com.tuya.smartlife&amp;hl=en&amp;gl=US\" target=\"_blank\" rel=\"noreferrer noopener\">Smart Life<\/a> app. I opted to use Smart Life app because I am working on a side project to control these power sockets from Linux command line using <a href=\"https:\/\/pypi.org\/project\/tinytuya\/\" target=\"_blank\" rel=\"noreferrer noopener\">TinyTuya.<\/a> That project is not yet complete.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"527\" height=\"1024\" src=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/image-1-527x1024.png\" alt=\"\" class=\"wp-image-146\" srcset=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/image-1-527x1024.png 527w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/image-1-154x300.png 154w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/image-1-768x1494.png 768w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/image-1-790x1536.png 790w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/image-1-300x583.png 300w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/image-1.png 834w\" sizes=\"auto, (max-width: 527px) 100vw, 527px\" \/><\/figure>\n\n\n\n<p>When needed, power cycling can be done from the Smart Life app.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Electronics workstation<\/strong><\/h2>\n\n\n\n<p>This is fairly basic &#8211; a grounded ESD mat, a silicone soldering mat and magnifying light. <\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"612\" src=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_015557-1024x612.jpg\" alt=\"\" class=\"wp-image-177\" srcset=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_015557-1024x612.jpg 1024w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_015557-300x180.jpg 300w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_015557-768x459.jpg 768w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_015557-1536x918.jpg 1536w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_015557-2048x1224.jpg 2048w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_015557-850x508.jpg 850w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>I was also able to find a very nice component organizer box on <a rel=\"noreferrer noopener\" href=\"https:\/\/www.amazon.in\/gp\/product\/B0BVBPZXRN\" target=\"_blank\">Amazon<\/a> and together with a desk shelf, I keep my tools and components organized.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"977\" src=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_020154-1024x977.jpg\" alt=\"\" class=\"wp-image-178\" srcset=\"https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_020154-1024x977.jpg 1024w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_020154-300x286.jpg 300w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_020154-768x733.jpg 768w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_020154-1536x1465.jpg 1536w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_020154-850x811.jpg 850w, https:\/\/hill9.org\/journal\/wp-content\/uploads\/2023\/07\/20230701_020154.jpg 1905w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Other stuff<\/strong><\/h2>\n\n\n\n<p>For display, keyboard and mouse, I am using a 4 port KVM switch (4K HDMI with USB type C for keyboard\/mouse), of which, two ports are used for two personal computers I use. The third one provides display\/keyboard\/mouse for any device in the rack and the fourth one provides the same for any device I am experimenting with on the workbench.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>After enjoying the benefits of having a full-fledged hardware lab for Linux development at work, it became apparent that I needed to build at least some of the capabilities of a systems development lab at home. In a series of posts, I am sharing what I built, how I sourced different components and how I&#8230;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[6,3],"tags":[9],"class_list":["post-113","post","type-post","status-publish","format-standard","hentry","category-homelab","category-linux","tag-home-lab"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/hill9.org\/journal\/wp-json\/wp\/v2\/posts\/113","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hill9.org\/journal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hill9.org\/journal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hill9.org\/journal\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hill9.org\/journal\/wp-json\/wp\/v2\/comments?post=113"}],"version-history":[{"count":50,"href":"https:\/\/hill9.org\/journal\/wp-json\/wp\/v2\/posts\/113\/revisions"}],"predecessor-version":[{"id":535,"href":"https:\/\/hill9.org\/journal\/wp-json\/wp\/v2\/posts\/113\/revisions\/535"}],"wp:attachment":[{"href":"https:\/\/hill9.org\/journal\/wp-json\/wp\/v2\/media?parent=113"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hill9.org\/journal\/wp-json\/wp\/v2\/categories?post=113"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hill9.org\/journal\/wp-json\/wp\/v2\/tags?post=113"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}