/
/
/
1---
2# NAS Role Default Configuration
3
4# NFS Server Configuration
5nas_nfs_enabled: true
6nas_nfs_exports: []
7 # Example export configuration for your network:
8 # - path: "/mnt/rstorage/shared"
9 # clients: "192.168.34.0/24"
10 # options: "rw,sync,no_subtree_check,no_root_squash"
11 # - path: "/mnt/rstorage/media"
12 # clients: "192.168.34.0/24"
13 # options: "ro,sync,no_subtree_check"
14 # - path: "/mnt/rstorage/backups"
15 # clients: "192.168.34.64(rw,sync) 192.168.34.94(rw,sync)" # Specific hosts
16 # options: "no_subtree_check"
17
18# Runner Services NFS Exports (automatically added when runner services are enabled)
19nas_runner_exports:
20 - path: "/mnt/rstorage/cctv-data"
21 name: "frigate-data"
22 description: "Frigate CCTV video storage"
23 clients: "{{ runner_host_ip | default(vault_storage.lan_subnet) }}"
24 options: "rw,async,no_subtree_check,no_root_squash,secure"
25 - path: "/mnt/rstorage/media/pictures"
26 name: "immich-photos"
27 description: "Immich photo library storage"
28 clients: "{{ runner_host_ip | default(vault_storage.lan_subnet) }}"
29 options: "rw,async,no_subtree_check,no_root_squash,secure"
30 - path: "/mnt/rstorage/code-repo"
31 name: "forgejo-repos"
32 description: "Forgejo Git repositories"
33 clients: "{{ runner_host_ip | default(vault_storage.lan_subnet) }}"
34 options: "rw,async,no_subtree_check,no_root_squash,secure"
35 - path: "/mnt/rstorage/registry-data"
36 name: "harbor-registry"
37 description: "Harbor container registry data"
38 clients: "{{ runner_host_ip | default(vault_storage.lan_subnet) }}"
39 options: "rw,async,no_subtree_check,no_root_squash,secure"
40 - path: "/mnt/rstorage/cvat-datasets"
41 name: "cvat-datasets"
42 description: "Cvat datasets"
43 clients: "{{ runner_host_ip | default(vault_storage.lan_subnet) }}"
44 options: "rw,async,no_subtree_check,no_root_squash,secure"
45
46# RAID Configuration - Manual Management
47# Note: RAID arrays assumed to be manually configured and mounted
48nas_raid_enabled: false # Disable automatic RAID management
49nas_raid_monitoring: true # Keep monitoring enabled
50nas_mdadm_config_file: "/etc/mdadm/mdadm.conf"
51
52# Storage Configuration
53nas_storage_base: "/mnt/rstorage" # Base mount point for manual RAID5
54
55# Network Configuration
56# Note: Bonding is managed externally via netplan (4x 2.5G interfaces -> bond0 -> br0)
57nas_network_bonding_enabled: false # Managed by netplan, not this role
58nas_network_interface: "br0" # Your bridge interface
59nas_network_ip: "192.168.34.200"
60nas_network_subnet: "192.168.34.0/24"
61
62# Storage Subdirectories (created under nas_storage_base)
63nas_storage_directories: []
64 # Example subdirectories:
65 # - "/mnt/rstorage/shared"
66 # - "/mnt/rstorage/media"
67 # - "/mnt/rstorage/backups"
68
69# Performance Tuning
70nas_performance_tuning_enabled: true
71nas_tcp_window_scaling: true
72nas_tcp_congestion_control: "bbr"
73nas_sysctl_settings:
74 # Network performance
75 net.core.rmem_default: 262144
76 net.core.rmem_max: 16777216
77 net.core.wmem_default: 262144
78 net.core.wmem_max: 16777216
79 net.ipv4.tcp_rmem: "4096 87380 16777216"
80 net.ipv4.tcp_wmem: "4096 65536 16777216"
81 net.core.netdev_max_backlog: 5000
82 # Filesystem performance
83 vm.dirty_background_ratio: 5
84 vm.dirty_ratio: 10
85 vm.vfs_cache_pressure: 50
86
87# Service Configuration
88nas_services:
89 - nfs-kernel-server
90 - rpcbind
91
92# Package Installation
93nas_install_packages:
94 - nfs-kernel-server
95 - nfs-common
96 - mdadm
97 - smartmontools
98 - hdparm
99 - iotop
100 - htop
101
102# Monitoring and Alerting
103nas_monitoring_enabled: true
104nas_smartmontools_enabled: true
105nas_email_notifications: "" # Email address for RAID alerts
106
107# Security Settings
108nas_nfs_secure_ports: true
109
110# Runner Services Integration
111nas_enable_runner_exports: false # Enable when deploying runner services
112
113# Backup Integration
114nas_backup_integration: false
115nas_backup_paths: []
116 # Example backup paths:
117 # - "/mnt/rstorage/critical"
118 # - "/etc/exports"
119 # - "/etc/mdadm/mdadm.conf"
120
121# Logging
122nas_log_level: "info"
123nas_log_file: "/var/log/nas-role.log"
124