Code Monkey home page Code Monkey logo

homelab's Introduction

Home Lab

My homelab

Submodules

Cloning this repo

git clone --recurse-submodules  [email protected]:UnconventionalMindset/homelab.git

Updating the submodules

git submodule update --remote

Notes

Nextcloud has been dropped for being too slow. TODO: automate the following provisioning even more and use GitOps TODO: make insecure files secure. They are currently left out of this repo for security reasons

Provisioning Guide

0. Cleanup

Remove info of old cluster

ssh-keygen -f "/home/jac/.ssh/known_hosts" -R "192.168.31.190"
ssh-keygen -f "/home/jac/.ssh/known_hosts" -R "192.168.31.191"
ssh-keygen -f "/home/jac/.ssh/known_hosts" -R "192.168.31.192"
rm -f ~/.kube/config

1. Terraform automations

terraform init
terraform apply

2. Ansible automations

cd ~/homelab/ansible-automations/
ansible-galaxy install -r requirements.yaml
ansible-playbook playbooks/coreos-packages.yaml
ansible-playbook playbooks/k8s-init.yaml
ansible-playbook playbooks/k8s-tools-setup.yaml
ansible-playbook playbooks/cni-plugins.yaml
export ANSIBLE_VAULT_PASSWORD_FILE="password.secret"

3. Local setup

Copy kubecfg locally

ssh -i ~/.ssh/coreos [email protected]
sudo su
cp ~/.kube/config /home/core/config
chmod 777 /home/core/config

In another terminal tab execute:

mkdir -p ~/.kube
scp -i ~/.ssh/coreos [email protected]:/home/core/config ~/.kube/config
chmod 600 ~/.kube/config
cd ~/homelab/k8s-templates

In the other tab, delete the k8s config:

rm /home/core/config

4. Proxmox setup

USB amd PCI passthrough:

Add in the worker node that has the zigbee USB:

USB Device - Vendor/Device ID: Use USB Vendor/Device ID

In the workers node add GPU passthrough, selecting: PCI Device - RAW

5. Apply all K8s resources

Continue the setup in the k8s-templates submodule

homelab's People

Contributors

unconventionalmindset 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.