
Monitoraggio di Nutanix da Centreon
Se abbiamo un Nutanix nel nostro ambiente… Perché non centralizziamo tutte le informazioni che ci fornite nel nostro sistema di monitoraggio Centreon?? Non solo per gestire al meglio gli avvisi, ma per memorizzare tutte le sue metriche ed essere in grado di lavorarci come meglio crediamo, questo è un post con tutti i dettagli su come monitorare completamente Nutanix!
Cosa ho detto, este documento es algo extenso, ya que podemos obtener muuuuchas métricas interesantes tanto del clúster de Nutanix como de los CVM, así que lo vamos a separar en distintas fases, primero veremos cómo habilitar SNMP en Nutanix y luego todas las opciones que podemos ver, os pondré el Comando y el Servicio que necesitaremos para cada ítem a monitorizar. Así cada uno agrega lo que interesa, y luego abajo os dejo el cómo quedaría!
Habilitando SNMP en Nutanix,
Avviato! Lo primero será habilitar SNMP en nuestro clúster de Nutanix para poder obtener sus métricas desde nuestra máquina con Centreon,
Tras loguearnos en la web de administración de Nutanix, Stiamo per “Impostazioni” > “SNMP”,
Marcamos el tick de “Enable SNMP”, e in “New Transport”,
Sul “Transports” habilitaremos el protocolo UDP y puerto por defecto 161,
Sul “Gli utenti” Clicca su “New User”,
Y asignamos un nombre este usuario y los tipos de autenticaciones además de las contraseñas requeridas, Come vediamo, Nutanix usa SNMP versión 3 🙂 En este post usaré un usuario genérico llamado centreon y con contraseñas centreon usando AES y SHA, por qué os digo esto? Por que los Comandos que usaremos llevarán esos credenciles por defecto 😉
Pulsamos además en “Download MIB”, será necesario más adelante el fichero con los MIBs de Nutanix, lo guardamos por ahí,
Instalando los requisitos en Centreon,
Una vez tenemos Nutanix listo, procederemos a instalar los requisitos en Centreon para poder usar un par de scripts, para obtener ciertas métricas y con él podamos hacer algunas de las consultas que necesitaremos, descargaremos los scripts check_nutanix.pl y check_ssh_nutanix_cluster.pl, subimos por SCP el fichero con las MIBs recién descargado y estamos listos para instalar los requis:
[Codice sorgente]cpan Date::Parse
cpan Net::OpenSSH
cpan IO::Pty
cp NUTANIX-MIB.txt /usr/share/snmp/mibs/[/Codice sorgente]
Occhio, una anotación, en el script check_nutanix.pl, en la linea 97, alla fine, falta una COMA! Y lo guardaremos en el path de los Plugins de Centreon, en /usr/lib/centreon/plugins/.
Monitorizando CPU, Memoria, Carga y Disco
Y a continuación, ya iremos viendo qué podemos monitorizar, os dejare brevemente, el nombre del Servicio que suelo usar yo, seguido de los Argumentos. Y luego al final, el Comando que usé. Por ahora mediante SNMP,
Servizi:
- CPU: CPU 80 90
- ARIETE: memoria 80 90
- Carico: carico 80 90
- Disco: immagazzinamento 80 90
Comando:
- Nome: OS-Linux-SNMP-Basico-v3
- Línea de Comando:
[Codice sorgente]$CENTREONPLUGINS$/centreon_linux_snmp.pl –plugin=os::linux::Snmp::Plugin –mode=$ARG1$ –hostname=$HOSTADDRESS$ –snmp-version=3 –snmp-username=centreon –authprotocol=SHA –authpassphrase=centreon –privprotocol=AES –privpassphrase=centreon –warning=$ARG2$ –critical=$ARG3$[/Codice sorgente]
- Discussione 1: Modo (CPU, memoria, carico…)
- Discussione 2: Avvertimento
- Discussione 3: Critico
Monitorizando el Uptime,
Para conocer el Uptime, bastará con crear un Servicio y un Comando:
Servizio:
- Uptime: Uptime
Comando:
- Nome: OS-Linux-SNMP-Basico-v3-sin-wc
- Línea de Comando:
[Codice sorgente]$CENTREONPLUGINS$/centreon_linux_snmp.pl –plugin=os::linux::Snmp::Plugin –mode=$ARG1$ –hostname=$HOSTADDRESS$ –snmp-version=3 –snmp-username=centreon –authprotocol=SHA –authpassphrase=centreon –privprotocol=AES –privpassphrase=centreon[/Codice sorgente]
- Discussione 1: Modo (CPU, memoria, carico…)
Monitorizando Capacidad Total, Usada, Stato, IOPS y Latencia.
Los Servizi que crearemos con sus argumentos:
- Cluster Nutanix – Capacidad Total .1.3.6.1.4.1.41263.504.0
- Cluster Nutanix – Capacidad Usada .1.3.6.1.4.1.41263.505.0
- Cluster Nutanix – Stato .1.3.6.1.4.1.41263.503.0 “Estado del cluster”
- Cluster Nutanix – IOPS .1.3.6.1.4.1.41263.506.0 “IOPS”
- Cluster Nutanix – Latenza .1.3.6.1.4.1.41263.507.0 “Latenza”
Comando:
- Nome: check_snmp_v3
- Línea de Comando:
[Codice sorgente]/usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -o $ARG1$ -P3 -L authPriv -U $ARG2$ -a $ARG3$ -A $ARG4$ -x $ARG5$ -X $ARG6$ -l $ARG7$[/Codice sorgente]
- Discussione 1: UUID
- Discussione 2: Utente
- Discussione 3: SHA
- Discussione 4: Contraseña SHA
- Discussione 5: AES
- Discussione 6: Contraseña AES
- Discussione 7: Texto
Monitorizando el ancho de banda de E/S del clúster,
Servizio con sus argumentos:
- Cluster Nutanix – IO bandwidth .1.3.6.1.4.1.41263.508.0 “IO bandwidth” 300000 350000
Comando necesario:
- Nome: check_snmp_v3_wc
- Línea de Comando:
[Codice sorgente]/usr/lib/nagios/plugins/check_snmp -H $HOSTADDRESS$ -o $ARG1$ -P3 -L authPriv -U $ARG2$ -a $ARG3$ -A $ARG4$ -x $ARG5$ -X $ARG6$ -l $ARG7$ -w $ARG8$ -c $ARG9$[/Codice sorgente]
Monitorizando las alertas de los CVM,
Para consultar las alertas usaremos el script que usa acceso SSH,
Servizio:
- Avvisi: USUARIO CONTRASEÑA alerts
Comando:
- Nome: check_ssh_nutanix_cluster.pl
Línea de comando:[Codice sorgente]$CENTREONPLUGINS$/check_ssh_nutanix_cluster.pl -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -T $ARG3$[/Codice sorgente]
- Discussione 1: Utente
- Discussione 1: Parola d’ordine
- Discussione 3: Tizio
Monitorizando los servicios del clúster,
Y aquí llegan todos los servicios del clúster, si nos interesa conocer el estado, estos son todos los Servizi que tendrás que crear:
- Cluster Nutanix – InsightsDataTransfer > Status InsightsDataTransfer
- Cluster Nutanix – Servicio ABAC > Stato “ABAC”
- Cluster Nutanix – Servicio Acropolis > Stato “Acropolis”
- Cluster Nutanix – Servicio AlertManager > Stato “AlertManager”
- Cluster Nutanix – Servicio APLOS > Stato “APLOS”
- Cluster Nutanix – Servicio APLOSEngine > Stato “APLOSEngine”
- Cluster Nutanix – Servicio Arithmos > Stato “Arithmos”
- Cluster Nutanix – Servicio Cerebro > Stato “Cerebro”
- Cluster Nutanix – Servicio Chronos > Stato “Chronos”
- Cluster Nutanix – Servicio CIM
- Cluster Nutanix – Servicio ClusterConfig
- Cluster Nutanix – Servicio ClusterHealth
- Cluster Nutanix – Servicio Curator
- Cluster Nutanix – Servicio DynamicRingChanger
- Cluster Nutanix – Servicio Ergon
- Cluster Nutanix – Servicio Hera
- Cluster Nutanix – Servicio InsightsDB
- Cluster Nutanix – Servicio Janus
- Cluster Nutanix – Servicio Lazan
- Cluster Nutanix – Servicio Medusa
- Cluster Nutanix – Servicio MinervaCVM
- Cluster Nutanix – Servicio NutanixGuestTools
- Cluster Nutanix – Servicio Orion
- Cluster Nutanix – Servicio Pithos
- Cluster Nutanix – Servicio Prism
- Cluster Nutanix – Servicio Scavenger
- Cluster Nutanix – Servicio SecureFileSync
- Cluster Nutanix – Servicio SSLTerminator
- Cluster Nutanix – Servicio Stargate
- Cluster Nutanix – Servicio SysStatCollector
- Cluster Nutanix – Servicio Tunnel
- Cluster Nutanix – Servicio Uhura
- Cluster Nutanix – Servicio Uhura
Comando:
- Nome: check_ssh_nutanix_cluster.pl_r
- Línea de comando:
[Codice sorgente]$CENTREONPLUGINS$/check_ssh_nutanix_cluster.pl -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -T $ARG3$ -r $ARG4$[/Codice sorgente]
- Discussione 1: Utente
- Discussione 2: Parola d’ordine
- Discussione 3: Tizio
- Discussione 4: Ítem
Monitorizando estados varios,
Estos son los Servizi que habrá que crear, junto los argumentos Tipo y Subtipo:
- Cluster Nutanix – Controllers – Stato > Controllers cstControllerVMStatus
- Cluster Nutanix – Controllers – Servicios Core > Controllers cstDataServiceStatus
- Cluster Nutanix – Controllers – Servicios Metadata > Controllers cstMetadataServiceStatus
- Cluster Nutanix – Dischi – Stato > Disks dstState
- Cluster Nutanix – Dischi- Latenza > Disks dstAverageLatency
- Cluster Nutanix – Hipervisores – Drop recibidos > Hypervisors hypervisorRxDropCount
- Cluster Nutanix – Hipervisores – Drop transmitidos Hypervisors hypervisorTxDropCount
Comando:
- Nome: check_nutanix.pl
- Línea de Comando:
[Codice sorgente]$CENTREONPLUGINS$/check_nutanix.pl -H $HOSTADDRESS$ -a $ARG1$ -u $ARG2$ -A $ARG3$ -x $ARG4$ -X $ARG5$ -t $ARG6$ -s $ARG7$[/Codice sorgente]
- Discussione 1: authProtocol (SHA)
- Discussione 2: Utente (centreon)
- Discussione 3: authPassword (centreon)
- Discussione 4: privProtocol (AES)
- Discussione 5: privPassword (centreon)
- Discussione 6: Tizio
- Discussione 7: Subtipo
Monitorizando los IOs del cúster,
Y ya por fin acabamos :), estos son los Servizi que habrá que crear seguidos de los Argumentos
- Cluster Nutanix – Dischi – IOs ancho de banda > Disks dstIOBandwidth 200000 250000
- Cluster Nutanix – Dischi – IOs x segundo > Disks dstNumberIops 2500 3000
- Cluster Nutanix – Hipervisores – IOs escritura x segundo > Hypervisors hypervisorWriteIOPerSecond 1200 1500
- Cluster Nutanix – Piscine – spitIOPerSecond > Pools spitIOPerSecond 10000 12000
Comando:
- Nome: check_nutanix.pl_wc
- Linea de Comando:
[Codice sorgente]$CENTREONPLUGINS$/check_nutanix.pl -H $HOSTADDRESS$ -a $ARG1$ -u $ARG2$ -A $ARG3$ -x $ARG4$ -X $ARG5$ -t $ARG6$ -s $ARG7$ -w $ARG7$=$ARG8$ -c $ARG7$=$ARG9$[/Codice sorgente]
- Discussione 1: authProtocol (SHA)
- Discussione 2: Utente (centreon)
- Discussione 3: authPassword (centreon)
- Discussione 4: privProtocol (AES)
- Discussione 5: privPassword (centreon)
- Discussione 6: Tizio
- Discussione 7: Subtipo
- Discussione 8: Subtipo Warning
- Discussione 9: Subtipo Critical
Ejemplo de un Comando,
E niente, después de toda la txapa, de cómo he organizado los Servicios y Comandos a crear, pues os dejo un ejemplo de cómo quedaría un Comando para el que tenga dudas. Habremos indicado el Nombre, la Línea de Comando y los Argumentos.
Ejemplo de un Servicio,
Y lo mismo para cada Servicio a crear, indicaremos el Nombre, seleccionaremos su Comando y cumplimentaremos todos los Argumentos que pida.
¿Cómo quedaría?
Non male, lo interesante! Este sería un pantallazo de un entorno Nutanix totalmente controlado y monitorizado! A los CVM, recuerda que puedes añadirles métricas del entorno virtual y obtener más datos sobre rendimientos mega interesantes! Espero que os haya sido útil!