¡La interfaz es genial y poderosa! ¡Esta herramienta de monitoreo en tiempo real del rendimiento de Linux es muy fácil de usar! ¡Viejo Siji, que se joda!

Para el mantenimiento y la administración de sistemas Linux, su monitoreo de rendimiento es muy importante, especialmente los datos de monitoreo en tiempo real. Estos datos nos ayudan a juzgar la presión de carga del servidor, ajustar la asignación de recursos a tiempo y también ayudarnos a servir mejor a la empresa. Por lo tanto, hoy en día, los trabajadores migrantes brindan a todos una herramienta de monitoreo en tiempo real para el desempeño de Linux: Netdata.

Primero hagamos una imagen de efecto, mírala primero 

 

 

Introducción a Netdata

Netdata es una herramienta de supervisión en tiempo real del rendimiento del sistema Linux. Es un demonio de Linux altamente optimizado que puede proporcionar monitoreo de rendimiento en tiempo real para sistemas Linux, aplicaciones (incluidos, entre otros, servidores web, bases de datos, etc.), servicios SNMP, etc.

Netdata utiliza medios visuales para mostrar la información monitoreada para que pueda comprender claramente el estado de ejecución en tiempo real de su sistema, programa y aplicación, y también puede integrarse con Prometheus, Graphite, OpenTSDB, Kafka, Grafana, etc.

Netdata es un software gratuito y de código abierto, actualmente disponible en Linux, FreeBSD y macOS y otros sistemas derivados de ellos (como Kubernetes y Docker).

Dirección del almacén de Netdata: _ github.com/netdata/ne ...

Funciones de Netdata

1. Interfaz visual amigable y hermosa 2. Interfaz de control personalizable 3. Instalación rápida y eficiente 4. Configuración simple, incluso configuración cero 5. Dependencia cero 6. Extensible, viene con API enchufable 7. Plataforma de sistema compatible amplio

¿Cómo funciona Netdata?

Netdata es un motor de gestión de indicadores eficiente y altamente modular. Su diseño sin bloqueo lo hace ideal para operaciones simultáneas en métricas.

 

 

Para la descripción del papel de cada componente en la figura anterior, los interesados ​​pueden consultar la descripción oficial, que no se repetirá aquí.

¿Qué puede monitorear Netdata?

Netdata puede recopilar indicadores de más de 200 servicios y aplicaciones populares, así como docenas de indicadores relacionados con el sistema, como CPU, memoria, disco, sistema de archivos, red, etc. A estos los llamamos recopiladores y los administra un complemento que admite varios lenguajes de programación, incluidos Go y Python.

Los recopiladores populares incluyen Nginx, Apache, MySQL, statsd, cgroups (contenedores, Docker, Kubernetes, LXC, etc.), Traefik, archivos de acceso al servidor web.log, etc.

Para obtener una lista de soporte detallada, consulte las siguientes instrucciones: _ github.com/netdata/ne ...

Instalación de Netdata 1, instalación directa

Primero necesita actualizar el kernel del sistema y algunos archivos de biblioteca dependientes

[root@CentOS7-1 ~]# yum update -y
复制代码

Si no hay ninguna operación, aparecerá el siguiente mensaje cuando instale directamente. También es posible ingresar y para permitir que el sistema se actualice automáticamente.

 

 

 

Después de realizar la operación de actualización, ejecute directamente el siguiente comando para instalar Netdata.

[root@CentOS7-1 ~]# bash <(curl -Ss https://my-netdata.io/kicksta...
复制代码

Luego, el programa realizará automáticamente la acción de instalación para descargar una serie de paquetes para la instalación, y debe confirmar la operación una vez, de la siguiente manera:

 

 

Puede deberse a la visita de recursos extranjeros y, según su conexión de red, el tiempo de espera puede ser más largo o más corto.

 

 

También se puede ver cierta información clave en el proceso de instalación, como se muestra en la figura anterior.

 

 

 

A partir de la información de la figura anterior, puede ver el método de acceso y el comando para iniciar y detener el servicio.

La instalación se completa como se muestra a continuación

 

 

 

Muestra que Netdata se ha iniciado. ¿Podemos usar el comando para verificar si el inicio se completó?

[root@CentOS7-1 ~]# lsof -i :19999
COMMAND   PID    USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
netdata 14787 netdata    4u  IPv4  27995      0t0  TCP *:dnp-sec (LISTEN)
netdata 14787 netdata    5u  IPv6  27996      0t0  TCP *:dnp-sec (LISTEN)
[root@CentOS7-1 ~]# ps -ef|grep netdata
netdata   14787      1  2 23:24 ?        00:00:06 /usr/sbin/netdata -P /var/run/netdata/netdata.pid -D
netdata   14800  14787  0 23:24 ?        00:00:00 /usr/sbin/netdata --special-spawn-server
netdata   14954  14787  0 23:24 ?        00:00:01 bash /usr/libexec/netdata/plugins.d/tc-qos-helper.sh 1
netdata   14974  14787  0 23:24 ?        00:00:02 /usr/bin/python /usr/libexec/netdata/plugins.d/python.d.plugin 1
root      14975  14787  1 23:24 ?        00:00:04 /usr/libexec/netdata/plugins.d/ebpf.plugin 1
netdata   14976  14787  0 23:24 ?        00:00:01 /usr/libexec/netdata/plugins.d/go.d.plugin 1
netdata   14977  14787  1 23:24 ?        00:00:05 /usr/libexec/netdata/plugins.d/apps.plugin 1
root      15277   1149  0 23:29 pts/0    00:00:00 grep --color=auto netdata
复制代码

2. Instalación de Docker

Primero prepare el entorno de Docker y luego ejecute directamente los siguientes comandos para completar la operación de instalación.

docker run -d --name=netdata 
  -p 19999:19999 
  -v netdatalib:/var/lib/netdata 
  -v netdatacache:/var/cache/netdata 
  -v /etc/passwd:/host/etc/passwd:ro 
  -v /etc/group:/host/etc/group:ro 
  -v /proc:/host/proc:ro 
  -v /sys:/host/sys:ro 
  -v /etc/os-release:/host/etc/os-release:ro 
  --restart unless-stopped 
  --cap-add SYS_PTRACE 
  --security-opt apparmor=unconfined 
  netdata/netdata
复制代码

Una vez completada la instalación, puede acceder a ella de la siguiente manera.

 

 

 

 

 

 

Pantalla de interfaz

1. Interfaz de datos general

 

 

 

2. Memoria

 

 

 

3 、 CPU

 

 

4. Disco

 

 

5. Red

 

 

 

6. Aplicación

 

 

 

7. Interfaz de red

 

 

 

8. función de sincronización de datos

Los gráficos del panel de Netdata están sincronizados entre sí y no hay un gráfico principal. Puede desplazarse o hacer zoom en cualquier gráfico en cualquier momento, y todos los demás gráficos también aparecerán.

 

 

Puede desplazarse por el gráfico arrastrándolo con el mouse. Cuando el puntero del mouse se desplaza sobre el gráfico, puede usar MAYÚS + para acercar o alejar el gráfico de la rueda del mouse.

El poder de Netdata

La razón por la que es tan poderoso se debe a su cooperación y soporte con varias aplicaciones.

 

 

 

Solución de gestión de clústeres Netdata

Lo anterior muestra solo los datos de monitoreo de un solo servidor, y netdata tiene la desventaja de que todos los servidores monitoreados necesitan ser instalados con un agente. Por lo tanto, aquí hay un problema, es decir, ¿cómo administrar y mostrar los datos de monitoreo de manera unificada?

Netdata no diseña oficialmente un modo maestro-esclavo. Al igual que zabbix, uno se puede usar como servidor maestro y el otro como servidor esclavo para recopilar datos en el servidor maestro para un procesamiento y visualización unificados. Sin embargo, el funcionario también proporciona soluciones relacionadas. .

1. netdata.cloud utiliza el netdata.cloud integrado, que es el inicio de sesión en la esquina superior derecha de la interfaz WEB de cada nodo de instalación. Siempre que usemos la misma cuenta para iniciar sesión en netdata.cloud (se requiere acceso a Internet kexue), cada nodo puede ser controlado fácilmente por una cuenta. Cada nodo abre el puerto 19999 y le permite al administrador ver los datos, y luego el centro de control usa el front-end para recolectar los datos de los puertos de cada nodo y los envía a netdata.cloud para registrarlos y mostrarlos.

Este es un monitoreo de clúster pasivo, esencialmente una máquina independiente, y no es conveniente crear un tablero de clúster personalizado.

2. Complemento de transmisión Por lo tanto, para resolver los inconvenientes del esquema anterior, netdata proporciona otro método para agregar centralmente los datos de cada nodo a un servidor (principal), y el procesamiento de datos también se realiza en este servidor y en otros nodos. No es necesario abrir el puerto 19999. Se puede considerar como un modo de transmisión activo, que envía los datos recopilados al servidor principal, de modo que el desarrollo del panel personalizado se puede llevar a cabo en el servidor principal.

Desventajas: El tráfico y la carga del servidor principal serán relativamente grandes (en el caso de una gran cantidad de servidores en clúster). Si la carga del servidor principal es demasiado alta, podemos resolver este problema configurando el ciclo de recopilación de datos (actualizar cada) del servidor de nodo.

Configuración de monitoreo de clúster de Netdata

Muchos artículos solo presentaron los resultados de visualización de su instalación y algunas interfaces, y no proporcionaron la solución de monitoreo de clústeres y su configuración específica. El trabajador migrante también verificó mucha información y ahora comparte su proceso de configuración con todos.

Para aquellos que no están familiarizados con la configuración de la transmisión, consulte la documentación oficial: docs.netdata.cloud/st ...

1. Configuración del servidor de nodo

[root@CentOS7-1 ~]# cd /etc/netdata/
[root@CentOS7-1 netdata]# vim netdata.conf
#修改配置如下
[global]
    memory mode = none
    hostname = [建议修改成你的主机名]
[web]
    mode = none
复制代码

Luego, cree un nuevo archivo stream.conf en el directorio / etc / netdata / y configúrelo de la siguiente manera:

[stream]
    enabled = yes
    destination = MASTER_SERVER_IP:PORT
    api key = xxxx-xxxx-xxxx-xxxx-xxxx

#参数说明如下
 destination = MASTER_SERVER_IP:PORT  主服务器地址与端口
 api key 必需为uuid的字符串,Linux系统中可以使用下面的命令自动生成。
 [root@CentOS7-1 netdata]# uuidgen
 480fdc8c-d1ac-4d6f-aa26-128eba744089
复制代码

Una vez completada la configuración, debe reiniciar el servicio de datos de red del nodo para completar toda la configuración.

[root@CentOS7-1 ~]# systemctl restart netdata
复制代码

2. Configuración del servidor principal

Cree un nuevo stream.conf en el mismo directorio de netdata.conf y escriba la siguiente configuración:

[API_KEY]/[480fdc8c-d1ac-4d6f-aa26-128eba744089]
    enabled = yes
    default history = 3600
    default memory mode = save
    health enabled by default = auto
    allow from = *
[API_KEY]
    enabled = yes
    default history = 3600
    default memory mode = save
    health enabled by default = auto
    allow from = *
#其中,API_KEY对应节点服务器的api key(字符串),allow from可以设置数据流的允许来源以保证安全。
#如果有多个节点服务器,则一起写在stream.conf里面
复制代码

Reinicie netdata después de completar la configuración:

systemctl restart netdata
复制代码

Una vez completada toda la configuración, puede ver el menú desplegable (nombre de host) en la esquina superior derecha de la interfaz WEB del servidor principal, haga clic para ver la información de monitoreo relevante.

Si necesita personalizar el panel de control, puede consultar el documento oficial para modificar el archivo xml.

 

Supongo que te gusta

Origin blog.csdn.net/qq_46388795/article/details/108739152
Recomendado
Clasificación