classes:
  - name: rpi4-armbian-longhorn
    arch: arm64
    os: armbian-noble
    image: ${METIS_IMAGE_RPI4_ARMBIAN_LONGHORN}
    checksum: ${METIS_IMAGE_RPI4_ARMBIAN_LONGHORN_SHA256}
    k3s_version: v1.31.5+k3s1
    default_labels:
      hardware: rpi4
      node-role.kubernetes.io/worker: "true"
    root_overlay: overlays/rpi4-armbian-longhorn-root
  - name: rpi4-armbian-worker
    arch: arm64
    os: armbian-noble
    image: ${METIS_IMAGE_RPI4_ARMBIAN_LONGHORN}
    checksum: ${METIS_IMAGE_RPI4_ARMBIAN_LONGHORN_SHA256}
    k3s_version: v1.31.5+k3s1
    default_labels:
      hardware: rpi4
      node-role.kubernetes.io/worker: "true"
    root_overlay: overlays/rpi4-armbian-longhorn-root
  - name: rpi5-ubuntu-worker
    arch: arm64
    os: ubuntu-24.04-raspi
    image: ${METIS_IMAGE_RPI5_UBUNTU_WORKER}
    checksum: ${METIS_IMAGE_RPI5_UBUNTU_WORKER_SHA256}
    k3s_version: v1.33.3+k3s1
    default_labels:
      hardware: rpi5
      node-role.kubernetes.io/worker: "true"
  - name: rpi5-ubuntu-host
    arch: arm64
    os: ubuntu-24.04-raspi
    image: ${METIS_IMAGE_RPI5_UBUNTU_WORKER}
    checksum: ${METIS_IMAGE_RPI5_UBUNTU_WORKER_SHA256}
  - name: jetson-ubuntu-accelerator
    arch: arm64
    os: ubuntu-20.04-tegra
    image: ${METIS_IMAGE_JETSON_UBUNTU_ACCELERATOR}
    checksum: ${METIS_IMAGE_JETSON_UBUNTU_ACCELERATOR_SHA256}
    k3s_version: v1.33.3+k3s1
    default_labels:
      hardware: jetson
      jetson: "true"
      node-role.kubernetes.io/accelerator: "true"
  - name: rpi5-ubuntu-control-plane
    arch: arm64
    os: ubuntu-24.04-raspi
    image: ${METIS_IMAGE_RPI5_UBUNTU_CONTROL}
    checksum: ${METIS_IMAGE_RPI5_UBUNTU_CONTROL_SHA256}
    k3s_version: v1.33.3+k3s1
    default_labels:
      hardware: rpi5
      node-role.kubernetes.io/control-plane: "true"
    default_taints:
      - node-role.kubernetes.io/control-plane:NoSchedule
  - name: amd64-debian-worker
    arch: amd64
    os: debian-13
    image: ${METIS_IMAGE_AMD64_DEBIAN_WORKER}
    checksum: ${METIS_IMAGE_AMD64_DEBIAN_WORKER_SHA256}
    k3s_version: v1.33.3+k3s1
    default_labels:
      hardware: amd64
      node-role.kubernetes.io/worker: "true"

nodes:
  - name: titan-04
    class: rpi5-ubuntu-worker
    hostname: titan-04
    ip: 192.168.22.30
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-05
    class: rpi5-ubuntu-worker
    hostname: titan-05
    ip: 192.168.22.31
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-06
    class: rpi5-ubuntu-worker
    hostname: titan-06
    ip: 192.168.22.32
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-07
    class: rpi5-ubuntu-worker
    hostname: titan-07
    ip: 192.168.22.33
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-08
    class: rpi5-ubuntu-worker
    hostname: titan-08
    ip: 192.168.22.34
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-09
    class: rpi5-ubuntu-worker
    hostname: titan-09
    ip: 192.168.22.35
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-10
    class: rpi5-ubuntu-worker
    hostname: titan-10
    ip: 192.168.22.36
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-11
    class: rpi5-ubuntu-worker
    hostname: titan-11
    ip: 192.168.22.37
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-12
    class: rpi4-armbian-worker
    hostname: titan-12
    ip: 192.168.22.40
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-16
    class: rpi4-armbian-worker
    hostname: titan-16
    ip: 192.168.22.44
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-13
    class: rpi4-armbian-longhorn
    hostname: titan-13
    ip: 192.168.22.41
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
    longhorn_disks:
      - mountpoint: /mnt/astreae
        uuid: 6031fa8b-f28c-45c3-b7bc-6133300e07c6
        fs: ext4
      - mountpoint: /mnt/asteria
        uuid: cbd4989d-62b5-4741-8b2a-28fdae259cae
        fs: ext4
  - name: titan-15
    class: rpi4-armbian-longhorn
    hostname: titan-15
    ip: 192.168.22.43
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
    longhorn_disks:
      - mountpoint: /mnt/astreae
        uuid: f3362f14-5822-449f-944b-ac570b5cd615
        fs: ext4
      - mountpoint: /mnt/asteria
        uuid: 9c5316e6-f847-4884-b502-11f2d0d15d6f
        fs: ext4
  - name: titan-14
    class: rpi4-armbian-worker
    hostname: titan-14
    ip: 192.168.22.42
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-17
    class: rpi4-armbian-longhorn
    hostname: titan-17
    ip: 192.168.22.45
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
    longhorn_disks:
      - mountpoint: /mnt/astreae
        uuid: 1fecdade-08b0-49cb-9ae3-be6c188b0a96
        fs: ext4
      - mountpoint: /mnt/asteria
        uuid: 2fe9f613-d372-47ca-b84f-82084e4edda0
        fs: ext4
  - name: titan-19
    class: rpi4-armbian-longhorn
    hostname: titan-19
    ip: 192.168.22.47
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
    longhorn_disks:
      - mountpoint: /mnt/astreae
        uuid: 4890abb9-dda2-4f4f-9c0f-081ee82849cf
        fs: ext4
      - mountpoint: /mnt/asteria
        uuid: 2b4ea28d-b0e6-4fa3-841b-cd7067ae9153
        fs: ext4
  - name: titan-18
    class: rpi4-armbian-worker
    hostname: titan-18
    ip: 192.168.22.46
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-20
    class: jetson-ubuntu-accelerator
    hostname: titan-20
    ip: 192.168.22.20
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-21
    class: jetson-ubuntu-accelerator
    hostname: titan-21
    ip: 192.168.22.21
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-22
    class: amd64-debian-worker
    hostname: titan-22
    ip: 192.168.22.22
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBlmAXoeYVcX3zE+MSsvjB7gpAHRX0djiWYxoAuAFEQx brad.stein@bstein.dev
  - name: titan-db
    class: rpi5-ubuntu-host
    hostname: titan-db
    ip: 192.168.22.10
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBlmAXoeYVcX3zE+MSsvjB7gpAHRX0djiWYxoAuAFEQx brad.stein@bstein.dev
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIA48uzhL71cXeFDb+LGla1z0kFUYfWPWIgby7uaaGAaY hecate-tethys-forward
  - name: titan-24
    class: amd64-debian-worker
    hostname: titan-24
    ip: 192.168.22.26
    k3s_role: agent
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBlmAXoeYVcX3zE+MSsvjB7gpAHRX0djiWYxoAuAFEQx brad.stein@bstein.dev
  - name: titan-0a
    class: rpi5-ubuntu-control-plane
    hostname: titan-0a
    ip: 192.168.22.11
    k3s_role: server
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-0b
    class: rpi5-ubuntu-control-plane
    hostname: titan-0b
    ip: 192.168.22.12
    k3s_role: server
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
  - name: titan-0c
    class: rpi5-ubuntu-control-plane
    hostname: titan-0c
    ip: 192.168.22.13
    k3s_role: server
    k3s_url: https://192.168.22.7:6443
    k3s_token: ${METIS_K3S_TOKEN}
    ssh_user: atlas
    ssh_authorized_keys:
      - ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOb8oMX6u0z3sH/p/WBGlvPXXdbGETCKzWYwR/dd6fZb titan-bastion
