mirror of
https://github.com/davegallant/nix-config
synced 2025-08-07 00:58:16 +00:00
Add netdata systemd service
This commit is contained in:
@@ -16,6 +16,7 @@
|
|||||||
./main/fonts.nix
|
./main/fonts.nix
|
||||||
./main/general.nix
|
./main/general.nix
|
||||||
./main/kernel.nix
|
./main/kernel.nix
|
||||||
|
./main/netdata/default.nix
|
||||||
./main/packages.nix
|
./main/packages.nix
|
||||||
./main/printing.nix
|
./main/printing.nix
|
||||||
|
|
||||||
|
42
main/netdata/default.nix
Normal file
42
main/netdata/default.nix
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
{ config, pkgs, ... }:
|
||||||
|
let
|
||||||
|
netdata = pkgs.netdata;
|
||||||
|
netdataConf = ./netdata.conf;
|
||||||
|
netdataDir = "/var/lib/netdata";
|
||||||
|
in {
|
||||||
|
users.extraGroups.netdata.gid = 220008;
|
||||||
|
users.extraUsers.netdata = {
|
||||||
|
description = "Netdata server user";
|
||||||
|
isSystemUser = true;
|
||||||
|
name = "netdata";
|
||||||
|
uid = 200008;
|
||||||
|
};
|
||||||
|
systemd.services.netdata = {
|
||||||
|
wantedBy = [ "multi-user.target" ];
|
||||||
|
after = [ "network.target" ];
|
||||||
|
preStart = ''
|
||||||
|
mkdir -p ${netdataDir}/config
|
||||||
|
mkdir -p ${netdataDir}/logs
|
||||||
|
cp -r ${netdata}/share/netdata/web ${netdataDir}/web
|
||||||
|
chmod -R 700 ${netdataDir}
|
||||||
|
chown -R netdata:netdata ${netdataDir}
|
||||||
|
'';
|
||||||
|
serviceConfig = {
|
||||||
|
Type = "forking";
|
||||||
|
ExecStart = "${netdata}/bin/netdata -c ${netdataConf} -u netdata";
|
||||||
|
Restart = "on-failure";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
services.nginx.httpConfig = ''
|
||||||
|
server {
|
||||||
|
server_name netdata.thume.net;
|
||||||
|
location / {
|
||||||
|
proxy_set_header Host $http_host;
|
||||||
|
proxy_redirect off;
|
||||||
|
proxy_pass http://127.0.0.1:19999;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
|
||||||
|
}
|
21
main/netdata/netdata.conf
Normal file
21
main/netdata/netdata.conf
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
[global]
|
||||||
|
run as user = netdata
|
||||||
|
|
||||||
|
config directory = /var/lib/netdata/config
|
||||||
|
web files directory = /var/lib/netdata/web
|
||||||
|
cache directory = /var/lib/netdata
|
||||||
|
log directory = /var/lib/netdata/logs
|
||||||
|
|
||||||
|
# the default database size - 1 hour
|
||||||
|
history = 3600
|
||||||
|
|
||||||
|
# some defaults to run netdata with least priority
|
||||||
|
process scheduling policy = idle
|
||||||
|
OOM score = 1000
|
||||||
|
|
||||||
|
[web]
|
||||||
|
# web files owner = root
|
||||||
|
web files group = netdata
|
||||||
|
|
||||||
|
# by default do not expose the netdata port
|
||||||
|
bind to = localhost
|
@@ -44,6 +44,7 @@
|
|||||||
|
|
||||||
# monitoring
|
# monitoring
|
||||||
htop
|
htop
|
||||||
|
netdata
|
||||||
|
|
||||||
# password managers
|
# password managers
|
||||||
bitwarden-cli
|
bitwarden-cli
|
||||||
|
Reference in New Issue
Block a user