zfs fixes and default tank is on ssd now
This commit is contained in:
parent
af274d0076
commit
5b66659ce2
11 changed files with 58 additions and 53 deletions
|
@ -55,6 +55,13 @@ defaults = {
|
||||||
'home': '/home/git',
|
'home': '/home/git',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
'zfs': {
|
||||||
|
'datasets': {
|
||||||
|
'tank/gitea': {
|
||||||
|
'mountpoint': '/var/lib/gitea',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -97,24 +104,6 @@ def conf(metadata):
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@metadata_reactor.provides(
|
|
||||||
'zfs/datasets',
|
|
||||||
)
|
|
||||||
def zfs(metadata):
|
|
||||||
if not node.has_bundle('zfs'):
|
|
||||||
return {}
|
|
||||||
|
|
||||||
return {
|
|
||||||
'zfs': {
|
|
||||||
'datasets': {
|
|
||||||
f"{metadata.get('zfs/storage_classes/ssd')}/gitea": {
|
|
||||||
'mountpoint': '/var/lib/gitea',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@metadata_reactor.provides(
|
@metadata_reactor.provides(
|
||||||
'nginx/vhosts',
|
'nginx/vhosts',
|
||||||
)
|
)
|
||||||
|
|
|
@ -5,7 +5,7 @@ directories['/var/lib/influxdb'] = {
|
||||||
'owner': 'influxdb',
|
'owner': 'influxdb',
|
||||||
'group': 'influxdb',
|
'group': 'influxdb',
|
||||||
'needs': [
|
'needs': [
|
||||||
f"zfs_dataset:{node.metadata.get('zfs/storage_classes/ssd')}/influxdb",
|
'zfs_dataset:tank/influxdb',
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -52,7 +52,7 @@ def zfs(metadata):
|
||||||
return {
|
return {
|
||||||
'zfs': {
|
'zfs': {
|
||||||
'datasets': {
|
'datasets': {
|
||||||
f"{metadata.get('zfs/storage_classes/ssd')}/influxdb": {
|
'tank/influxdb': {
|
||||||
'mountpoint': '/var/lib/influxdb',
|
'mountpoint': '/var/lib/influxdb',
|
||||||
'recordsize': '8192',
|
'recordsize': '8192',
|
||||||
'atime': 'off',
|
'atime': 'off',
|
||||||
|
|
|
@ -98,17 +98,25 @@ defaults = {
|
||||||
'user': 'www-data',
|
'user': 'www-data',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
'zfs': {
|
}
|
||||||
'datasets': {
|
|
||||||
'tank/nextcloud': {
|
|
||||||
'mountpoint': '/var/lib/nextcloud',
|
@metadata_reactor.provides(
|
||||||
'needed_by': [
|
'zfs/datasets',
|
||||||
'bundle:nextcloud',
|
)
|
||||||
],
|
def zfs(metadata):
|
||||||
|
return {
|
||||||
|
'zfs': {
|
||||||
|
'datasets': {
|
||||||
|
f"{metadata.get('zfs/storage_classes/hdd')}/nextcloud": {
|
||||||
|
'mountpoint': '/var/lib/nextcloud',
|
||||||
|
'needed_by': [
|
||||||
|
'bundle:nextcloud',
|
||||||
|
],
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@metadata_reactor.provides(
|
@metadata_reactor.provides(
|
||||||
|
|
|
@ -9,7 +9,7 @@ directories = {
|
||||||
'group': 'postgres',
|
'group': 'postgres',
|
||||||
'needs': [
|
'needs': [
|
||||||
'pkg_apt:postgresql',
|
'pkg_apt:postgresql',
|
||||||
f"zfs_dataset:{node.metadata.get('zfs/storage_classes/ssd')}/postgresql",
|
'zfs_dataset:tank/postgresql',
|
||||||
],
|
],
|
||||||
'needed_by': [
|
'needed_by': [
|
||||||
'svc_systemd:postgresql',
|
'svc_systemd:postgresql',
|
||||||
|
|
|
@ -64,7 +64,7 @@ def zfs(metadata):
|
||||||
return {
|
return {
|
||||||
'zfs': {
|
'zfs': {
|
||||||
'datasets': {
|
'datasets': {
|
||||||
f"{metadata.get('zfs/storage_classes/ssd')}/postgresql": {
|
'tank/postgresql': {
|
||||||
'mountpoint': '/var/lib/postgresql',
|
'mountpoint': '/var/lib/postgresql',
|
||||||
'recordsize': '8192',
|
'recordsize': '8192',
|
||||||
'atime': 'off',
|
'atime': 'off',
|
||||||
|
|
|
@ -51,7 +51,7 @@ for name, conf in node.metadata.get('samba/shares').items():
|
||||||
'owner': name,
|
'owner': name,
|
||||||
'group': name,
|
'group': name,
|
||||||
'needs': [
|
'needs': [
|
||||||
f'zfs_dataset:tank/samba/{name}',
|
f"zfs_dataset:{node.metadata.get('zfs/storage_classes/hdd')}/samba/{name}",
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -15,13 +15,6 @@ defaults = {
|
||||||
'samba': {
|
'samba': {
|
||||||
'shares': {},
|
'shares': {},
|
||||||
},
|
},
|
||||||
'zfs': {
|
|
||||||
'datasets': {
|
|
||||||
'tank/samba': {
|
|
||||||
'mountpoint': '/var/lib/samba',
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -32,10 +25,15 @@ def zfs(metadata):
|
||||||
return {
|
return {
|
||||||
'zfs': {
|
'zfs': {
|
||||||
'datasets': {
|
'datasets': {
|
||||||
f'tank/samba/{name}': {
|
f"{metadata.get('zfs/storage_classes/hdd')}/samba": {
|
||||||
'mountpoint': f'/var/lib/samba/usershares/{name}',
|
'mountpoint': '/var/lib/samba',
|
||||||
}
|
},
|
||||||
for name in metadata.get('samba/shares')
|
**{
|
||||||
|
f"{metadata.get('zfs/storage_classes/hdd')}/samba/{name}": {
|
||||||
|
'mountpoint': f'/var/lib/samba/usershares/{name}',
|
||||||
|
}
|
||||||
|
for name in metadata.get('samba/shares')
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
2
bundles/zfs/README.md
Normal file
2
bundles/zfs/README.md
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
zpool iostat -v
|
||||||
|
zdb -Lbbbs tank
|
|
@ -61,7 +61,7 @@ defaults = {
|
||||||
'pools': {},
|
'pools': {},
|
||||||
'kernel_params': {},
|
'kernel_params': {},
|
||||||
'storage_classes': {
|
'storage_classes': {
|
||||||
'ssd': 'tank',
|
'hdd': 'tank',
|
||||||
},
|
},
|
||||||
'auto_snapshots': {
|
'auto_snapshots': {
|
||||||
'hourly': 24,
|
'hourly': 24,
|
||||||
|
|
|
@ -168,27 +168,35 @@
|
||||||
'zfs': {
|
'zfs': {
|
||||||
'zfs_arc_max_percent': 80,
|
'zfs_arc_max_percent': 80,
|
||||||
'storage_classes': {
|
'storage_classes': {
|
||||||
'ssd': 'ssd',
|
'hdd': 'hdd',
|
||||||
},
|
},
|
||||||
'pools': {
|
'pools': {
|
||||||
'tank': {
|
'tank': {
|
||||||
|
'type': 'mirror',
|
||||||
|
'devices': [
|
||||||
|
'/dev/disk/by-id/nvme-SAMSUNG_MZVL22T0HBLB-00B00_S677NF0RA01551-part1',
|
||||||
|
'/dev/disk/by-id/nvme-SAMSUNG_MZVL22T0HBLB-00B00_S677NF0RA01566-part1',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
'hdd': {
|
||||||
'type': 'mirror',
|
'type': 'mirror',
|
||||||
'devices': [
|
'devices': [
|
||||||
'/dev/disk/by-partlabel/zfs-data-1',
|
'/dev/disk/by-partlabel/zfs-data-1',
|
||||||
'/dev/disk/by-partlabel/zfs-data-2',
|
'/dev/disk/by-partlabel/zfs-data-2',
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
'ssd': {
|
},
|
||||||
'devices': [
|
|
||||||
'/dev/disk/by-id/nvme-SAMSUNG_MZVL22T0HBLB-00B00_S677NF0RA01551-part3',
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'datasets': {
|
'datasets': {
|
||||||
'ssd/nextcloud-appdata': {
|
'tank/nextcloud-appdata': {
|
||||||
'mountpoint': '/var/lib/nextcloud/appdata_oci6dw1woodz',
|
'mountpoint': '/var/lib/nextcloud/appdata_oci6dw1woodz',
|
||||||
'backup': False,
|
'backup': False,
|
||||||
}
|
},
|
||||||
|
'hdd/nextcloud/ckn': {
|
||||||
|
'mountpoint': '/var/lib/nextcloud/ckn/files',
|
||||||
|
},
|
||||||
|
'hdd/nextcloud/ckn-privat': {
|
||||||
|
'mountpoint': '/var/lib/nextcloud/ckn-privat/files',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
Loading…
Reference in a new issue