mirror of
https://github.com/phfroidmont/self-hosting.git
synced 2025-12-25 05:36:59 +01:00
Start migrating config to NixOS modules
This commit is contained in:
parent
c1211cb4e5
commit
c0d929be0b
11 changed files with 283 additions and 183 deletions
|
|
@ -1,59 +0,0 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
with lib;
|
||||
let
|
||||
cfg = config.services.custom-monit;
|
||||
in
|
||||
{
|
||||
options.services.custom-monit = {
|
||||
additionalConfig = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
|
||||
sops.secrets = {
|
||||
monitMailserverConfig = {
|
||||
owner = config.services.borgbackup.jobs.data.user;
|
||||
key = "monit/mailserver_config";
|
||||
};
|
||||
};
|
||||
|
||||
services.monit = {
|
||||
enable = true;
|
||||
config = ''
|
||||
set daemon 30
|
||||
with start delay 90
|
||||
|
||||
set httpd
|
||||
port 2812
|
||||
use address 127.0.0.1
|
||||
allow localhost
|
||||
|
||||
set ssl {
|
||||
verify : enable,
|
||||
}
|
||||
|
||||
include ${config.sops.secrets.monitMailserverConfig.path}
|
||||
|
||||
set mail-format { from: monit@banditlair.com }
|
||||
set alert alerts@banditlair.com with reminder on 120 cycles
|
||||
|
||||
check system $HOST
|
||||
if cpu usage > 95% for 10 cycles then alert
|
||||
if memory usage > 75% for 5 times within 15 cycles then alert
|
||||
if swap usage > 25% then alert
|
||||
|
||||
check filesystem root with path /
|
||||
if SPACE usage > 90% then alert
|
||||
|
||||
check file daily-backup-done with path /nix/var/data/backup/backup-ok
|
||||
if changed timestamp then alert
|
||||
if timestamp > 26 hours then alert
|
||||
|
||||
${cfg.additionalConfig}
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue