mirror of
https://github.com/dredx/prole.git
synced 2026-09-24 16:44:33 +00:00
- New acme role: installs acme.sh, issues certs for myrddin/merlin/gandalf via DNS-01 (name.com API), installs cert files to /etc/ssl/certs/prole/, sets up renewal cron. rc=2 (already valid) treated as ok. - New playbooks/acme.yml: runs acme role on myrddin (issues all 3 host certs) - New playbooks/certmgr.yml: cert-manager and letsencrypt-prod ClusterIssuer (HTTP-01/Traefik) for external endpoints (db/svc/api.prole.org) - Add vault references for name.com API creds to group_vars/all/vars.yml - Add prole_ssl_src_dir and prole_ssl_files to myrddin/merlin/gandalf host_vars Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
91 lines
3.0 KiB
YAML
91 lines
3.0 KiB
YAML
---
|
|
ansible_host: 10.0.0.6
|
|
|
|
netplan_static_enabled: true
|
|
netplan_static_iface: eth0
|
|
netplan_static_address: 10.0.0.6/24
|
|
netplan_static_gateway4: 10.0.0.1
|
|
netplan_static_nameservers:
|
|
- 10.0.0.1
|
|
|
|
# MariaDB primary (USB-backed)
|
|
|
|
# Permanent portable USB disk for MariaDB (merlin)
|
|
# - Disk: UUID=3669ddf4-5884-43ae-84b2-150ec117a2b1 (ext4, ~1.82T)
|
|
# - Mount: /external (by UUID; device name varies after USB re-enumeration)
|
|
# - MariaDB datadir is expected at /srv/mariadb/mariadb, but is bind-mounted to /external/mariadb
|
|
# - Replaced borrowed WD My Book (exFAT) after disk-full kine deadlock incident (2026-04-03)
|
|
mariadb_external_enabled: true
|
|
mariadb_external_device: /dev/disk/by-uuid/3669ddf4-5884-43ae-84b2-150ec117a2b1
|
|
mariadb_external_mountpoint: /external
|
|
mariadb_external_fstype: ext4
|
|
# ext4 supports POSIX ownership; chown -R mysql:mysql was applied during migration from sda1.
|
|
mariadb_external_mount_opts: "defaults,nofail,x-systemd.device-timeout=10"
|
|
|
|
mariadb_external_src_datadir: /srv/mariadb/mariadb
|
|
mariadb_external_dst_datadir: /external/mariadb
|
|
mariadb_external_backup_datadir: /srv/mariadb/mariadb.pre-external
|
|
mariadb_external_migration_marker: /external/mariadb/.prole-mariadb-external-migrated
|
|
|
|
# k3s worker (stateless workloads)
|
|
k3s_enabled: true
|
|
|
|
k3s_role: agent
|
|
k3s_cluster_init: false
|
|
k3s_server_url: "https://myrddin.prole.org:6443"
|
|
|
|
# k3s datastore now lives on merlin.
|
|
# NOTE: Use IP to avoid DNS drift during migration/cutover.
|
|
k3s_datastore_mariadb_host: 10.0.0.6
|
|
k3s_datastore_mariadb_port: 3306
|
|
k3s_datastore_mariadb_db: k3s
|
|
k3s_datastore_mariadb_user: prole_k3s
|
|
k3s_datastore_endpoint: "mysql://{{ k3s_datastore_mariadb_user }}:{{ k3s_datastore_mariadb_password | urlencode }}@tcp({{ k3s_datastore_mariadb_host }}:{{ k3s_datastore_mariadb_port }})/{{ k3s_datastore_mariadb_db }}"
|
|
|
|
k3s_tls_sans:
|
|
- merlin.prole.org
|
|
|
|
k3s_service_node_labels:
|
|
- "prole.org/node-role=general"
|
|
k3s_node_taints: []
|
|
|
|
k3s_required_mounts:
|
|
- /synology/d002
|
|
- /synology/d004
|
|
|
|
# iSCSI
|
|
# `/var/lib/rancher` is local host storage (do not manage it via iSCSI).
|
|
iscsi_portal: 10.0.0.203:3260
|
|
|
|
iscsi_targets:
|
|
# PROLE-DATA-2
|
|
- iqn: "iqn.2000-01.com.synology:synology.Target-12.292d45194a1"
|
|
chap_user: "prole"
|
|
chap_password: "{{ vault_iscsi_prole_password }}"
|
|
mounts:
|
|
- name: d002
|
|
path: /synology/d002
|
|
fstype: xfs
|
|
opts: "_netdev,noatime"
|
|
src: "UUID=fe087fb0-a321-4767-b838-b4385e81693e"
|
|
|
|
# PROLE-DATA-4
|
|
# Repurposed from myrddin's former `/var/lib/rancher` Synology LUN.
|
|
# Repartitioned 2026-04-03: raw XFS on /dev/sdb → GPT + /dev/sdb1 (XFS).
|
|
- iqn: "iqn.2000-01.com.synology:synology.Target-15.292d45194a1"
|
|
chap_user: "prole"
|
|
chap_password: "{{ vault_iscsi_prole_password }}"
|
|
mounts:
|
|
- name: d004
|
|
path: /synology/d004
|
|
fstype: xfs
|
|
opts: "_netdev,noatime"
|
|
src: "UUID=45143352-142d-4e47-8508-9eb84c4c1f29"
|
|
|
|
iscsi_absent_mounts: []
|
|
|
|
prole_ssl_src_dir: /etc/ssl/certs/prole
|
|
prole_ssl_files:
|
|
- merlin.crt
|
|
- merlin.key
|