Cómo instalar la herramienta de monitoreo Zabbix en CentOS 8
Zabbix es una herramienta de monitoreo de código abierto para servicios de red, hardware de red, servidores y aplicaciones. Diseñado para rastrear y monitorear el estado de su sistema y servidores. Zabbix ofrece soporte para muchos sistemas de bases de datos, incluidos MySQL, PostgreSQL, SQLite e IBM DB2, para almacenar datos. El backend de Zabbix está escrito en C y el frontend está escrito en PHP.
En este tutorial, le mostraremos paso a paso cómo instalar y configurar un sistema de monitoreo de código abierto Zabbix 4.0 LTS en el sistema CentOS 8. Esta guía cubrirá algunos temas, incluida la instalación y configuración de LAMP Stack para nuestra instalación de Zabbix, y cómo cambiar la contraseña predeterminada para la interfaz de usuario web del administrador de Zabbix.
requisitos previos
- Servidor CentOS 8
- Privilegios de raíz
- Conocimientos básicos sobre los comandos de Linux CentOS
Lo que haremos:
- Instalar Apache Httpd
- Instalar y configurar PHP
- Instalar y configurar MariaDB
- Instalar y configurar Zabbix 4.0 LTS
- Configurar cortafuegos
- Configurar SELinux
- Posterior a la instalación de Zabbix
- Cambiar el administrador predeterminado de Zabbix
Paso 1 – Instalar Apache Httpd
Para esta guía, usaremos Apache/httpd para nuestro servidor web. El servidor Zabbix se ejecutará bajo el servidor web Apache.
Puede instalar el paquete Apache/httpd usando el comando dnf a continuación.
dnf install httpd
Una vez que se complete la instalación, agregue el servicio httpd al arranque del sistema e inicie el servicio usando los siguientes comandos.
systemctl enable httpd systemctl start httpd
Ahora verifique el servicio httpd usando el comando netstat a continuación y asegúrese de que el puerto HTTP ’80’ esté en el estado ‘ESCUCHAR’.
netstat -plntu
A continuación se muestra el resultado.
Como resultado, el servicio httpd está activo y funcionando en el puerto HTTP predeterminado ’80’ en el servidor CentOS 8.
Paso 2 – Instalar PHP
Después de instalar el servidor web Apache/httpd, instalaremos los paquetes de PHP y sus extensiones necesarias para la instalación de Zabbix. Vamos a instalar y configurar PHP como requisitos de instalación de Zabbix.
Instale paquetes PHP usando el comando dnf a continuación.
dnf install php-cli php-common php-devel php-pear php-gd php-mbstring php-mysqlnd php-xml php-bcmath
Una vez completada la instalación, configure la configuración de PHP ‘/etc/php.ini’ usando el editor vim.
vim /etc/php.ini
Cambie los valores de la configuración como se muestra a continuación.
date.timezone = Asia/Jakarta max_execution_time = 600 max_input_time = 600 memory_limit = 256M post_max_size = 32M upload_max_filesize = 16M
Guardar y cerrar.
Ahora reinicie el servicio Apache/httpd.
systemctl restart httpd
Y se completó la instalación y configuración de PHP en el servidor CentOS 8.
Paso 3: instalar y configurar MariaDB
De forma predeterminada, Zabbix ofrece soporte para muchas bases de datos para la instalación, incluidas la base de datos MySQL, PostgreSQL, SQLite y Oracle. Para esta guía, usaremos MariaDB como base de datos para nuestra instalación de Zabbix.
Instale mariadb-server usando el comando dnf a continuación.
dnf install mariadb-server
Una vez que se complete la instalación, agregue el servicio MariaDB al inicio del sistema e inicie el servicio con el siguiente comando.
systemctl enable mariadb systemctl start mariadb
El servidor MariaDB está en funcionamiento.
A continuación, vamos a configurar la contraseña raíz de MariaDB. Ejecute el comando ‘mysql_secure_installation’ a continuación para configurar la contraseña de root.
mysql_secure_installation
Escriba su contraseña de root y presione Enter.Advertisement
Set a root password? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Y la contraseña raíz de MariaDB ha sido configurada.
A continuación, vamos a crear una nueva base de datos y un nuevo usuario para la instalación de Zabbix. Crearemos una nueva base de datos y un usuario llamado ‘zabbix’ con la contraseña ‘[email protected]’.
Inicie sesión en el shell de MariaDB/mysql usando el siguiente comando mysql.
mysql -u root -p TYPE YOUR ROOT PASSWORD:
Y ejecute las siguientes consultas de MariaDB a continuación en el shell.
create database zabbix; grant all privileges on zabbix.* to [email protected]'localhost' identified by '[email protected]'; grant all privileges on zabbix.* to [email protected]'%' identified by '[email protected]'; flush privileges;
Y como resultado, se ha creado la nueva base de datos y usuario para la instalación de Zabbix.
Paso 4: instale y configure Zabbix 4.0 LTS
En este paso, instalaremos Zabbix 4.0 LTS. Instalaremos la versión Zabbix LTS desde el repositorio oficial de Zabbix.
– Agregar repositorio e instalar paquetes
En primer lugar, debemos agregar el repositorio Zabbix 4.0 LTS al sistema usando el comando rpm a continuación.
rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/8/x86_64/zabbix-release-4.0-2.el8.noarch.rpm
Después de eso, elimine el caché de paquetes del sistema y verifique todos los repositorios disponibles en el sistema.
dnf clean all dnf repolist
Ahora obtendrá el resultado como se muestra a continuación.
Como resultado, el repositorio de Zabbix se agregó al sistema CentOS 8.
Ahora ejecute el comando dnf a continuación para instalar Zabbix Server and Agent.
dnf -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
Espere a que finalice la instalación de Zabbix.
Gambar
– Importar esquema de base de datos MySQL
Una vez que se complete la instalación de Zabbix, importaremos el esquema de la base de datos MariaDB para Zabbix.
Vaya al directorio ‘/usr/share/doc/zabbix-server-mysql’ y extraiga el esquema de la base de datos.
cd /usr/share/doc/zabbix-server-mysql gunzip create.sql.gz
Ahora importe el esquema de la base de datos a nuestra base de datos ‘zabbix’ usando el comando MySQL a continuación.
mysql -u root -p zabbix < create.sql
Escriba su contraseña raíz de MariaDB y el esquema de la base de datos se habrá importado.
– Configurar el servidor Zabbix y el agente Zabbix
El servidor Zabbix es el proceso central del sistema de software Zabbix. Configuraremos el servidor Zabbix editando la configuración ‘/etc/zabbix/zabbix_server.conf’.
Edite el archivo de configuración ‘/etc/zabbix/zabbix_server.conf’ usando el editor vim.
vim /etc/zabbix/zabbix_server.conf
En la configuración de la línea de la base de datos, escriba la configuración como se muestra a continuación y cambie el valor ‘DBPassword’ con su propia contraseña de la base de datos.
DBHost=localhost [email protected]
Guardar y cerrar.
Después de eso, agregue el servidor zabbix al arranque del sistema.
systemctl enable zabbix-server
Y la configuración del servidor zabbix se ha completado.
A continuación, le mostraremos la configuración de zabbix-agent. El zabbix-agent debe estar instalado en todas las máquinas que serán monitoreadas.
Edite la configuración de zabbix-agent ‘/etc/zabbix/zabbix_agentd.conf’ usando el editor vim.
vim /etc/zabbix/zabbix_agentd.conf
Ahora cambie el valor ‘Servidor’ y ‘Servidor activo’ con la dirección IP del servidor zabbix como se muestra a continuación.
Server=10.5.5.50 ServerActive=10.5.5.50
Guardar y cerrar.
Ahora agregue el servicio zabbix-agent al inicio del sistema.
systemctl enable zabbix-agent
Y la configuración de zabbix-agent se ha completado.
Paso 5: configurar el cortafuegos
Para la configuración del cortafuegos, vamos a agregar nuevos servicios, incluidos HTTP, HTTPS y el puerto que usa el servidor y el agente de Zabbix.
Agregue los puertos HTTP, HTTP y Zabbix ‘10050-10051’ al firewalld usando los siguientes comandos.
firewall-cmd --add-service={http,https} --permanent firewall-cmd --add-port={10051/tcp,10050/tcp} --permanent
Después de eso, vuelva a cargar el firewalld y verifique todos los servicios y puertos disponibles en él.
firewall-cmd --reload firewall-cmd --list-all
Y se le mostrará el resultado de la siguiente manera.
Como resultado, los puertos HTTP, HTTPS y Zabbix ‘10050-10051’ se agregaron al firewalld.
Paso 6 – Configurar SELinux
Si está ejecutando Zabbix en CentOS 8 con SELinux habilitado, debe realizar todos los comandos en esta sección.
Instale las utilidades de SELinux usando el comando dnf a continuación.
dnf install policycoreutils checkpolicy setroubleshoot-server
Una vez que se complete la instalación, cree un nuevo directorio ‘~/zabbix-linux’ y acceda a él.
mkdir -p ~/zabbix-selinux cd ~/zabbix-selinux/
Ahora cree un nuevo archivo de módulo de política de SELinux ‘zabbix_server_add.te’ usando el editor vim.
vim zabbix_server_add.te
Pegue la siguiente configuración.
module zabbix_server_add 1.1; require { type zabbix_var_run_t; type tmp_t; type zabbix_t; class sock_file { create unlink write }; class unix_stream_socket connectto; class process setrlimit; class capability dac_override; } #============= zabbix_t ============== #!!!! This avc is allowed in the current policy allow zabbix_t self:process setrlimit; #!!!! This avc is allowed in the current policy allow zabbix_t self:unix_stream_socket connectto; #!!!! This avc is allowed in the current policy allow zabbix_t tmp_t:sock_file { create unlink write }; #!!!! This avc is allowed in the current policy allow zabbix_t zabbix_var_run_t:sock_file { create unlink write }; #!!!! This avc is allowed in the current policy allow zabbix_t self:capability dac_override;
Guardar y cerrar.
Ahora convierta ‘zabbix_server_add.te’ en el módulo de políticas usando el comando checkmodule a continuación.
checkmodule -M -m -o zabbix_server_add.mod zabbix_server_add.te
Ahora compile el módulo de política ‘zabbix_server_add.mod’ usando el comando semodule_package.
semodule_package -m zabbix_server_add.mod -o zabbix_server_add.pp
Después de eso, cargue el módulo de políticas compilado ‘zabbix_server_add.pp’ en el sistema.
semodule -i zabbix_server_add.pp
Se cargó el módulo de política personalizada local para Zabbix.
A continuación, para la configuración adicional de SELinux. Ejecute el comando setsbool a continuación.
setsebool -P httpd_can_network_connect 1 setsebool -P httpd_can_connect_zabbix 1 setsebool zabbix_can_network on
Y se completó la configuración de SELinux para Zabbix.
Paso 7 – Configuración inicial de Zabbix
En primer lugar, inicie el servidor zabbix con los siguientes comandos.
systemctl start zabbix-server systemctl status zabbix-server
Ahora inicie el servicio zabbix-agent.
systemctl start zabbix-agent systemctl status zabbix-agent
Y luego reinicie el servicio httpd.
systemctl restart httpd
A continuación, abra su navegador web y escriba la dirección IP del servidor de la siguiente manera.
http://10.5.5.50/zabbix/
Y recibirás el mensaje de bienvenida de Zabbix.
Haga clic en el botón ‘Siguiente paso’.
Ahora, Zabbix verificará todos los requisitos del sistema para su instalación. Asegúrate de que no haya ningún error.
Haga clic en el botón ‘Siguiente paso’.
Para la información de la base de datos, escriba toda la configuración de su base de datos.
Y haga clic en el botón ‘Siguiente paso’.
Ahora viene la configuración de los detalles del servidor Zabbix. En el campo ‘Host’, escriba su propia dirección IP de servidor y cambie el nombre con su propio nombre de dominio o nombre de host.
Haga clic en el botón ‘Siguiente paso’ nuevamente.
Asegúrese de que todas esas configuraciones sean correctas, luego haga clic en el «botón Siguiente» para instalar Zabbix.
Y cuando se complete la instalación, obtendrá la página como se muestra a continuación.
Haga clic en el botón ‘Finalizar’ y será redirigido a la página de inicio de sesión de Zabbix.
Inicie sesión con el usuario predeterminado ‘admin’ y la contraseña ‘zabbix’.
Y obtendrá el panel de control predeterminado de Zabbix.
Y la instalación de Zabbix se ha completado.
Paso 8: cambiar la contraseña de administrador predeterminada
Para este último paso, vamos a cambiar la contraseña de administrador predeterminada para zabbix.
En el panel de administración de Zabbix, haga clic en el icono de usuario en la parte superior derecha.
Haga clic en el botón ‘Cambiar contraseña’ y escriba su nueva contraseña.
Ahora haga clic en el botón ‘actualizar’ y se cambiará la contraseña de administrador predeterminada.
Y la instalación y configuración de Zabbix en el sistema CentOS 8 se completó con éxito.