Comment installer netdata ? Vous pouvez utiliser le kickstart script pour installer netdata :
# Linux 64 bits bash <(curl -Ss https://my-netdata.io/kickstart-static64.sh)
Si vous choisissez l’installation manuelle, il faut d’abord installer les packages suivant :
# Debian / Ubuntu apt-get install zlib1g-dev libuv1-dev uuid-dev libmnl-dev gcc make git autoconf autogen automake pkg-config curl jq nodejs python2.7-mysqldb
Puis il vous suffit alors de cloner le dépôt github, puis d’exécuter netdata-installer.sh :
# download it - the directory 'netdata' will be created git clone https://github.com/firehol/netdata.git --depth=1 cd netdata # build it, install it, start it ./netdata-installer.sh
Vous pourrez alors accéder à netdata via l’adresse http://IP-DE-VOTRE-SRV:19999 Enfin pour ce qui est des mise à jour de netdata, vous pouvez ajouter un cron pour exécuter régulièrement le fichier netdata-updater.sh.
Monitorer nginx : Pour monitorer nginx, il suffit d’autoriser l’accès à la page des status pour que netdata puisse récupérer les statistiques d’utilisation. La façon la plus simple de procéder est d’ajouter cette autorisation dans le vhost defaut. On modifie donc le fichier :
vi /etc/nginx/sites-available/default
Et on y ajoute l’emplacement :
# Status pages location /stub_status { stub_status on; access_log off; allow 127.0.0.1; deny all; }
Pour que netdata prennent en compte le changement, on redémarre le service.
service netdata restart
Et vous pourrez alors visualiser dans votre dashboard la section nginx local.
netdata nginx monitoring
Netdata derrière un reverse-proxy
Si vous souhaitez accéder au panel netdata directement via votre domaine et/ou y accéder via https, il vous faudra mettre en place un reverse-proxy.
Ayant une préférence pour nginx, voici le fichier de configuration à créer pour utiliser netdata pour un domaine :
upstream backend { # the netdata server server 127.0.0.1:19999; keepalive 64; } server { # the virtual host name of this server_name netdata.example.com; location / { proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://backend; proxy_http_version 1.1; proxy_pass_request_headers on; proxy_set_header Connection "keep-alive"; proxy_store off; } }
Et la configuration si vous préférez accéder à netdata via un sous-dossier :
upstream netdata { server 127.0.0.1:19999; keepalive 64; } server { # the virtual host name of this subfolder should be exposed #server_name netdata.example.com; location /netdata { return 301 /netdata/; } location ~ /netdata/(?.*) { proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_http_version 1.1; proxy_pass_request_headers on; proxy_set_header Connection "keep-alive"; proxy_store off; proxy_pass http://netdata/$ndpath$is_args$args; gzip on; gzip_proxied any; gzip_types *; } }
Utiliser les badges
Une des raisons pour lesquelles vous allez probablement utiliser un reverse-proxy est la possibilité d’afficher en temps réel des badges avec les informations de votre serveur.
Dont le code est :
<img src="https://status.virtubox.net/netdata/api/v1/badge.svg?chart=system.cpu&alarm=10min_cpu_usage&refresh=auto"/> ><img src="https://status.virtubox.net/netdata/api/v1/badge.svg?chart=system.ram&alarm=ram_in_use&refresh=auto" /> ><img src="https://status.virtubox.net/netdata/api/v1/badge.svg?chart=disk_util.sda&alarm=10min_disk_utilization&refresh=auto" /> ><img src="https://status.virtubox.net/netdata/api/v1/badge.svg?chart=nginx_local.connections&refresh=auto" />
Vous pouvez trouver plus d’informations à propos de netdata dans la documentation officielle.