Cómo configurar el monitoreo usando Dashing Icinga2 Dashboard
Hola, hoy vamos a instalar Dashing Icinga2 en Ubuntu. Crea paneles con datos icinga2, lo que le brinda una interfaz para monitorear la información de los sistemas de su entorno. Hecho de Ruby on top Dashing framework, que está diseñado para implementar paneles bonitos y simples a partir de datos complejos y feos, hace que la tarea de monitoreo sea mucho mejor.
Contenido
- Requisitos
- Configuración
- Icinga2 – Instalar el servicio Icinga2
- Mysql – base de datos Icinga2
- Icinga2 – paquetes de Icinga
- Instalar Dashing Icinga2
- RVM, Ruby y gemas
- Node.js
- Icinga2 – Instalar el servicio Icinga2
- Configurar
- Habilitar la API icinga2
- Autenticar gallardo
- Conclusión
Requisitos
La siguiente es una lista de las tecnologías que componen la pila de software necesaria para instalar y ejecutar Dashing Icinga2.
- curl git apt-get gnupg2 – Para instalar los paquetes requeridos
- Apuesto
- ruby: el lenguaje de programación utilizado por la plataforma dashing
- RVM: el administrador de entorno Ruby se utilizará para instalar el entorno Ruby
- Bundler – Bundler gestiona la dependencia de gemas
- Dashing: Dashing es el marco del tablero
- nodejs
- Dashing Icinga – paneles de Icinga2
- ruby: el lenguaje de programación utilizado por la plataforma dashing
- Icinga2
- MySQL: para ser utilizado como backend de base de datos para monitorear datos.
- Icinga2 – Servicio Icinga2
Hay otras dependencias indirectas, como otras gemas y bibliotecas del sistema, que se instalan automáticamente durante la configuración, como verá más adelante.
Configuración
Es hora de instalar todas estas cosas. La primera parte de nuestra configuración le mostrará cómo configurar un Icinga2 básico, si ya tiene un icinga2, pase a Instalación de Dashing Icinga2. No se preocupe, ya que hablaré sobre cómo configurar icinga y correr para hablar entre ellos en la sección Configuración.
Instalación de Icinga2
Ahora vamos a configurar un servicio Icinga2 simple capaz de monitorear la máquina local y registrar datos en una base de datos.
Servidor MySQL
Como se mencionó anteriormente, usaremos una base de datos MySQL para almacenar información de Icinga2. Así que instalemos el paquete mysql-server con apt-get.
apt-get install mysql-server
Para tener al menos una seguridad mínima en nuestro servicio MySQL, debemos ejecutar el asistente de instalación mysql_secure_installation y seguir los pasos.
mysql_secure_installation
Servicio Icinga2
El siguiente paso es instalar los paquetes Icinga2, una vez más usamos apt-get.
apt-get install icinga2 icinga2-common icinga2-ido-mysql icinga2-bin
Durante la configuración del paquete, se le preguntará sobre el backend de la base de datos y sus credenciales.
Cuando haya terminado con la configuración del paquete, es hora de ejecutar icinga2 asistente de nodo para realizar una configuración básica.
icinga2 node wizard
Reiniciar Icinga2
systemctl restart icinga2
Puedes comprobar si el usuario icinga2 es capaz de acceder a sus bases de datos llamando al siguiente comando y proporcionando la contraseña de la aplicación que hemos configurado.
mysql -u icinga2 -p icinga2 -e "show tables"
Hemos terminado con Icinga2 por ahora, hablaremos sobre cómo configurar el REST de Icinga2 para Dashing en la sección de configuración.
Instalación de Dashing Icinga2
Ahora tenemos una instancia de Icinga2 en funcionamiento, por lo que podemos continuar con la configuración de Dashing.
Rubí, gemas y RVM
Dashing Icinga2 es una implementación de aplicación web en el marco Dashing, que se basa en el dialecto Sinatra que va por encima de Ruby y se centra en el desarrollo rápido de aplicaciones web con poco esfuerzo. Bien, parece que hay una complejidad razonable hasta que llegamos al «pequeño esfuerzo».
Para hacernos la vida un poco más fácil, usaremos Ruby Environment Manager (RVM) y dejaremos que se encargue de algo de este lío de Ruby.
Antes de poder instalar RVM, necesita GnuPG 2.
apt-get install gnupg2
Ahora use curl para descargar el script de instalación de RVM y canalícelo a bash.
curl -L https://get.rvm.io | bash -s stable
Una vez que RVM está instalado, debe ejecutar su script de perfil para que extienda su shell con sus funciones y cree una abstracción para realizar su control de versiones.
source /etc/profile.d/rvm.sh
Instalar el entorno Ruby
Ahora usamos RVM para instalar una versión específica de Ruby. Tenga en cuenta que estamos usando la versión 2.2.3 simplemente como un ejemplo y no debe usar esta versión en entornos de producción.
rvm install 2.2.3
Es una buena idea declarar explícitamente la versión que desea utilizar. Cuanto más se acostumbre a esto, más probabilidades tendrá de evitar errores en el futuro.
rvm use 2.2.3
Lo mismo ocurre con la versión predeterminada.
rvm default 2.2.3
Autolibs
Autolibs es una función de RVM que le permite instalar automáticamente dependencias en su sistema. Esto es particularmente útil para resolver dependencias rotas, como bibliotecas openssl instaladas en una ubicación personalizada, que luché yo mismo y otras cosas molestas como esa.
rvm autolibs enable
Gemas
Ahora instalemos algunas gemas.
Bundler
Primero instalamos Bundler, lo usaremos para administrar las dependencias de gemas.
gem install bundler
Apuesto
Esta joya es el marco que crea cuadros de mando.
gem install dashing
Node.js
Para ejecutar Dashing, debe tener un backend javascript, así que instale el backend de Node.js y su administrador de paquetes.
apt-get install nodejs npm
Dashing Icinga
Por último, pero no menos importante, tenemos el proyecto Dashing Icinga2 en sí, que crea paneles con datos de Icinga2.
localización
Cree o cambie el directorio en el que va a alojar los archivos de guión, a partir del guión de reinicio y guión que viene con el proyecto, y que va a descargar ahora, la ubicación predeterminada es / usr / compartir / pero podría estar utilizando el directorio que mejor se adapte a sus necesidades.
cd /usr/share/
Ahora podemos clonar Dashing Icinga2 desde Github.
git clone https://github.com/Icinga/dashing-icinga2.git
Una vez que git esté listo, ingrese al directorio del proyecto.
cd dashing-icinga2/
Utilice el paquete para instalar las gemas necesarias en el sistema.
bundle install --system
Hemos terminado de instalar cosas ahora, la siguiente sección le mostrará cómo configurar los servicios.
Configuración
Dashing framework necesita obtener información de Icinga2, establezca cómo se comunican entre sí de la siguiente manera.
Icinga2
Habilitar API REST
Habilite la función API en Icinga2 para interactuar con Dashing
icinga2 feature enable api
Autenticación
Para usar la API REST, el guión Icinga2 debe estar autenticado, luego vamos a crear sus credenciales.
Abre el api-users.conf archivo con vi o su editor favorito.
vim /etc/icinga2/conf.d/api-users.conf
Ahora agregue el usuario elegante, sus permisos y contraseña.
object ApiUser "dashing" {
contraseña = «icingadashingondebian» permisos = [ «status/query», «objects/query/*» ]
}
Termine de configurar, ahora reinicie icinga2.
systemctl restart icinga2
Puede comprobar si icinga2 se está ejecutando y escuchando.
netstat -putona | egrep icinga
Debería imprimir algo como esto.
tcp 0 0 0.0.0.0:5665 0.0.0.0:* LISTEN 15040/icinga2 off (0.00/0/0)
Hecho con la configuración icinga2.
Apuesto
Autenticación
Desde el directorio del proyecto Dashing Icinga2, abra el archivo de configuración.
$ vim config/icinga2.json
En el icinga2.json file solo necesitamos cambiar las credenciales creadas previamente en icinga2, también debe apuntar el host correcto si está ejecutando icinga2 y corriendo en diferentes hosts.
{
«icinga2»: {
«api»: {
«host»: «localhost»,
«puerto»: 5665,
«usuario»: «apresurado»,
«contraseña»: «icingadashingondebian»
}
}
}
Corriendo
Ahora estamos listos para correr corriendo. Para esto, ejecute el script de inicio desde dentro del directorio del proyecto icinga2.
./restart-dashing
Puede acceder a sus paneles desde el navegador web ahora. Tratar http://icinga-dashing-server:8005
Nota: Recuerde cambiar el nombre de host en consecuencia.
Si algo sale mal, puede comprobar si ambos servicios se están ejecutando con netstat.
netstat -putona | egrep '5665|8005'
También puede verificar si el siguiente comando en el terminal del servidor le da algún resultado
curl localhost:8005/icinga2
También puede ejecutar guiones en primer plano para ver qué está haciendo para depurar algún error.
dashing start
Conclusión
En este punto, puede acceder a su bonito panel de control, ver qué está pasando con su servidor, así que me detendré aquí, ya que fue un gran viaje y debe dejar que su cerebro funcione por un tiempo. Más tarde, podría profundizar en el directorio del proyecto Dashing icinga2 y ver cómo funciona, echar un vistazo a los documentos de las cosas utilizadas, para que pueda ir más allá, depurar y corregir cualquier problema y personalizarlo según sus necesidades. Eso es todo, diviértete y gracias por leer!