Code Monkey home page Code Monkey logo

Hi πŸ‘‹, I'm Tim Bryant

Passionate about Observability, Site Reliability, DevOps, and Automation

Homelab:

I run a small yet exciting home-lab within my house, where I constantly experiment and gain valuable knowledge. Here's a list of the equipment I currently have in my home-lab:

  • Dell Optiplex 5000 PC: running Proxmox VE which hosts my k3s cluster
  • Two Beelink Mini PCs:
    1. running Proxmox VE (clustered with the Dell Optiplex 5000 PC)
    2. running several podman containers including my primary adguard-home for local dns and various cron jobs scripts
  • RasberryPI3: runs replica adguard-home and acts as qdevice to ensure Proxmox HA
  • Synology NAS (DS923+): for file storage
  • eero6 router & mesh network
  • TP-Link un-managed gig switch
  • APC UPS Pro 1500VA: for power protection
  • Old HP Laptop: running Ubuntu server and used for adhoc tasks

Within my home lab, I operate multiple open-source applications, tools, and services. The majority of these are deployed within my k3s cluster, although some are deployed using docker/podman or directly on the VMs. For example, I utilize podman for deploying and backing up my adguardhome instances, whereas my PostgreSQL and MySQL databases are directly deployed on the VMs. It is worth noting a few additional details:

  • I employ traefik as my reverse proxy for all components, including Kubernetes.
  • To access my home lab from anywhere, I rely on tailscale (highly recommended) as my VPN solution.
  • I use Lens to help manage my k3s cluster. Although I enjoy working with the terminal, I find GUIs useful for certain management tasks.
  • argocd serves as my gitops tool within the k3s cluster. Currently, approximately 75% of my services are deployed using argocd. However, I am cautious about relying entirely on argocd due to its potential impact on the cluster's performance.
  • To handle secrets, I utilize vault and the argocd-vault-plugin to inject secrets into pods as part of my gitops workflow.
  • For monitoring, I employ a combination of tools such as prometheus, grafana, and netdata. I previously used the kube-prometheus-stack but found it to be too resource intensive for my little cluster. Additionally, I rely on uptime-kuma to monitor the availability of my public facing services and websites. These are exposed to the internet either using CloudFlare Pages or Cloudflare Tunnels.
  • To handle local DNS, I rely on adguardhome, and for ad-blocking, I combine adguardhome with cloudflare.

Apart from my home-lab, I have deployed multiple servers within Oracle Cloud Infrastructure (OCI) to host various services. I use OCI over AWS or GCP because they have a very generous free tier that allows me run multiple servers without incurring any costs. These servers are deployed and manged using Terraform and Terraform Cloud.

Finally, here is a screenshot showing some (but not all) of the applications that are currently deployed in my home-lab:

If you wish to delve deeper into my home-lab's operations, I have GitHub repositories housing the manifests, docker-compose files, and scripts that facilitate most of my deployments. You can locate them here:

Connect with me:

timmyb824 timothy-bryant-7aa00026

Stats:

Β timmyb824

Metrics

Tim Bryant's Dev Card

Tim Bryant's Projects

Tim Bryant doesn’t have any public repositories yet.

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.