Worklog: Micro Server v2

Discussion in 'Modding Worklogs' started by cokeeffekt, Jul 2, 2013.

  1. cokeeffekt

    cokeeffekt Member

    Joined:
    May 1, 2006
    Messages:
    301
    So its about time for the latest ideas for my new file server. Currently im facing performance and storage issues.

    Current Server
    - Intel ITX Mobo Atom CPU 4 gb ram
    - 5x 3tb, 1x 2tb, and 64gb ssd for OS no raids.
    - in a Lian Li PC-Q08B case

    Nothing overly special.

    OS: Debian Squeeze
    Current server Roles
    - Webserver
    - usenet client
    - media storage
    - samba for home sharing(RPI xmbc etc.) other misc jobs
    - backups/mutiple disks and remote for important stuff.

    The proposed new server
    - ITX mother board socket 1155 cpu (i5 or i7)
    - 16gb ram
    - 10x 3tb drives + ssd for OS

    Debian OS again, and i will be doing something fairly unique for the filesystem. More to come on that one.

    I will be building the new server completely separate, as i can't afford any downtime.

    Proposed Roles will be much the same, but more storage/more grunt.

    Now the hard part, i have been tinkering in my head and hunting down solutions, but i have come to the conclusion i will be sticking to the same case (Lian Li PC-Q08B, the size is just perfect), and will be cramming 10 drives, stock they wont take 10 but we can get around that.

    Lian Li PC-Q08B
    [​IMG]

    The case stock has a 140mm fan that is upright on the front of the case, the plan is to lay it back and mount 2 cages either side of it. each cage will hold 5 drives, mounted on there sides.
    [​IMG]
    [​IMG]

    I will be 3d printing the cages. I have designed the cages to be ridged enough to hold the weight of the drives. The existing hdd/cdrom cages will be removed from the case, to allow the cage to fit in there place.

    The case has arrived and i have a mockup cage printed, so will get onto some actual photos tonight.
     
    Last edited: Jul 3, 2013
  2. Bion1c

    Bion1c Member

    Joined:
    Jul 19, 2001
    Messages:
    1,189
    Location:
    Melbourne
    subbed ..

    interested to see these printed drive cages - good idea :thumbup:
     
  3. Acesi7

    Acesi7 Member

    Joined:
    May 25, 2009
    Messages:
    2,134
    Location:
    Melbourne, 3810
    Also subbed to see how the tray turn out.
     
  4. TheBradl3s

    TheBradl3s Member

    Joined:
    Sep 28, 2011
    Messages:
    86
    Location:
    Adelaide, Australia
    I do love seeing powerful servers with crazy amounts of storage shoved into small cases, keen on this! Subbed!
     
  5. cokeeffekt

    cokeeffekt Member

    Joined:
    May 1, 2006
    Messages:
    301
    Couple of updates after a few hours of printing and some tinkering with some hardware that showed up today.

    This thread is about to get picture heavy... and excuse the dirty fingernails, im rebuilding a carby at the moment, tried to scrub them clean before my photo shoot to no avail.

    SSD mount simple and works well.
    [​IMG]

    Cheap 2 port sata card (support port multipliers)
    [​IMG]

    Some tape to make the panel match the nice black case :)
    [​IMG]

    2 x Port multipliers 1:5
    [​IMG]

    3d printed Bracket for Port Multipliers
    [​IMG]

    Port multipliers all put together ready for me to find them a home in the case.
    [​IMG]

    Ok so now to some photos of the HDD Cage, this is only a quick print mock up but already im very happy with how it turned out, very strong, good air flow through the cage, and fits into the place i had planned for it. Although im still working on how it will be fixed to the case.
    [​IMG]
    [​IMG]
    [​IMG]

    HDDs slide in and out nicely and anchor firmly by a notch in the base. More then happy with the mockup, almost happy enough to leave them as they are.
     
  6. TheBradl3s

    TheBradl3s Member

    Joined:
    Sep 28, 2011
    Messages:
    86
    Location:
    Adelaide, Australia
    That's not a half bad idea with the SSD! :lol::thumbup:

    Keen to see more!
     
  7. cokeeffekt

    cokeeffekt Member

    Joined:
    May 1, 2006
    Messages:
    301
    Some more hardware arrived today, will post more pics tonight.

    I have been working on a method for my storage that isn't really a raid solution.

    Requirements
    - spaning storage easy to add another drive to the pool
    - customisable redundancy on folders (select level of redundancy per folder)
    - multiple size disks
    - light weight and simple config
    - easy way to replace drives with out loosing data or rebuilding a raid
    - catch deleted files from storage paths
    - if non redundant data dies then i want to know exactly what i lost.

    Solution
    - written in php
    - certain folders can have custom levels of redundancy ie one folder can recover from a single drive failure, where as another more important folder can recover from 3 drive failures.
    - stores files in storage points on each drive as a round robin style (highest percentage free gets priority)
    - runs as a daemon on the server so can be stopped if required
    - allows more storage to be added to the storage path regardless of filesystem
    - drives can go missing and come back with no inconvenience
    - keeps live updates on data and logs issues, missing files/paths
    - scalable, any size drive or file system, even usb disks can be used.

    I have written the following program that will handle all my requirements, keep in mind this is just for storing data, all though modifying and updating the data is more than possible in the current arrangement, its main purpose is storing media.

    To put it simply, you put the files in the put-path and it breaks them out into locations on the store-paths, leaving behind a link simple right? and when it hits a redundant folder it puts copies of the files onto other disks (based on its level of redundancy)

    I have been running tests on this software in VMs for some time and i am finally confident enough to put it into a live environment.

    Paste Bin of Code

    Any thoughts?, i know this is probably the wrong section to post this is just as much part of the build as anything else, and id like the work log to reflect it
     
  8. GumbyNoTalent

    GumbyNoTalent Member

    Joined:
    Jan 8, 2003
    Messages:
    3,994
    Location:
    Briz Vegas
  9. cokeeffekt

    cokeeffekt Member

    Joined:
    May 1, 2006
    Messages:
    301
    interesting, i wish i found this earlier. it pretty much does what mine does....
     
  10. Bion1c

    Bion1c Member

    Joined:
    Jul 19, 2001
    Messages:
    1,189
    Location:
    Melbourne
    no offence but i think it's pretty crazy writing your own solution to this, especially in php

    i mean, the whole idea of a server with redundancy is to keep the data safe, so running your own software layer on top of it (esp controlling redundancy) would be the weakest link in the chain. Bugs could have very bad consequences.

    personally if i had that (rather nice!) hardware I'd just create a single ZFS RAIDZ2 pool on it rather than fiddling with different levels.. although there are lot of packaged solutions out there that give you more customisation; like greyhole, nexenta, freenas etc
     
  11. cokeeffekt

    cokeeffekt Member

    Joined:
    May 1, 2006
    Messages:
    301
    yeh i understand a little crazy, tbh there is nothing wrong with it being written in php a lot of people see it being a web only language and cant seem to get past that i've been writing in it for a long time as well as python and pearl and php still comes back as my language of choice.

    The way i see it for home servers is there is data and then there is "cry" data. data which originated on the internet is easily replaceable so i see no need for wasting raid space on it. Then the "cry" data is the data that originated from my life photos, videos, code and other stuff. Im VERY stringent with this data and use crashplan to cover my ass, ive never lost anything so far (fingers crossed).

    If it doesn't work i can alway role over onto something else, looking a greyhole it essentially does the exact thing my program does, the only thing it has over mine is it has been tested a lot more.
     
  12. cokeeffekt

    cokeeffekt Member

    Joined:
    May 1, 2006
    Messages:
    301
    Sorry for the lapse in updates, been busy.

    So i have mocked up a stand off for the hdd cage, will print this weekend. This will lift the cage of the cage off the floor of the case, allow the air to flow through and out the base of the case from the stock vent holes.
    [​IMG]

    I still need to do the same for the top and mounting bracket to hold it in from the top.


    This is the cage sitting on the base of the case. Its obvious why it needs to be lifted up from the floor of the case.
    [​IMG]

    Hardware has showed up.
    Motherboard - Asrock H61M-ITX
    CPU - i5-3570K (i was aiming for an i7 but price couldn't justify it.)
    Ram - 2x 8G Single 1600 Patriot-S (one showed up and failed memtest will need to take one back under warranty :( )
    PSU - Antec EarthWatts- Platinum 650

    Ill get the gear in over the next few days and get some pics of the setup.
     
  13. Bion1c

    Bion1c Member

    Joined:
    Jul 19, 2001
    Messages:
    1,189
    Location:
    Melbourne
    looking good- you have the drives yet or waiting on delivery?

    do you have a 3d printer at home? you're inspiring me to maybe get one :p

    printing drive cages is awesome. was it hard to do up the 3d models for it?
     
  14. cokeeffekt

    cokeeffekt Member

    Joined:
    May 1, 2006
    Messages:
    301
    yeh i have a rep-rap prusa (ebay electronics/printed parts)

    I model in sketch up so very easy.

    Drives, are umm, im going to put what drives i have currently not being used in there first, and a couple i bought a second hand. i want to give my JPI program a good run before adopting it. Im not going to use greyhole, i dont like the idea of running everything through samba.
     
    Last edited: Jul 11, 2013
  15. cokeeffekt

    cokeeffekt Member

    Joined:
    May 1, 2006
    Messages:
    301
    A couple of updates.

    Printed lower raiser bracket

    [​IMG]

    Fitted to cage

    [​IMG]
    [​IMG]

    Hardware test fit install

    [​IMG]

    Drives are stable in cage, im more than happy with the strength of the cage. I spun up the fan to check air flow the gap between the drives seems to provide a nice rush of air from the 140mm fan :)

    More to come..
     
  16. Oblong Cheese

    Oblong Cheese Member

    Joined:
    Aug 31, 2001
    Messages:
    10,567
    Location:
    Brisbane
    How does 10 drives -> 2 SATA ports affect performance?
     
  17. Ratzz

    Ratzz Member

    Joined:
    Mar 13, 2013
    Messages:
    5,518
    Location:
    Cheltenham East 3192
    You model in Sketchup? Can I ask, I thought the 3D printer would require solids. Have you bought Sketchup Pro?

    I know I can export the files as .dae, which it seems the printers can handle, but surely they need to be solids?

    I like Sketchup, and the boss wants to buy a 3D printer, but I was worried I would have to learn a whole new software. Was looking at Blender since it is free and handles solids.
     
  18. cokeeffekt

    cokeeffekt Member

    Joined:
    May 1, 2006
    Messages:
    301
    Bah well, i see it made it to the front page of OCAU... i have still been going through the software install of the server. ill take some more pics of the upper brackets for the cage over the weekend. Im still not sure what ill be doing with the voids on the front of the case where the cdrom and usb ports used to be.

    I have only media drives on the port replicators, and the chances of me reading multiple media files at a time is slim, although the JPI software will randomly split all my files across the disks anyway, so chances are multiple request will go to different drives, and maybe a different port.

    BUT Im not sure just yet, im not overly fussed by this, my current server has only got sata 1 and it seems fine for what i am doing. Ill report back once i have more stats.

    Update on the JPI software, i have been running it while transferring nearly 2tb from my old server and it seems to be holding up better than i could have imagined, it is even distributing my files across all drives and leaving symlinks in place.
     
    Last edited: Jul 24, 2013
  19. cokeeffekt

    cokeeffekt Member

    Joined:
    May 1, 2006
    Messages:
    301
    There is a ruby plugin for sketchup that exports stls. some times its a bit dodgy but i fix them with mesh lab when they come in broken. Im sure blender would do a better job, but like you i dont want to learn something new unless i have to.
     
  20. shortielah

    shortielah Member

    Joined:
    Oct 13, 2010
    Messages:
    392
    Location:
    Brisbane
    Front page ^_^.

    Awesome work man, I'm assuming these were the parts you were hitting me up about a few months back?

    Looks damn solid TBH, also - I would be interested in trying out your software if I get a chance.
     

Share This Page