|
762 | 762 | # BTFS Bridge: watches qBittorrent for "stream" category and mounts via BTFS |
763 | 763 | systemd.services.btfs-bridge = { |
764 | 764 | description = "BTFS Bridge - qBittorrent to BTFS streaming"; |
765 | | - after = [ "network-online.target" "btfs-restore.service" ]; |
| 765 | + after = [ "network-online.target" "btfs-restore.service" "qbittorrent.service" ]; |
766 | 766 | wants = [ "network-online.target" ]; |
| 767 | + requires = [ "qbittorrent.service" ]; |
767 | 768 | wantedBy = [ "multi-user.target" ]; |
768 | 769 |
|
769 | 770 | serviceConfig = { |
|
942 | 943 | # - actimeo=30 (cache attributes for 30 sec = faster stale handle detection) |
943 | 944 | # - lookupcache=all (aggressive file lookup caching) |
944 | 945 | # - hard,intr (reliable, but interruptible on hung operations) |
945 | | - options = "rw,hard,intr,tcp,nfsvers=4.2,rsize=1048576,wsize=1048576,timeo=600,retrans=2,noatime,nodiratime,async,lookupcache=all,actimeo=30"; |
| 946 | + options = "rw,hard,intr,tcp,nfsvers=4.2,rsize=1048576,wsize=1048576,timeo=600,retrans=2,noatime,nodiratime,async,lookupcache=all,actimeo=30,x-systemd.mount-timeout=30"; |
946 | 947 | wantedBy = [ ]; |
947 | 948 | requires = [ "network-online.target" ]; |
948 | 949 | after = [ "network-online.target" ]; |
|
953 | 954 | type = "nfs"; |
954 | 955 | # No async for movies/tv (Radarr/Sonarr move completed files here) |
955 | 956 | # actimeo=30 for faster stale handle detection after server reboots |
956 | | - options = "rw,hard,intr,tcp,nfsvers=4.2,rsize=1048576,wsize=1048576,timeo=600,retrans=2,noatime,nodiratime,lookupcache=all,actimeo=30"; |
| 957 | + options = "rw,hard,intr,tcp,nfsvers=4.2,rsize=1048576,wsize=1048576,timeo=600,retrans=2,noatime,nodiratime,lookupcache=all,actimeo=30,x-systemd.mount-timeout=30"; |
957 | 958 | wantedBy = [ ]; |
958 | 959 | requires = [ "network-online.target" ]; |
959 | 960 | after = [ "network-online.target" ]; |
|
964 | 965 | type = "nfs"; |
965 | 966 | # No async for movies/tv (Radarr/Sonarr move completed files here) |
966 | 967 | # actimeo=30 for faster stale handle detection after server reboots |
967 | | - options = "rw,hard,intr,tcp,nfsvers=4.2,rsize=1048576,wsize=1048576,timeo=600,retrans=2,noatime,nodiratime,lookupcache=all,actimeo=30"; |
| 968 | + options = "rw,hard,intr,tcp,nfsvers=4.2,rsize=1048576,wsize=1048576,timeo=600,retrans=2,noatime,nodiratime,lookupcache=all,actimeo=30,x-systemd.mount-timeout=30"; |
968 | 969 | wantedBy = [ ]; |
969 | 970 | requires = [ "network-online.target" ]; |
970 | 971 | after = [ "network-online.target" ]; |
@@ -1414,6 +1415,35 @@ EOF |
1414 | 1415 | "192.168.1.66" |
1415 | 1416 | ]; |
1416 | 1417 | } |
| 1418 | + # Prometheus exporters (node, nginx, wireguard, exportarr) |
| 1419 | + { |
| 1420 | + port = 9100; # node exporter |
| 1421 | + sources = [ "192.168.1.187" "192.168.1.190" "192.168.1.39" "192.168.1.66" ]; |
| 1422 | + } |
| 1423 | + { |
| 1424 | + port = 9113; # nginx exporter |
| 1425 | + sources = [ "192.168.1.187" "192.168.1.190" "192.168.1.39" "192.168.1.66" ]; |
| 1426 | + } |
| 1427 | + { |
| 1428 | + port = 9586; # wireguard exporter |
| 1429 | + sources = [ "192.168.1.187" "192.168.1.190" "192.168.1.39" "192.168.1.66" ]; |
| 1430 | + } |
| 1431 | + { |
| 1432 | + port = 9707; # exportarr radarr |
| 1433 | + sources = [ "192.168.1.187" "192.168.1.190" "192.168.1.39" "192.168.1.66" ]; |
| 1434 | + } |
| 1435 | + { |
| 1436 | + port = 9708; # exportarr sonarr |
| 1437 | + sources = [ "192.168.1.187" "192.168.1.190" "192.168.1.39" "192.168.1.66" ]; |
| 1438 | + } |
| 1439 | + { |
| 1440 | + port = 9709; # exportarr bazarr |
| 1441 | + sources = [ "192.168.1.187" "192.168.1.190" "192.168.1.39" "192.168.1.66" ]; |
| 1442 | + } |
| 1443 | + { |
| 1444 | + port = 9710; # exportarr prowlarr |
| 1445 | + sources = [ "192.168.1.187" "192.168.1.190" "192.168.1.39" "192.168.1.66" ]; |
| 1446 | + } |
1417 | 1447 | ]; |
1418 | 1448 |
|
1419 | 1449 | vpnIncomingPorts = { |
|
0 commit comments