Code Monkey home page Code Monkey logo

ignition's Introduction

MediaDepot Ignition

Features

  • Consistent UserID/GroupID across all containers so that permissions are always correct
  • A DNS service that resolves containers with a nice hostname *.depot.lan from other computers on your home network, and for container to container communication
  • A JBOD disk management system with minimal configuration, and fully transparent recovery/failure. MergerFS acts like a simple file proxy, and removed disks can be read on other computers with no additional tooling
  • Ensure that virtual/JBOD disk is correctly mounted before allowing dependent programs/containers to start up.
  • A lightweight status dashboard for checking system metrics
  • A lightweight docker management system (Portainer) with customized templates for popular media-center applications
  • Samba (SMB) shares automatically served from JBOD disk.
  • Hard Disk montoring that uses S.M.A.R.T disk status to notify you if disks become unhealthy.
  • NVIDIA driver installation (optional)
  • MOTD dropins.

Usage

  1. Download bootable CoreOS image from https://coreos.com/os/docs/latest/booting-with-iso.html

  2. Create bootable USB/CD with contents of CoreOS image

  3. Start server and boot from CoreOS USB/CD.

  4. Determine the OS installation disk

    sudo fdisk -l
    
    # note, the boot disk will probably be /dev/loop0
  5. Copy the ignition remote config bootstrap file to the file system

    curl -O https://mediadepot.github.io/ignition/ignition-remote.json
  6. Begin CoreOS installation on specified disk, NOTE: specified disk will be reformatted

    sudo coreos-install -d /dev/sda -C stable -i ignition-remote.json
  7. On installation completion, remove bootable USB/CD

  8. Restart server

  9. Wait for CoreOS to start and cloud-init process to complete.

  10. Go to http://admin.depot.lan to see Portainer dashboard and begin setup.

Ignition Customizations for other users:

  • passwd.users.*.sshAuthorizedKeys.*
  • Have atleast 1 data drive (> 1TB) formatted with ext4
    • if your data disk isn't formatted yet, you can do so during installation, using cfdisk tool, or using "disk" attribute in
  • storage.filesystem.*

#prerequsites:

  • node has a static IP, using DHCP or route reservation

References

CT Transpiler

CoreOS configuration

SystemD

MergerFS

docker run -it -v `pwd`:/mounted centos /bin/bash
curl -O -L https://github.com/trapexit/mergerfs/releases/download/2.25.1/mergerfs-2.25.1-1.el7.x86_64.rpm
rpm2cpio mergerfs-2.25.1-1.el7.x86_64.rpm | cpio -idmv
cp -r bin/ /mounted/files/
  • mount -o "lowerdir=/usr/sbin,upperdir=/opt/sbin,workdir=/opt/sbin.workdir" -t overlay overlay /usr/sbin

Samba

Rancher Config

Portainer

Notifications

Smartmontools

ignition's People

Contributors

analogj avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.