Project Update: Automated Mining OS Builder Docker Image

in blurt •  4 years ago 

Hello all. I just wanted to give a quick update on the project I'm working on.

Project Recap

The project is the Automated Mining OS Builder Docker Image

Motivation

I have needed to consistently install new operating systems for mining rigs. Often times, I install/provision custom software and configurations. It is to the point that now the operating itself may just as well be considered a new distribution. It can be pretty cumbersome to make the same configuration changes again and again. Also, installation is interactive and can be impacted by human error.

This project will allow configuration of the operating system among the following parameters:

  • Debian or Fedora
  • Version
  • Mining software
  • User configuration
  • Mining configuration (wallet, pool, algorithm, etc...)
  • Analytics (custom software)
  • Miner identifier

It is completely automated and runs within a docker container on a single command.

Update

Branches

I have several branches now for Fedora, Debian, and Ubuntu. This means I can produce several different operating systems. At this point, only a few options are booting. I can probably get any I want to boot, the trouble is supporting ROCM architecture. For mining ETH, ROCm is probably the best option; however, custom drivers and OpenCL libraries are difficult to get right. Even if they do load properly, performance isn't the best.

Variations

I have tried various automated solutions including Kickstarts (Fedora) and Live Build (Debian/Ubuntu).

Kickstarts

Kickstarts are the best right now. I can run a fedora distribution with kickstarts. I can configure just about anything reliably and boot reliably. Maintenance is also very nice.

Live Build

Live builds are good on Debian. I like the live build. It's not as good as kickstarts because I have to configure everything in separate files and this can be messy for maintenance. Ubuntu Live Builds do not work at all. In fact, I can't get Ubuntu to work period on anything. I have to wonder how Ubuntu LiveCDs get built at all. It seems like the biggest hassle in the world. Casper (initramfs utils) is very touchy. There are just so many things that can go wrong that I give up.

OpenStack Image Builder

This thing is really great. It seems like it's built with the same paradigm as Live Build. There are hooks and packaging configurations. It looks like OpenStack added a lot of structure to these things and refers to them as Elements. I like that. The structure makes maintenance really easy. The cross-platform nature of the tool is good too. I can run configurations for Fedora, Debian, and Ubuntu the same.

The only downside so far is that it doesn't work. LOL. There are weird build failures that suggest this stuff wasn't tested. Event out-of-the-box stuff like disk-image-create ubuntu vm. That should work out of the box (no questions). It doesn't. It fails on ubuntu or fedora or whatever. No matter how simple your requirements are, there's going to be some hacking required. No biggie. I've been pretty much doing it that way anyhow.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE BLURT!