Coder Social home page Coder Social logo

homelab's Introduction

Homelab

Homelab running on k3s


Tools

Necessary tools and their versions are managed using mise, This way we only have to run one command to install all the necessary tooling.

mise install

Creating new Cluster

  1. Provision individual machine with Debian
    • Ensure that the root user can be logged into using the SSH key
    • Change the hostname to match the naming scheme (s{n}-{cluster})
    • Install, start and enable Tailscale on each node
  2. Create a new folder in inventory named {cluster}, add the group_vars and hosts.ini file. Refer to each machine using the hostname
  3. Run the site.yml on the cluster to initialize the initial state

Running a single playbook on the cluster

This is done via Github Actions. The action will connect to the cluster with Ephemeral Key (this will expire one day, make sure to update). Then run it by providing the cluster name, and the playbook name to run (include the _ in the name, but exclude the .yml extension)

homelab's People

Contributors

voytechnology avatar

Watchers

 avatar

homelab's Issues

charts: External Secrets

Create a external secrets metachart which will create the ClusterExternalStore so we can pull secrets from it where needed rather than relying on creating them using Ansible.

charts: Deploy Kubechecks

Deploy Kubechecks so that we can see a diff of what will change in an application.

This will have to be vetted for secrets.

dub1: Vault

Deploy vault so that we can have a safe place to keep all configuration.

The secrets would probably still be stored in this repo but the values will be set in Vault and populated from there.

charts: Make the charts generic

Some of the configuration right now has hardcoded values for things like hostnames. These should be changed so that its easier to create new clusters.

s1-dub1: Large capacity HDDs

Get large capacity HDDs for the main storage server s1-dub1. They would probably have to be the same capacity and maybe 8TB+ for future proof and a good price/capacity ratio.

s1-dub1: 120GB boot SSD

Use the 120GB SSD for the boot drive. Since we will have a dedicated ZFS cache we can dedicate the whole drive just for the boot drive.

s2-dub1: 480GB boot SSD

Install the 480GB SSD as the boot device. Hopefully we will not be using this storage as all data will be stored on s1-dub1, but its still better to have more than less.

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.