bundlewrap/nodes/sophie/backupserver.py
2024-10-30 20:41:13 +01:00

74 lines
2 KiB
Python

nodes['htz-hel.backup-sophie'] = {
'hostname': 'backup.sophies-kitchen.eu',
'bundles': {
'backup-server',
'zfs',
},
'groups': {
'debian-bullseye',
'sophie',
},
'metadata': {
'apt': {
'packages': {
'mosh': {},
'borgbackup': {},
},
'unattended-upgrades': {
# requires manual apply after reboot to unlock dm-crypt
# devices
'reboot_enabled': False,
},
},
'backups': {
'exclude_from_backups': True,
},
'interfaces': {
'ens18': {
'ips': {
'2a01:4f9:6b:2d99::c0c0:a/64',
},
'gateway6': '2a01:4f9:6b:2d99::2',
},
},
'vm': {
'cpu': 4,
'ram': 8,
},
'backup-server': {
'zfs-base': 'tank/backups',
'my_hostname': 'backup.sophies-kitchen.eu',
},
'nftables': {
'input': {
'50-sophie-misc': [
'udp dport { 60000-61000 } accept',
'tcp dport 5201 accept',
],
},
},
'zfs': {
'datasets': {
'tank/ejgwthink': {
'mountpoint': '/mnt/backups/ejgwthink',
},
'tank/ejgwdesk': {
'mountpoint': '/mnt/backups/ejgwdesk',
},
'tank/moto-sophie': {
'mountpoint': '/mnt/backups/moto-sophie',
},
'tank/backups': {},
},
'pools': {
'tank': {
'when_creating': {
'config': [{
'devices': {'/dev/sdb'},
}],
},
},
},
},
},
}