diff --git a/nodes/sophie/vmhost.py b/nodes/sophie/vmhost.py new file mode 100644 index 0000000..d9321d1 --- /dev/null +++ b/nodes/sophie/vmhost.py @@ -0,0 +1,85 @@ +nodes['sophie.vmhost'] = { + 'hostname': '172.19.164.2', + 'bundles': { + 'backup-client', + 'lm-sensors', + 'mosquitto', + 'smartd', + 'vmhost', + 'zfs', + }, + 'groups': { + 'debian-bookworm', + }, + 'metadata': { + 'interfaces': { + 'br1': { + 'ips': { + '172.19.164.2/24', + }, + 'gateway4': '172.19.164.1', + 'ipv6_accept_ra': True, + }, + }, + 'mosquitto': { + 'bridges': { + 'c3voc': { + 'peer': 'mqtt.c3voc.de', + 'client_id': 'sophie-vm-host', + 'auth': { + 'username': vault.decrypt('encrypt$gAAAAABgaBa5UZyZlsMM9TV5pa-VyOieFWYzAslxWVnXjOeXHvF4kMHHSHSMOrv-U9k7Ec3mMCDuJFO3ybpOsZSeFQDL7GgEfw=='), + 'password': vault.decrypt('encrypt$gAAAAABgaBbfm65cYBuod0UehWNmY0NfeUH9xsrP2kENYNF_LWP2iV5a8db_cqMoITwyjjBsHpvjaeDq07Z5K5nQ_BLZG6zPqapL-Qvp20wyck49Dy2R4V4='), + }, + 'topics': [ + { + 'pattern': '#', + 'remote_prefix': '/voc/', + 'local_prefix': 'voc' + }, + ], + }, + }, + 'listeners': { + '8083': { + 'protocol': 'websockets', + }, + }, + 'tasmota-telegraf-topic': '/switch/#', + 'restrict-to': { + '172.19.164.0/24', + }, + }, + 'systemd-networkd': { + 'bridges': { + 'br0': { + 'match': { + 'eno2', + }, + }, + 'br1': { + 'match': { + 'br0.1', + }, + }, + }, + }, + 'zfs': { + 'pools': { + 'storage': { + 'when_creating': { + 'config': [{ + 'devices': { + '/dev/disk/by-id/nvme-SAMSUNG_MZVLB256HAHQ-000L7_S41GNX0M481966-part3', + }, + }] + } + } + }, + "datasets": { + "storage/libvirt": { + "mountpoint": "/var/lib/libvirt", + }, + }, + }, + }, +}