mirror of
https://github.com/davegallant/nix-config
synced 2025-08-06 03:13:38 +00:00
Add netdata systemd service
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
./main/fonts.nix
|
||||
./main/general.nix
|
||||
./main/kernel.nix
|
||||
./main/netdata/default.nix
|
||||
./main/packages.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
|
||||
htop
|
||||
netdata
|
||||
|
||||
# password managers
|
||||
bitwarden-cli
|
||||
|
Reference in New Issue
Block a user