Turbo Mothership

Bare metal Kubernetes management cluster for provisioning infrastructure via Cluster API and Tinkerbell.

Deployment Flow

  1. Deploy k0s with Cilium CNI and OpenEBS storage
  2. Bootstrap ArgoCD, cert-manager, ingress-nginx, and sealed-secrets via Helm
  3. Pivot to ArgoCD for GitOps-managed applications
  4. Install Tinkerbell for bare metal provisioning (PXE, DHCP, workflows)
  5. Install CAPI Operator (Cluster API lifecycle manager)
  6. Install CAPI Providers for infrastructure provisioning
  7. Install Netris controller and operator for fabric management
  8. Spin up virtual baremetals and switches to use as cluster resources

Directory Structure

├── bootstrap/           # Helm chart for initial cluster bootstrap
├── apps/                # ArgoCD Application manifests
│   ├── infra/           # Infrastructure apps (cert-manager, ingress-nginx, etc.)
│   ├── bm/              # Bare metal apps (tinkerbell)
│   ├── capi/            # Cluster API operator and providers
│   └── netris/          # Netris controller and operator
├── manifests/
│   └── capi-stack/      # CAPI provider manifests (k0smotron, tinkerbell)
└── ansible/
    ├── virtual-bm/      # Ansible playbooks for virtual baremetal lab
    └── netris-switches/ # Ansible for Netris switch VMs

Virtual Baremetal Lab

The ansible/virtual-bm/ directory contains playbooks for setting up a virtual bare metal environment for testing:

  • playbook.yml - Creates br-mgmt bridge (172.16.81.0/24) with NAT
  • create-vms.yml - Creates libvirt VMs with VirtualBMC for IPMI simulation
  • destroy-vms.yml - Tears down the virtual environment

Virtual BM Summary

VM MAC Address VBMC Port
vm1 52:54:00:12:34:01 6231
vm2 52:54:00:12:34:02 6232
vm3 52:54:00:12:34:03 6233

Netris

Netris provides network automation for bare metal infrastructure.

  • apps/netris/netris-controller.yaml - Netris Controller for network management UI
  • apps/netris/netris-operator.yaml - Kubernetes operator for Netris resources
  • ansible/netris-switches/ - Playbooks to create virtual Netris switch VMs

Default Credentials

netris-controller web UI:

  • Login: netris
  • Password: newNet0ps

Change these after first login.

Description
No description provided
Readme 57 KiB