GNU/Linux >> Tutoriels Linux >  >> Cent OS

Surveillance d'un cluster Ceph avec Ceph-dash sur CentOS 7

Ceph-dash est une application WSGI basée sur le framework Flask pour la surveillance des clusters Ceph. Il utilise librados pour communiquer avec le cluster Ceph. Ceph-dash a un joli tableau de bord, il est facile à installer et possède de nombreuses fonctionnalités, y compris la prise en charge d'InfluxDB et de Graphite.

Dans ce tutoriel, je vais vous montrer comment installer Ceph-dash et le configurer pour qu'il s'exécute sous un serveur Web apache avec le support SSL et mod_auth. Dans le premier tutoriel Ceph, nous avons déjà installé un 'cluster Ceph', dans ce tutoriel, nous allons configurer ceph-dash sur l'hôte moniteur 'mon1 ' de cette configuration.

Prérequis

  • Cluster Ceph – Tutoriel Ceph I
  • Surveiller le nœud CentOS 7 - mon1
  • Privilèges root

Étape 1 : Installer les dépendances Ceph-dash

Dans cette première étape, nous installerons les dépendances nécessaires à ceph-dash, y compris le serveur Web apache et mod_ssl.

Connectez-vous au nœud mon1 à partir du nœud ceph-admin.

ssh mon1

Installez toutes les dépendances nécessaires avec la commande yum.

sudo miam -y install httpd mod_wsgi mod_ssl git

Ensuite, démarrez apache/httpd et ajoutez-le pour qu'il soit lancé au démarrage.

sudo systemctl start httpd
sudo systemctl enable httpd

Étape 2 - Télécharger Ceph-dash

Ceph-dash est une application open source, disponible sur le référentiel github. Clonez le dépôt dans le répertoire /var/www/.

cd /var/www/html/
clone git https://github.com/Crapworks/ceph-dash.git

Par défaut, apache/httpd s'exécute sous le nom d'utilisateur 'apache', nous devons donc changer le propriétaire des fichiers et répertoires ceph-dash en utilisateur 'apache'.

sudo chown -R /var/www/html/ceph-dash/

Étape 3 - Configurer un hôte virtuel Apache pour Ceph-dash

Ceph-dash fournit un exemple de configuration d'hôte virtuel pour apache et Nginx dans le répertoire 'contrib'. Nous utiliserons apache comme serveur Web pour Ceph-dash, nous devons donc copier le fichier de configuration pour apache dans le répertoire apache/httpd.

cd /var/www/html/ceph-dash/
cp contrib/apache/cephdash /etc/httpd/conf.d/cephdash.conf

Accédez au répertoire de configuration de l'hôte virtuel et modifiez le fichier cephdash.conf.

cd /etc/httpd/conf.d/
vim cephdash.conf

Modifier la valeur de 'ServerName ' à votre nom de domaine - dans mon cas ceph-mon.co

Modifier le processus du démon wsgi pour qu'il s'exécute en tant qu'apache utilisateur.

Remplacez le répertoire cephdash.wsgi par '/var/www/html/ceph-dash/contrib/wsgi/cephdash.wsgi' .

Changez le répertoire de configuration SSL en '/etc/httpd/ssl/ '.

Changez le répertoire ceph-dash en '/var/www/html/ceph-dash ', puis ajoutez l'authentification de base configuration.

Ci-dessous la configuration.


    ServerName ceph-mon.co

    RewriteEngine On
    RewriteCond %{REQUEST_URI} !^/server-status
    RewriteRule ^ /?(.*) https://%{HTTP_HOST}/$1 [R,L]



    ServerName ceph- mon.co

    WSGIdaemonProcess cephdash user=apache group=apache Process=1 threads=5
    WSGIScriptAlias ​​/ /var/www/html/ceph-dash/contrib/wsgi/cephdash.wsgi
    WSGIPassAuthorization On

    SSLEngine on
    SSLCertificateFile /etc/httpd/ssl/ssl.crt
    SSLCertificateKeyFile /etc/httpd/ssl/ssl.key

   
        WSGIProcessGroup cephdash
        WSGIApplicationGroup %{GLOBAL}
        Ordre refusé, autoriser
        Autoriser de tous

        AuthType Basic
        AuthName "Restricted Content"
        AuthUserFile /etc/apache2/.htpasswd
        Nécessite un utilisateur valide
   

Enregistrez le fichier et quittez l'éditeur.

Étape 4 - Configurer SSL et Apache Basic Auth

Dans la configuration de l'hôte virtuel, nous avons déjà défini la configuration SSL dans le répertoire '/etc/httpd/ssl', nous devons donc y créer le certificat et la clé SSL.

mkdir -p /etc/httpd/ssl/

Générez maintenant un fichier de certificat SSL auto-signé avec la commande OpenSSL.

openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/httpd/ssl/ssl.key -out \
/etc/httpd/ssl/ssl. crt

Modifiez les autorisations du fichier de certificat à 600.

chmod 600 /etc/httpd/ssl/*

Ensuite, ajoutez apache basic auth avec la commande htpasswd ci-dessous pour protéger par mot de passe l'accès Ceph-dash.

htpasswd -c /etc/httpd/htpasswd hakase
Tapez votre mot de passe :

hakase est le nom d'utilisateur que j'ai choisi.

Si tout est fait, testez le fichier de configuration apache avec la commande apachectl et assurez-vous que le résultat est "Syntaxe OK ', puis redémarrez apache.

apachectl configtest
sudo systemctl restart httpd

Étape 5 - Ajouter un port HTTP et HTTPS au pare-feud

Sur le nœud moniteur 'mon1 ', firewalld est activé. Nous devons ouvrir un nouveau port pour la connexion http et https afin de pouvoir accéder à Ceph-dash à partir d'un navigateur Web.

Ajoutez les ports http et https à firewalld avec la commande firewall-cmd.

sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent

Rechargez la configuration du pare-feu.

sudo firewall-cmd --reload

Étape 6 - Tester

Ouvrez votre navigateur Web et saisissez le domaine ceph-mon.co (utilisez le nom de domaine que vous avez choisi pour votre installation ceph-dash) dans la barre d'adresse, appuyez sur Entrée.

Il vous sera demandé un nom d'utilisateur et un mot de passe, saisissez votre nom d'utilisateur et votre mot de passe que vous avez utilisés dans le fichier htpasswd.

Vous pouvez maintenant voir le tableau de bord Ceph-dash.

État de santé du cluster, état du nœud de surveillance, état des nœuds OSD.

Statut de stockage et PG.

Ceph-tiret a été installé sous un apache serveur Web sur le nœud de surveillance 'mon1 '.


Cent OS
  1. Gérer le flux CentOS avec Foreman

  2. Surveillance de serveur avec Icinga 2 et Icingaweb 2 sur CentOS 7

  3. Installez Nginx avec ngx_pagespeed sur CentOS 7

  4. Comment installer Netdata Monitoring sur CentOS 7

  5. Installez mod_ruid2 sur CentOS 6 avec DirectAdmin

Surveillance de serveur avec Munin et Monit sur CentOS 7.2

Comment configurer Percona Cluster avec HAproxy Loadbalancer sur CentOS 7

Comment configurer MariaDB Galera Cluster avec HAproxy sur CentOS 7

DRBD avec MySQL Centos 8

Comment installer OrangeHRM sur CentOS 7

Comment installer Cacti Monitoring sur CentOS 7