How do you organize rack?

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

katit

Active Member
Mar 18, 2015
427
29
28
53
Since I'm building new rackable server - I decided to organize my rack somewhat. I have old full size SUN rack. When I first got it - it was mostly as "safe box" for my DVR to deter thiefs at least for couple minutes.. There was couple shelfs and not much rack-mount equipment. Now I accumulated some stuff and start to wonder how to organize this stuff. Plus, I didn't know better where front and back and installed stuff to wrong end and now need to redo as network cables jammed by rear door :)

Stuff I have right now:
1. 1U router
2. 1U switch
3. 4U server
4. DVR - goes on shelf
5. Backup UPC - goes on shelf
6. Cable modem - shelf
7. Power +12v panel for DVR cameras (currently tied to inside wall)
8. Linksys Phone box (for VOIP) - small box zip tied to inside wall
9. 1U power strip mounted to opposite side of rack

Right now it's all kind of messy with wiring and stuff. There is about 25 CAT6 wires coming into rack.

How those racks usually organized? Is there certain preference from top to bottom?

Another thing is patch panels. What are they for? Should I get one? Right now I just crimp connectors on all cables. Any suggestions on organizing and making it more manageable - welcome.

Any tips/handly materials for organizing wires and stuff? I just got some velcro online, but maybe there is specialized accessories that can make it all look better?
 
Last edited:

pyro_

Active Member
Oct 4, 2013
747
165
43
I normally will put the patch panel and switch at the top of the rack. Followed by router , modem and pdu. Then it is a mix depending on what else I have going in and what I might have to regularly work on eg lab/test networking gear. Also try to keep the heavier items such as ups and large servers, disk arrays closer to the bottom of the rack
 
  • Like
Reactions: T_Minus

Diavuno

Active Member
Typically I'll do
Environmental monitor
Patch panels
switches
PDU
firewall(s)/routers
gateway(s)
servers
Storage
Batteries

Very often (keep in mind I manage small/medium business) I'll leave a few spall gaps. Most of my clients live in a 42U rack wth 6-10U networking 2-8U servers+storage.


On some setups I"ll do patches and switches on top of each other. the rest of the small items i'll put on the back.
(ALL my clients are 4 post... a requirement in CA!)
 
  • Like
Reactions: T_Minus

capn_pineapple

Active Member
Aug 28, 2013
356
80
28
I put heavy stuff in the bottom, and lightest stuff at the top.

Though i've been thinking about changing this to be switching/patching in the middle, UPS at the bottom, free for all for the rest.
 

canta

Well-Known Member
Nov 26, 2014
1,012
216
63
43
@Diavuno what Environmental monitoring stuff do you use? I've been debating DIY...
I missed this post :D

you can do DIY cheaply than buy on the shelf...

you need time to learning and gathering sensors and brush out to learn lua programming or ESP8266 arduino style
cheap way: ESP8266 ( WIFI is included :)).
getting to know on i2c and spi are the key :p



if you need many I/O, Arduino still the best, I picked learning arduino for 2 weeks with getting familiar in sensor/control and hunting cheap clone arduino/sensor on ebay :D

if you are hate DIY, buying on the shelf is an alternate. ITwatchdogs is pretty solid device to do monitoring on my experience
 

katit

Active Member
Mar 18, 2015
427
29
28
53
I really envy people who can go to the end with something. I'm more "theoretical" guy. I love to study and research. So, as soon as I know how to do it - I drop it half way done :) I have to fight myself and finish home improvement things as well as work projects. But with hobbies it is very rare when I get everything done 100% as planned. I'm enjoying learning how stuff "should" work but don't have patience to finish it..
 
  • Like
Reactions: Patriot

T_Minus

Build. Break. Fix. Repeat
Feb 15, 2015
7,641
2,058
113
I really envy people who can go to the end with something. I'm more "theoretical" guy. I love to study and research. So, as soon as I know how to do it - I drop it half way done :) I have to fight myself and finish home improvement things as well as work projects. But with hobbies it is very rare when I get everything done 100% as planned. I'm enjoying learning how stuff "should" work but don't have patience to finish it..
There's been studies on this... it's human nature that once you "talk" about doing something with a community / person / family member your brain gets the gratification "as-if" you've done it... there's probably some technical term for it but rest assured you're not the only one ;) ;) and the only way to really break the cycle is to actually complete the things, and realize the gratification of actually completing IS BETTER you just have to get there.... delayed gratification is something you can read studies on as well, very interesting stuff :) The kids and the marshmallow study come to mind :)
 

katit

Active Member
Mar 18, 2015
427
29
28
53
I have a good excuse. With own business, young kids and many hobbies it's hard to complete something other than work/home stuff. I'm into cars, shooting, machine shop in a basement, gardening, computers hardware is kind of half hobby half work, study Linux, etc. As I said I envy people who have just one hobby and stick with it :)

I'm just thinking when kids out - I will have all time in life to play with toys. And I'm glad I'm not the only one :) I do get gratification when I complete things, but in case of hobbies - if interest lost - I will not get any satisfaction, I feel like time will be wasted.
 
  • Like
Reactions: T_Minus

canta

Well-Known Member
Nov 26, 2014
1,012
216
63
43
I really envy people who can go to the end with something. I'm more "theoretical" guy. I love to study and research. So, as soon as I know how to do it - I drop it half way done :) I have to fight myself and finish home improvement things as well as work projects. But with hobbies it is very rare when I get everything done 100% as planned. I'm enjoying learning how stuff "should" work but don't have patience to finish it..
I am doing these and those, just for hobbies to level down my stress on work hahaha,

my next project: fixing internal house due on creativity of our 4 and 5 years old kids..
* replace many things in our bathroom
* steaming carpets
* replace broken drywall
* last not least, replace hardwood floor with non smooth surface. our oak hardwood floor is ugly with many dings and small holes due on kids are fun dropping toys and others stuff on hardwood floor.
* postponed , repaint the internal house, many drawing on the wall :D, I gave-up to stop them to draw on the wall 2 years ago...


back to the topic
my new closed server rack


 

katit

Active Member
Mar 18, 2015
427
29
28
53
I don't feel bad about being off-topic, I'm OP here :p

Those house projects are fun :) I am in a middle of living room renovation. Installed 11 can lights, wired in 2 zones with 3 way dimming switches. And it did work right away after I flipped breaker :) I still need to do lower wiring (outlets and network). But at least I got wiring for Wifi(UniFi) and camera going on on a ceiling.

Working in a attic is the worst working conditions I think. I had to get up around 5-6am to beat the heat and work for 2 hours at a time. I borrowed positive pressure full mask air filtering system from my buddy. And I still scratch from fiberglass :( Walking on joists with roof height around 5ft peak is not fun either.
 

canta

Well-Known Member
Nov 26, 2014
1,012
216
63
43
I don't feel bad about being off-topic, I'm OP here :p

Those house projects are fun :) I am in a middle of living room renovation. Installed 11 can lights, wired in 2 zones with 3 way dimming switches. And it did work right away after I flipped breaker :) I still need to do lower wiring (outlets and network). But at least I got wiring for Wifi(UniFi) and camera going on on a ceiling.

Working in a attic is the worst working conditions I think. I had to get up around 5-6am to beat the heat and work for 2 hours at a time. I borrowed positive pressure full mask air filtering system from my buddy. And I still scratch from fiberglass :( Walking on joists with roof height around 5ft peak is not fun either.

haha, thanks
I always plan to work on crawl space, attic, or garage during fall and winter time :D
outside those seasons are pretty hot and humid in my area.

I installed running cat 5E cable through every room 4 years ago.. not easy but fun and learn on how to make something worked. running cat 5E to the second story was the hardest on due on space constraint and needed to go to attic. my attic does not have fiberglass insulation :D, but crawl space has fiberglass insulation .. doh!!

frankly, I am a wired person, all must be wired, unless for laptops/phone/devices

Have fun!!!

thanks for letting me Out of topic :D
 
  • Like
Reactions: coolrunnings82

katit

Active Member
Mar 18, 2015
427
29
28
53
I have ranch house with unfinished basement. Very easy to run wire through the basement. I had one wall open and installed 4 inch plastic pipe that connects basement and attic. So, now fishing any camera wires is pretty easy when I need it. I do have CAT5e everywhere, but I add outlets as I need them as it's not a big deal to do.
 

TechIsCool

Active Member
Feb 8, 2012
263
117
43
Clinton, WA
techiscool.com
I missed this post :D

you can do DIY cheaply than buy on the shelf...

you need time to learning and gathering sensors and brush out to learn lua programming or ESP8266 arduino style
cheap way: ESP8266 ( WIFI is included :)).
getting to know on i2c and spi are the key :p



if you need many I/O, Arduino still the best, I picked learning arduino for 2 weeks with getting familiar in sensor/control and hunting cheap clone arduino/sensor on ebay :D

if you are hate DIY, buying on the shelf is an alternate. ITwatchdogs is pretty solid device to do monitoring on my experience
ESP is so much faster than the Arduino when we are talking about Temperature sensing only. Here is my code for the ESP8266 then I either grab it with Icinga2/Graphite and or Cacti depending on which host. I know I could optimize the serial numbers into memory and then check to see if they change but this works well for now.

Code:
--------------------------------------------------------------------------------
-- Dallas DS18B20 to JSON
-- Filename: init.lua
-- Copyright 2015 TechIsCool
--
-- Licensed under the Creative Commons Attribution 3.0 Unported License. For
-- details, see http://creativecommons.org/licenses/by/3.0/.
--------------------------------------------------------------------------------
require "dallas"

wifi.setmode(wifi.STATION)
wifi.sta.config("SSID","Password")
print(wifi.sta.getip())

    srv=net.createServer(net.TCP)
    srv:listen(80,function(conn)
      conn:on("receive",function(conn,payload)
        print(payload)
        conn:send(get_temp_data())
      end)
      conn:on("sent",function(conn) conn:close() end)
    end)

Code:
--------------------------------------------------------------------------------
-- Dallas DS18B20 to JSON
-- Filename: dallas.lua
-- Copyright 2015 TechIsCool
--
-- Licensed under the Creative Commons Attribution 3.0 Unported License. For
-- details, see http://creativecommons.org/licenses/by/3.0/.
--------------------------------------------------------------------------------

function get_temp_data()
    require('ds18b20')
    require('cjson')
    gpio0, gpio2 = 3, 4
    ds18b20.setup(gpio0)
  
    cjson_table = {}
  
    addrs = ds18b20.addrs()
    if (addrs ~= nil) then
      dev_c=table.getn(addrs)
      cjson_table["location"] = "Server Room"
      cjson_table["dev_count"] = tostring(dev_c)
      cjson_table["temperature"] = {}
      i=1
      while(i <= dev_c) do
        cjson_table["temperature"][i] = {}
        cjson_table["temperature"][i]["id"] = tostring(i)
        cjson_table["temperature"][i]["serial"] = table.concat({addrs[i]:byte(1,8)})
        cjson_table["temperature"][i]["celcius"] = tostring(ds18b20.readNumber(addrs[i],C))
        i = i+1
      end
    end
    -- Don't forget to release it after use
    ds18b20 = nil
    package.loaded["ds18b20"]=nil
    return(cjson.encode(cjson_table))
end
 

canta

Well-Known Member
Nov 26, 2014
1,012
216
63
43
ESP is so much faster than the Arduino when we are talking about Temperature sensing only. Here is my code for the ESP8266 then I either grab it with Icinga2/Graphite and or Cacti depending on which host. I know I could optimize the serial numbers into memory and then check to see if they change but this works well for now.

Code:
--------------------------------------------------------------------------------
-- Dallas DS18B20 to JSON
-- Filename: init.lua
-- Copyright 2015 TechIsCool
--
-- Licensed under the Creative Commons Attribution 3.0 Unported License. For
-- details, see http://creativecommons.org/licenses/by/3.0/.
--------------------------------------------------------------------------------
require "dallas"

wifi.setmode(wifi.STATION)
wifi.sta.config("SSID","Password")
print(wifi.sta.getip())

    srv=net.createServer(net.TCP)
    srv:listen(80,function(conn)
      conn:on("receive",function(conn,payload)
        print(payload)
        conn:send(get_temp_data())
      end)
      conn:on("sent",function(conn) conn:close() end)
    end)

Code:
--------------------------------------------------------------------------------
-- Dallas DS18B20 to JSON
-- Filename: dallas.lua
-- Copyright 2015 TechIsCool
--
-- Licensed under the Creative Commons Attribution 3.0 Unported License. For
-- details, see http://creativecommons.org/licenses/by/3.0/.
--------------------------------------------------------------------------------

function get_temp_data()
    require('ds18b20')
    require('cjson')
    gpio0, gpio2 = 3, 4
    ds18b20.setup(gpio0)
 
    cjson_table = {}
 
    addrs = ds18b20.addrs()
    if (addrs ~= nil) then
      dev_c=table.getn(addrs)
      cjson_table["location"] = "Server Room"
      cjson_table["dev_count"] = tostring(dev_c)
      cjson_table["temperature"] = {}
      i=1
      while(i <= dev_c) do
        cjson_table["temperature"][i] = {}
        cjson_table["temperature"][i]["id"] = tostring(i)
        cjson_table["temperature"][i]["serial"] = table.concat({addrs[i]:byte(1,8)})
        cjson_table["temperature"][i]["celcius"] = tostring(ds18b20.readNumber(addrs[i],C))
        i = i+1
      end
    end
    -- Don't forget to release it after use
    ds18b20 = nil
    package.loaded["ds18b20"]=nil
    return(cjson.encode(cjson_table))
end
Glad to know .

I am using arduino esp8266 ide.
I prefer c/c++ style.

I am using mqtt lib for esp8266.

I alwysa hardcoded Dallas address since static.

Arduino due is more powerful than old esp8266 microprocessor.

The most valuable is very cheap. I bought 14 bucks for 7 of esp1. The price went up to 3 bucks each for esp1. I assume many hunting esp1 due on standard 8 pins configuration.

Esp can not beat I/o expansion.. I used most of the I/o on arduino mega and promini.
 

TechIsCool

Active Member
Feb 8, 2012
263
117
43
Clinton, WA
techiscool.com
Glad to know .

I am using arduino esp8266 ide.
I prefer c/c++ style.

I am using mqtt lib for esp8266.

I always hardcoded Dallas address since static.

Arduino due is more powerful than old esp8266 microprocessor.

The most valuable is very cheap. I bought 14 bucks for 7 of esp1. The price went up to 3 bucks each for esp1. I assume many hunting esp1 due on standard 8 pins configuration.

Esp can not beat I/o expansion.. I used most of the I/o on arduino mega and promini.
The reason for serial numbers being dumped out to json is for the fact you know which temperature sensor failed. I have found that on some of my networks where they are either abused or cut by 3rd parties you can tell which one dropped. Also means that the order in which the data is returned does not matter. Since a module could be replaced I never have to go in and update code it just works.

I also prefer c/c++ better than lua which feels so obfuscated sometimes.

Also there is nothing wrong with using a atmel chip with the ESP as a Serial Bridge. Still cheaper then WIZ5100 but then again I do like wired networks better than wireless.
 

canta

Well-Known Member
Nov 26, 2014
1,012
216
63
43
The reason for serial numbers being dumped out to json is for the fact you know which temperature sensor failed. I have found that on some of my networks where they are either abused or cut by 3rd parties you can tell which one dropped. Also means that the order in which the data is returned does not matter. Since a module could be replaced I never have to go in and update code it just works.

I also prefer c/c++ better than lua which feels so obfuscated sometimes.

Also there is nothing wrong with using a atmel chip with the ESP as a Serial Bridge. Still cheaper then WIZ5100 but then again I do like wired networks better than wireless.
ok, you have the reason to not to do static:D

on my scenario:
all dallas address are assigned to each location statically.
based on my knowledge, dallas lib will return NaN when dallas device has no response or error checksum. I am not worried on failing dallas, since I coded to handle that :).

serial bridge is a hack thing :D, I prefer SPI which reliable hahahah.

exactly, wired first. wireless is the last option..

I am running esp8266-esp1 for 1 week with dht22 sensor, the wifi connection seem ok and never froze.
I read on esp8266.com, some have issue with stability and my assumption is stack-heap collision :D or something wacky coding that hold processing sine esp8266 has background processing on WiFi.

I am off now since already mumbo-jumbo out of topic.