Comment surveiller les performances d'Ubuntu à l'aide de netdata

Comment surveiller les performances d'Ubuntu à l'aide de netdata

Netdata est un outil de surveillance et de dépannage en temps réel gratuit et open source pour les serveurs cloud, les conteneurs, les applications et l'infrastructure informatique sur site. Il fournit des mesures système granulaires et en temps réel élevées telles que les performances du processeur, l'utilisation de la RAM et du disque et des statistiques de bande passante, pour en mentionner quelques-uns.

De plus, NetData fournit également des visualisations métriques interactives qui peuvent être accessibles sur un navigateur Web ainsi que des alarmes intelligentes qui aident à dépanner les défauts du système.

La technologie et la popularité de pointe de Netdata lui ont valu une place à Forbes Cloud 100 Rising Stars en 2020, ce qui n'est pas une mince affaire. En fait, au moment de la rédaction de ce guide, il a reçu presque 50 000 Étoiles github.

Il y a deux façons que vous pouvez utiliser pour installer Netdata. Vous pouvez tout de suite exécuter un script automatisé sur un shell bash. Cela met à jour vos systèmes et initie l'installation de NetData, vous pouvez alternativement, vous pouvez cloner le référentiel Git de NetData et par la suite exécuter le script automatisé. La première méthode est simple et simple et c'est ce sur quoi nous nous concentrerons dans ce guide.

Dans cet article, nous verrons comment vous pouvez installer Netdata sur Ubuntu pour surveiller en temps réel, la performance et la surveillance de la santé des serveurs et des applications.

Plates-formes prises en charge

NetData prend en charge les distributions Ubuntu LTS suivantes:

  • Ubuntu 20.04
  • Ubuntu 18.04
  • Ubuntu 16.04

Comment installer netdata dans Ubuntu Linux

Pour commencer l'installation, exécutez la commande ci-dessous sur votre terminal bash pour télécharger et exécuter le script.

$ bash <(curl -Ss https://my-netdata.io/kickstart.sh) 

Pendant l'exécution du script, ce qui suit a lieu:

  • Le script découvre automatiquement votre distribution Linux, met à jour la liste des packages et installe tous les packages logiciels requis.
  • Le dernier arbre source NetData est téléchargé sur le / usr / src / netdata.git chemin.
  • Le script installe netdata En exécutant le ./ netdata-installer.shot script de l'arbre source.
  • Une mise à jour est faite à cron.quotidien pour être sur de netdata est mis à jour quotidiennement.
Installer NetData dans Ubuntu

Au fur et à mesure que le script est exécuté, vous recevrez des conseils sur la façon d'accéder Netdata sur un navigateur et comment le gérer comme un systemd service.

Accès à NetData à Ubuntu

L'installation prend un certain temps, alors donnez-lui environ 10 minutes et revenez. Enfin, vous obtiendrez la sortie ci-dessous alors que le script enveloppe l'installation.

Résumé de l'installation de NetData

Une fois installé, démarrez, activez et vérifiez l'état de Netdata comme montré.

$ sudo systemctl start netdata $ sudo systemctl activer netdata $ sudo systemctl status netdata 
Vérifier l'état de NetData

Par défaut, Netdata écoute sur le port 19999 Et cela peut être confirmé en utilisant la commande netstat comme indiqué.

$ sudo netstat -pnltu | grep netdata 
Vérifier le port NetData

Si tu as Ufw Courir, faire un effort pour ouvrir le port 19999 comme cela sera nécessaire lors de l'accès Netdata sur le navigateur.

$ sudo ufw permettre 19999 / TCP $ sudo ufw rechargement 

Enfin, pour accéder Netdata, Passez à votre navigateur et parcourez l'URL suivante

http: // server-ip: 19999 / 

C'est ce que vous gardez une fois que vous parcourez l'URL. En fait, vous vous rendrez compte que vous ne serez pas obligé de vous connecter. Toutes les mesures du système seront affichées comme indiqué.

Surveillance du serveur NetData Ubuntu

Vous pouvez parcourir divers graphiques en cliquant sur vos mesures préférées sur la barre latérale droite du tableau de bord. Par exemple, pour consulter les statistiques d'interface réseau, cliquez sur 'sur'Interfaces réseau' option.

NetData Check Ubuntu Network Statistics

Sécuriser NetData avec une authentification de base sur Ubuntu

Jusque-là, n'importe qui peut accéder au Netdata Tableau de bord et jetez un œil aux différentes métriques du système. Cela équivaut à une rupture de sécurité et nous voulons vraiment éviter cela.

Dans cet esprit, nous allons configurer Basic Http authentification. Nous devons installer le apache2-utils package qui fournit le htpasswd programme qui sera utilisé pour configurer le nom d'utilisateur et le mot de passe de l'utilisateur. De plus, nous installerons le serveur Web Nginx agira comme le proxy inversé.

Pour installer le Nginx serveur Web et apache2-utils package exécuter la commande.

$ sudo apt installer nginx apache2-utils 

Avec Nginx et apache2-utils Installé, nous allons créer un fichier de configuration à l'intérieur du / etc / nginx / confre.d annuaire. Cependant, n'hésitez pas à utiliser le les sites disponibles répertoire si vous utilisez Nginx à d'autres fins à part Netdata.

$ sudo vim / etc / nginx / confr.d / par défaut.confli 

À l'intérieur du fichier de configuration, nous instruisons d'abord Nginx pour proxyer les demandes entrantes pour le Netdata tableau de bord. Par la suite, nous allons ajouter une invite d'authentification de base qui ne donne que les utilisateurs autorisés à accéder au Netdata Tableau de bord utilisant l'authentification du nom d'utilisateur / mot de passe.

Voici toute la configuration. Soyez attentif à remplacer le server_ip et exemple.com directives avec votre propre adresse IP de serveur et nom de serveur.

NetData-Backend en amont Server 127.0.0.1: 19999; Keepalive 64;  serveur écouter server_ip: 80; nom du serveur exemple.com; auth_basic "authentification requise"; auth_basic_user_file netdata-access; Emplacement / 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: // netdata-backend; proxy_http_version 1.1; proxy_pass_request_headers sur; proxy_set_header Connection "Keep-Alive"; proxy_store off;  

Comprenons la configuration, section par section.

Section 1:

NetData-Backend en amont Server 127.0.0.1: 19999; Keepalive 64;  

Nous avons spécifié un en amont module appelé netdata-backend qui fait référence au serveur Web intégré de NetData à l'aide du boucler adresse 127.0.0.1 et le port 19999 qui est le port par défaut sur lequel NetData écoute. Le rester en vie La directive définit le nombre maximal de connexions inactives qui peuvent rester ouvertes.

Section 2:

server écouter server_ip: 80; Exemple de nom.com; auth_basic "authentification requise"; auth_basic_user_file netdata-access; 

C'est le principal Nginx Section de blocs de serveur. La première ligne spécifie l'adresse IP externe que Nginx devrait écouter lorsque les clients envoient leurs demandes. Le nom du serveur La directive spécifie le nom de domaine du serveur et demande à Nginx d'exécuter le bloc de serveur lorsque les clients invoquent le nom de domaine au lieu de l'adresse IP externe.

Les deux dernières lignes indiquent la simple authentification HTTP qui nécessite que l'utilisateur se connecte à l'aide d'un nom d'utilisateur et d'un mot de passe. Le auth_basic Le module déclenche le nom d'utilisateur / mot de passe pop-up sur le navigateur avec le «Authentification requise"Sur le titre qui peut être personnalisé plus tard pour s'adapter à vos préférences.

Le auth_basic_user_file Le module pointe vers le nom de fichier qui contiendra le nom d'utilisateur et le mot de passe de l'utilisateur autorisé à accéder au tableau de bord de NetData - Dans ce cas, NetData-Access. Nous créerons ce fichier plus tard.

Section 3:

La dernière section est la emplacement bloc qui est contenu dans le bloc serveur. Cela gère le proxyage et le transfert des demandes entrantes au serveur Web Nginx.

Emplacement / 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: // netdata-backend; proxy_http_version 1.1; proxy_pass_request_headers sur; proxy_set_header Connection "Keep-Alive"; proxy_store off;  

Pour l'authentification, nous créerons un nom d'utilisateur et un mot de passe pour un utilisateur appelé Tecmint en utilisant le htpasswd utilité et stockez les informations d'identification à l'intérieur du accessible de netdata déposer.

$ sudo htpasswd -c / etc / nginx / netdata-access tecmint 

Fournir le mot de passe et le confirmer.

Activer l'authentification de base pour netdata

Ensuite, redémarrez le serveur Web Nginx pour que les modifications entrent en vigueur.

$ sudo systemctl redémarrer nginx 

Pour tester si la configuration s'est bien passée, procédez et parcourez l'adresse IP de votre serveur

http: // server-ip 

Une fenêtre contextuelle d'authentification apparaîtra comme indiqué ci-dessous. Fournissez votre nom d'utilisateur et votre mot de passe et appuyez sur ENTRER.

Connexion de l'utilisateur NetData

Par la suite, vous aurez accès au Netdata tableau de bord.

Accéder à NetData avec l'authentification des utilisateurs

Cela nous amène à la fin de notre sujet pour aujourd'hui. Vous venez d'apprendre à installer le Netdata outil de surveillance et configuration de l'authentification HTTP de base sur Ubuntu. N'hésitez pas à consulter d'autres graphiques sur diverses mesures système.