infra/cluster
Graham McIntire 39bedb08d1
renumber infrastructure from 10.0.15.0/24 to 10.0.16.0/22 (hosts in 10.0.19.x)
Proxmox: node1-3 → 10.0.19.101-103
Talos cp1-3 → 10.0.19.1-3, workers → 10.0.19.4-6
K8s endpoint → VIP https://10.0.19.10:6443
Ansible: prom → 10.0.19.31, db → 10.0.19.30
Talos: added VIP block to controlplane.yaml base config
Promtail: Loki URL → 10.0.19.31
Docs: all references updated, talos4 removed
2026-07-18 08:28:47 -05:00
..
ceph-csi renumber infrastructure from 10.0.15.0/24 to 10.0.16.0/22 (hosts in 10.0.19.x) 2026-07-18 08:28:47 -05:00
cloudflared cloudflared: aggressive reconnects, always-pull latest, restricted PSS compliance 2026-07-16 08:48:53 -05:00
pangolin-newt.yaml fix vntx cnames 2026-01-16 09:25:46 -06:00
README.md renumber infrastructure from 10.0.15.0/24 to 10.0.16.0/22 (hosts in 10.0.19.x) 2026-07-18 08:28:47 -05:00

Talos Cluster Applications

This directory contains Kubernetes application manifests for the Talos home cluster.

Cluster Information

  • Cluster: home-cluster (Talos)
  • Nodes: 6 (3 control plane + 3 workers)
  • IPs: 10.0.19.1-6
  • Kubernetes Version: v1.35.0
  • Talos Version: v1.12.1

Deployed Applications

Ceph CSI RBD Driver

Directory: ceph-csi/ Status: Deployed and Working Purpose: Direct integration with Proxmox Ceph storage for persistent volumes

Quick Commands:

# Check deployment
kubectl get pods -n ceph-csi-rbd

# Check StorageClass
kubectl get storageclass ceph-rbd

# Create a test PVC
kubectl apply -f ceph-csi/test-pvc.yaml

# View documentation
cat ceph-csi/README.md

Features:

  • Default StorageClass (ceph-rbd)
  • Volume expansion enabled
  • Topology-aware scheduling
  • Automatic volume deletion on PVC delete

Directory Structure

cluster/
├── README.md              # This file
└── ceph-csi/             # Ceph CSI RBD driver
    ├── README.md         # Detailed documentation
    ├── deploy.sh         # Deployment script
    ├── test-pvc.yaml     # Test resources
    └── *.yaml            # Kubernetes manifests

Adding New Applications

  1. Create a subdirectory for the application
  2. Add Kubernetes manifests
  3. Create a deploy.sh script if needed
  4. Document in a README.md
  5. Update this file with the application status

Common Operations

Check All Deployments

kubectl get deployments --all-namespaces

Check All Storage

kubectl get pvc --all-namespaces
kubectl get pv
kubectl get storageclass

Check All Services

kubectl get svc --all-namespaces

Storage Options

  1. Ceph CSI (in progress) - Direct Proxmox Ceph integration
  2. Longhorn (alternative) - Self-hosted distributed storage
  3. Local Path (simple) - Node-local storage only

Networking

  • CNI: Flannel (default with Talos)
  • Ingress: Not yet deployed
  • Load Balancer: Not yet deployed

Next Steps

  1. Resolve Ceph CSI topology issues or switch to Longhorn
  2. Deploy ingress controller (Traefik or Nginx)
  3. Deploy cert-manager for automatic SSL
  4. Deploy monitoring stack (Prometheus/Grafana)
  5. Deploy logging stack (Loki/Promtail)