GNU/Linux >> Tutoriales Linux >  >> Cent OS

Supervisión de un clúster de Ceph con Ceph-dash en CentOS 7

Ceph-dash es una aplicación WSGI basada en el marco Flask para monitorear clústeres de Ceph. Utiliza librados para comunicarse con el clúster de Ceph. Ceph-dash tiene un buen panel de control, es fácil de instalar y tiene muchas funciones, incluido el soporte de InfluxDB y Graphite.

En este tutorial, le mostraré cómo instalar Ceph-dash y configurarlo para que se ejecute en un servidor web apache con soporte SSL y mod_auth. En el primer tutorial de Ceph, ya instalamos un 'clúster de Ceph', en este tutorial, configuraremos ceph-dash en el host del monitor 'mon1 ' de esa configuración.

Requisitos previos

  • Clúster de Ceph:tutorial de Ceph I
  • Nodo de supervisión CentOS 7 - mon1
  • Privilegios de raíz

Paso 1:instalación de las dependencias de Ceph-dash

En este primer paso, instalaremos las dependencias que necesita ceph-dash, incluido el servidor web apache y mod_ssl.

Conéctese al nodo mon1 desde el nodo ceph-admin.

ssh mon1

Instale todas las dependencias necesarias con el comando yum.

sudo yum -y install httpd mod_wsgi mod_ssl git

Luego inicie apache/httpd y agréguelo para que se inicie en el momento del arranque.

sudo systemctl start httpd
sudo systemctl enable httpd

Paso 2:descarga Ceph-dash

Ceph-dash es una aplicación de código abierto, disponible en el repositorio de github. Clona el repositorio en el directorio /var/www/.

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

De forma predeterminada, apache/httpd se ejecuta con el nombre de usuario 'apache', por lo que debemos cambiar el propietario de los archivos y directorios ceph-dash al usuario 'apache'.

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

Paso 3:configurar un host virtual de Apache para Ceph-dash

Ceph-dash proporciona una muestra de una configuración de host virtual para apache y Nginx en el directorio 'contrib'. Usaremos apache como servidor web para Ceph-dash, por lo que debemos copiar el archivo de configuración de apache en el directorio apache/httpd.

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

Vaya al directorio de configuración del host virtual y edite el archivo cephdash.conf.

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

Cambiar el valor de 'ServerName ' a su nombre de dominio - en mi caso ceph-mon.co

Cambie el proceso del daemon wsgi para que se ejecute como apache usuario.

Cambie el directorio cephdash.wsgi a '/var/www/html/ceph-dash/contrib/wsgi/cephdash.wsgi' .

Cambie el directorio de configuración de SSL a '/etc/httpd/ssl/ '.

Cambie el directorio ceph-dash a '/var/www/html/ceph-dash ', luego agrega la autorización básica configuración.

A continuación se muestra la configuración.

<VirtualHost *:80>
    ServerName ceph-mon.co

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

<VirtualHost *:443>
    ServerName ceph-mon.co

    WSGIDaemonProcess cephdash user=apache group=apache processes=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

    <Directory /var/www/html/ceph-dash>
        WSGIProcessGroup cephdash
        WSGIApplicationGroup %{GLOBAL}
        Order deny,allow
        Allow from all

        AuthType Basic
        AuthName "Restricted Content"
        AuthUserFile /etc/apache2/.htpasswd
        Require valid-user
    </Directory>
</VirtualHost>

Guarde el archivo y salga del editor.

Paso 4:configurar SSL y Apache Basic Auth

En la configuración del host virtual, ya hemos definido la configuración SSL en el directorio '/etc/httpd/ssl', por lo que debemos crear el certificado SSL y la clave allí.

mkdir -p /etc/httpd/ssl/

Ahora genere un archivo de certificado SSL autofirmado con el comando OpenSSL.

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

Cambie los permisos del archivo de certificado a 600.

chmod 600 /etc/httpd/ssl/*

A continuación, agregue la autenticación básica de apache con el siguiente comando htpasswd para proteger con contraseña el acceso de Ceph-dash.

htpasswd -c /etc/httpd/htpasswd hakase
Type your password:

hakase es el nombre de usuario que he elegido.

Si todo está hecho, pruebe el archivo de configuración de apache con el comando apachectl y asegúrese de que el resultado sea 'Syntax OK ', luego reinicie apache.

apachectl configtest
sudo systemctl restart httpd

Paso 5:agregue el puerto HTTP y HTTPS al firewalld

En el nodo del monitor 'mon1 ', firewalld está habilitado. Tenemos que abrir un nuevo puerto para la conexión http y https para que podamos acceder a Ceph-dash desde un navegador web.

Agregue el puerto http y https a firewalld con el comando firewall-cmd.

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

Vuelva a cargar la configuración del cortafuegos.

sudo firewall-cmd --reload

Paso 6 - Prueba

Abra su navegador web y escriba el dominio ceph-mon.co (utilice el nombre de dominio que ha elegido para la instalación de ceph-dash) en la barra de direcciones, presione Intro.

Se le pedirá el nombre de usuario y la contraseña, escriba el nombre de usuario y la contraseña que utilizó en el archivo htpasswd.

Ahora puede ver el panel de Ceph-dash.

Estado de salud del clúster, estado del nodo del monitor, estado de los nodos OSD.

Almacenamiento y estado de PG.

Guión cefalométrico se ha instalado bajo un apache servidor web en el nodo de monitor 'mon1 '.


Cent OS
  1. Administre CentOS Stream con Foreman

  2. Monitoreo de servidores con Icinga 2 e Icingaweb 2 en CentOS 7

  3. Instale Nginx con ngx_pagespeed en CentOS 7

  4. Cómo instalar el monitoreo de Netdata en CentOS 7

  5. Instale mod_ruid2 en CentOS 6 con DirectAdmin

Monitoreo de servidores con Munin y Monit en CentOS 7.2

Cómo configurar Percona Cluster con HAproxy Loadbalancer en CentOS 7

Cómo configurar MariaDB Galera Cluster con HAproxy en CentOS 7

DRBD con MySQL Centos 8

Cómo instalar OrangeHRM en CentOS 7

Cómo instalar Cacti Monitoring en CentOS 7