omni-talos

SKILL.md

Omni + Proxmox Infrastructure Provider

Operational tooling for Talos Linux Kubernetes clusters via Sidero Omni with Proxmox infrastructure provider.

Provider Operations

Use ${CLAUDE_PLUGIN_ROOT}/skills/omni-talos/scripts/provider-ctl.py for provider management:

Task Command
View logs ${CLAUDE_PLUGIN_ROOT}/skills/omni-talos/scripts/provider-ctl.py --logs 50
Raw JSON logs ${CLAUDE_PLUGIN_ROOT}/skills/omni-talos/scripts/provider-ctl.py --logs 50 --raw
Restart provider ${CLAUDE_PLUGIN_ROOT}/skills/omni-talos/scripts/provider-ctl.py --restart

The provider runs on Foxtrot LXC (CT 200) — script handles SSH automatically.

Current Deployment

Component Location IP Endpoint
Omni Holly (VMID 101, Quantum) 192.168.10.20 omni.spaceships.work
Proxmox Provider Foxtrot LXC (CT 200, Matrix) 192.168.3.10 L2 adjacent to Talos VMs
Target Cluster Matrix (Foxtrot/Golf/Hotel) 192.168.3.{5,6,7} Proxmox API
Storage CEPH RBD vm_ssd pool

Quick Reference

omnictl commands:

omnictl cluster status <cluster-name>
omnictl get machines -l omni.sidero.dev/cluster=<cluster-name>
omnictl get machineclasses
omnictl apply -f machine-classes/<name>.yaml
omnictl cluster template sync -f clusters/<name>.yaml

Note: --cluster flag does not exist. Use label selector -l instead.

MachineClass minimal example:

metadata:
  namespace: default
  type: MachineClasses.omni.sidero.dev
  id: matrix-worker
spec:
  autoprovision:
    providerid: matrix-cluster
    providerdata: |
      cores: 4
      memory: 16384
      disk_size: 100
      storage_selector: name == "vm_ssd"
      node: foxtrot

See references/machine-classes.md for full field reference.

Key Constraints

Constraint Details
L2 adjacency Provider MUST be on same L2 as Talos VMs (Foxtrot LXC)
CEL type reserved Use name only for storage selectors
Hostname bug Use :local-fix tag, not :latest
No CP pinning Omni allows only 1 ControlPlane section per template
No VM migration Destroys node state — destroy/recreate instead
Split-horizon DNS omni.spaceships.work → 192.168.10.20 (LAN)

Reference Files

File Content
references/architecture.md Network topology, design decisions
references/machine-classes.md Full provider data fields (compute, storage, network, PCI)
references/provider-setup.md Provider config, compose setup, credentials
references/cluster-templates.md Cluster template structure, patches
references/cel-storage-selectors.md CEL syntax and patterns
references/debugging.md Common issues
references/recovery-procedures.md Recovery from stuck states
references/proxmox-permissions.md API token setup
references/omnictl-auth.md Authentication methods

Examples

File Description
examples/machineclass-ceph.yaml CEPH storage
examples/machineclass-local.yaml Local LVM
examples/cluster-template.yaml Complete cluster
examples/proxmox-gpu-worker.yaml GPU passthrough
examples/proxmox-storage-node.yaml Storage node
examples/proxmox-worker-multi-net.yaml Multi-network
Weekly Installs
2
GitHub Stars
14
First Seen
14 days ago
Installed on
gemini-cli2
opencode2
codebuddy2
github-copilot2
codex2
kimi-cli2