Helios - HC2 - Or Microserver?

  • Good tip, had not thought of this when I set up my Dockers. Is it possible to move them without messing up the configs?


    One more try :) Did anyone try changing the root dir of the dockers after they were set up?
    I just discovered, that my resilio-sync container produces GB's in logs in a very short time and want to move this load to my hdd and away from my SD-Card.

  • Sure. And it's not the worst choice since for the performance of the 'OS drive' not sequential transfer rates (MB/s) are important but random I/O (IOPS). And SSDs even behind an USB2 port outperform even the fastest HDDs on earth if it's about IOPS.


    Dear @tkaiser If I couple the above with your recommendations on the SSDvsUSB pinned tread, though, I end up with some confusion in my mind. Not your fault, rather my noobishness !


    Let me try to recap in a scheme:


    I have a HC2 with OMV4 running from a microSD U-1 card. Docker folders are stored inside the SATA drive. A non-optimised approach. Which is why I'm looking here.


    My fundamental questions are:

    • should I move the OS to a more performant medium
    • should I use a more performant medium for Docker folders (too, or instead)
    • which media


    The 2 points above have 1 thing in common: both ideal media should focus on the same specialty, which is iops.


    From the medium standpoint, from your various post I got

    • USB flash sticks are in general less desirable then SSDs or SD cards, provided of course we are talking about "good" items (I won't paste here what makes an USB-SSD thing "good", etc).
    • on the other hand ("good") SSD >> SD, this seems clear.

    From the hw system standpoint (Odroid HC2)

    • Besides the "usual" SD slot, the HC2 only has 1 USB2 port. Plus the SATA port ofc.
    • Which is SD slot's interface speed ? Is it higher or lower than USB2 specs ?

    From the OS (OMV) standpoint

    • Would it be possible to (pre) partition the OS medium, allowing both one OS partition and one "fast config data" (Docker folders etc) on the same support?


    Summarising:

    • Should I bother at all about the OS part, or a high quality UHS-1 SD card already is OK ?
    • Supposing OS is already optimal on a good SD card, I think all I need is a good SSD hooked to the USB2 port to facilitate Docker data. Is this correct ?
    • In the opposite case, if moving away from the SD slot and onto USB2 grants the OS a much better life:
      • If OMV allows for two partitions on one medium - one dedicated to OS, the other addressable as a data drive - I would just need the same SSD drive as mentioned above, just partitioned. Correct ?
      • Should OMV not allow for system disk partitioning, is it a higher priority to move OS to a faster medium, or leave it on SD and instead adopt a faster medium for Docker folders?


    Thanks for your continued support!


    Ciao
    A.

  • Very sorry for multiple posting. The system returned an error while submitting and I retried a few times, with the above result. Would you please delete my duplicate posts? Thanks!!

  • Very sorry for multiple posting. The system returned an error while submitting and I retried a few times, with the above result. Would you please delete my duplicate posts? Thanks!!

    I took care of them. Read problem #4 here - https://forum.openmediavault.o…tions-to-common-problems/

    omv 5.5.12 usul | 64 bit | 5.4 proxmox kernel | omvextrasorg 5.4.2
    omv-extras.org plugins source code and issue tracker - github


    Please read this before posting a question.
    Please don't PM for support... Too many PMs!

  • My take on it:



    My fundamental questions are:

    • should I move the OS to a more performant medium
    • should I use a more performant medium for Docker folders (too, or instead)
    • which media

    1. No. Most of the OS runs from RAM. So the performance of the SD-card is not very relevant. However you might still want to replace the SD card with a A1 classed card. It has much better random access performance. But if you don't install dockers or other apps on the SD-card, then I doubt you will see any noticeable performance increase. Except perhaps during install/updates/backups/restores.


    2. Move the docker images AND configs to the SATA HDD. Preferably already when you first install docker GUI. (Docker base path!)


    3. A normal decent quality HDD should work fine. I used a 2.5" SSHD (Seagate FireCuda) on HC1 install.


    There is nothing (except cost, perhaps) to stop you from using several HC2. The HC2 is even built to stack nicely. Then you can have one or two HC2 as app-server(s) with SSDs running big and/or demanding dockers. One or two HC2s just for data storage. One or two HC2 just for for backups.


    HC2s have only 2 GB RAM. If you run several big dockers then that may be limiting and reduce performance. I haven't noticed anything yet... But if you have more than one HC2 then you can spread the load and share data over GbE.


    The app-server HC2s with SSD can have the root fs on the SSD and access data from the data storage HC2s. (See: nand-sata-install.) Possibly you might even want to use some more performant server as app-server(s).


    The data storage HC2s can have huge HDDs (I like 12 TB IronWolves) and may run a couple of dockers to take advantage of the local data storage. For instance run Emby to serve the media files stored on the same HC2.


    My setup is a little like this. With a GbE switch, a fan and a single big 12 volt PSU for all the HC2s as well as for the switch and the fan.


    The main problem I have is that I can't get caching working on the app-server HC2 with a SSD. I got a 500GB SSD with the intention to use a big chunk of that to cache the data storage HC2s. But it seems that Armbian/ARM OMV doesn't fully support use of FS-cache. And I haven't had time (or knowledge) to try figure out what is missing in order to recompile the kernel to allow FS-cache to work. But performance is pretty OK anyway.


    I use NFS between all HC2s, with autofs.

    Be smart - be lazy. Clone your rootfs.
    OMV 5: 9 x Odroid HC2 + 1 x Odroid HC1 + 1 x Raspberry Pi 4

  • Make a backup of the rootfs and try different variants. If you fail, try again. Report back what worked. See also:


    Move docker /var/lib/docker folder on external drive


    One way that is guaranteed to be successful is to reinstall.

    Well. I played around yesterday with my VM. On the test setup running the am64.iso it worked by copying the /var/lib/docker/ - folder to my HDD, mount it as a shared folder and change the docker-root-dir in the gui.
    Unfortunately this approach did not work on my HC2. ;(
    I'am afraid to crash my entire docker by manipulating e.g. /lib/systemd/system/docker.service
    I cirumvented the growing log - problem by moving the /var/lib/docker/containers - folder to the HDD and creating a symlink. Maybe on my next free weenkend I will go on and do a fresh install of my docker. Its just so annoying to reconfigure nextcloud again :/

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!