Initial commit: Hermes Agent Skills collection
This commit is contained in:
@@ -0,0 +1,106 @@
|
||||
# RKE2 Cluster Topology & Inventory
|
||||
|
||||
## Cluster Nodes
|
||||
|
||||
| VMID | Name | Role | IP | Specs | RKE2 Service |
|
||||
|------|------|------|----|-------|-------------|
|
||||
| 118 | rke2-cp-01 | control-plane,etcd | 10.0.30.51 | 4c/12GB/40GB | rke2-server |
|
||||
| 130 | rke2-cp-02 | control-plane,etcd | 10.0.30.52 | 4c/12GB/40GB | rke2-server |
|
||||
| 129 | rke2-cp-03 | control-plane,etcd | 10.0.30.53 | 4c/12GB/40GB | rke2-server |
|
||||
| 128 | rke2-worker-01 | worker | 10.0.30.61 | 4c/12GB/80GB | rke2-agent |
|
||||
| 132 | rke2-worker-02 | worker | 10.0.30.62 | 4c/12GB/80GB | rke2-agent |
|
||||
| 131 | rke2-worker-03 | worker | 10.0.30.63 | 4c/12GB/80GB | rke2-agent |
|
||||
|
||||
- **RKE2 API VIP**: 10.0.30.50 (Keepalived on CP nodes)
|
||||
- **RKE2 version**: v1.35.2+rke2r1
|
||||
- **Container runtime**: containerd 2.1.5-k3s1
|
||||
- **OS**: Debian 12 (bookworm), kernel 6.1.0-44-amd64
|
||||
|
||||
## Management VM
|
||||
|
||||
| VMID | Name | IP | Specs |
|
||||
|------|------|----|-------|
|
||||
| 200 | mgmt-runner-01 | 10.0.30.X (DHCP) | 4c/4GB/30GB |
|
||||
|
||||
- Has `kubectl`, `helm`, `git`, GitHub Actions runner
|
||||
- Kubeconfig at `/root/.kube/config` (must set `KUBECONFIG=` explicitly)
|
||||
- GitHub Actions runner: `actions.runner.dsgrafiniert-iac-homelab.mgmt-runner-01`
|
||||
- OpenTofu state files in `/opt/tofu-state/`
|
||||
|
||||
## LoadBalancer IP Assignments
|
||||
|
||||
| Service | Namespace | LB IP | Ports |
|
||||
|---------|-----------|-------|-------|
|
||||
| Traefik Ingress | kube-system | 10.0.30.202 | 80, 443 |
|
||||
| PostgreSQL RW (CNPG) | postgres | 10.0.30.200 | 5432 |
|
||||
|
||||
**Cilium LB Pool**: 10.0.30.200 - 10.0.30.250 (48 IPs available)
|
||||
|
||||
**Removed**: K8s MariaDB MaxScale (was 10.0.30.201, namespace deleted
|
||||
2026-07-12). MariaDB Galera runs as native VMs, not in K8s.
|
||||
|
||||
**Non-K8s services on same subnet** (must not overlap with LB pool):
|
||||
- 10.0.30.50 = RKE2 API VIP (Keepalived)
|
||||
- 10.0.30.70 = MaxScale VIP (Keepalived, standalone Galera VMs)
|
||||
- 10.0.30.71-73 = Galera VMs (VM300-302)
|
||||
- 10.0.30.99 = Docker host (CT121)
|
||||
- 10.0.30.104 = Frigate (CT120)
|
||||
- 10.0.30.105 = Gitea (CT108)
|
||||
- 10.0.30.10 = Home Assistant (VM106)
|
||||
|
||||
## Operators & Add-ons
|
||||
|
||||
| Component | Namespace | Status |
|
||||
|-----------|-----------|--------|
|
||||
| Cilium CNI | kube-system | Running (eBPF, L2 announcements) |
|
||||
| Traefik Ingress | kube-system | Running (RKE2-bundled) |
|
||||
| CoreDNS | kube-system | Running (RKE2-bundled) |
|
||||
| Metrics Server | kube-system | Running |
|
||||
| External Secrets Operator | external-secrets | Running (1Password backend) |
|
||||
| CloudNativePG | cnpg-system | Running (PostgreSQL operator) |
|
||||
| Velero | velero | Running (S3 backup) |
|
||||
| Ceph CSI | kube-system | Running (RBD storage, external Ceph) |
|
||||
| ArgoCD | argocd | Running (GitOps, App-of-Apps) |
|
||||
|
||||
**Removed** (2026-07-12): MariaDB Operator + CRDs — namespace
|
||||
`mariadb` and `mariadb-operator` deleted. Galera runs as native VMs.
|
||||
|
||||
## ArgoCD Applications
|
||||
|
||||
| App | Sync Wave | Status | Description |
|
||||
|-----|-----------|--------|-------------|
|
||||
| root | — | Synced/Healthy | Root App-of-Apps |
|
||||
| operators | 0 | Synced/Healthy | CNPG, Velero operators |
|
||||
| databases | 1 | Synced/Healthy | PostgreSQL cluster |
|
||||
| backups | 2 | Synced/Healthy | Velero schedules |
|
||||
| memory | 3 | Unknown/Degraded | Qdrant + Ollama + Memory API |
|
||||
| cloudnativepg-operator | — | Synced/Healthy | CNPG operator |
|
||||
| velero-operator | — | Synced/Healthy | Velero operator |
|
||||
|
||||
**Removed** (2026-07-12): `mariadb-operator`, `mariadb-operator-crds`
|
||||
apps — deleted from repo, CRs cleaned up manually, namespaces + CRDs purged.
|
||||
|
||||
## IaC Repositories (Gitea at 10.0.30.105:3000)
|
||||
|
||||
| Repo | Content |
|
||||
|------|---------|
|
||||
| dominik/iac-homelab | Main IaC: 7 epics, OpenTofu, Ansible, ArgoCD apps |
|
||||
| dominik/observability-iac | Observability: Loki, Prometheus/Thanos, Grafana |
|
||||
| d.schoen/terraform-proxmox-k8s | Older Terraform-Proxmox-K8s work |
|
||||
| d.schoen/packer-proxmox | VM templates with Packer |
|
||||
|
||||
## PVE Node Map
|
||||
|
||||
| Node | IP | Notes |
|
||||
|------|----|-------|
|
||||
| proxmox1 | 10.0.20.10 | Cluster master (API endpoint) |
|
||||
| proxmox2 | 10.0.20.20 | Hosts CP-03, Worker-02 |
|
||||
| proxmox3 | 10.0.20.30 | Hosts CP-02, Worker-03, mgmt-runner |
|
||||
| proxmox4 | 10.0.20.40 | Hosts MaxScale VM, Galera VM |
|
||||
| proxmox5 | 10.0.20.50 | Hosts CP-01, Worker-01 |
|
||||
| proxmox6 | 10.0.20.60 | Hosts Gitea, Authelia, Paperless |
|
||||
| proxmox7 | 10.0.20.70 | Hosts monitoring, Omada, Ollama |
|
||||
| n5pro | 10.0.20.91 | AMD GPU, Frigate, Seafile, Immich |
|
||||
|
||||
**Note**: VM placements change with HA migration. Always discover
|
||||
current placement before operating (scan all nodes with `qm list`).
|
||||
Reference in New Issue
Block a user