前言
Zabbix是一款开源的网络监控和管理软件,具有高度的可扩展性和灵活性。它可以监控各种网络设备、服务器、虚拟机以及应用程序等,收集并分析性能指标,并发送警报和报告。Zabbix具有以下特点:
1. 支持多种监控方式:可以使用主动和被动监视两种方式监视设备。
2. 自动发现功能:可以自动发现和添加新设备。
3. 强大的报告功能:可以生成各种细粒度的报告和图像,使用户可以更方便地查看监控数据。
4. 多种告警方式:支持电子邮件、短信、声音和控制台告警等多种方式,用户可以根据自己的需求自由选择。
5. 可扩展性:支持多种插件和扩展,可以根据需要自定义监控项。
总之,Zabbix是一款功能强大的监控工具,它可以帮助用户更加高效地管理和监控网络设备和应用,提高 IT 系统的稳定性和可靠性。
目录
2.4.1 安装zabbix服务器端组件zabbix server和agent
2.4.3 安装zabbix前端页面、初始化数据库、PHP以及httpd组件
1 环境配置
(1)关闭防火墙
systemctl stop firewalld
永久关闭防火墙
systemctl disable firewalld
(2)关闭SELinux
setenforce 0
# setenforce 1 #设置SELinux为强制模式
# setenforce 0 #设置SELinux为宽容模式
vi /etc/sysconfig/selinux
修改为:SELINUX=disabled
修改完成后保存退出。
普及:
获取SELinux状态:
getenforce
getenforce是一个Linux命令,用于查看SELinux(Security-Enhanced Linux)安全机制的状态(SELinux是一款基于Linux内核的安全模块)。该命令可以显示当前SELinux的强制模式状态:enforcing(强制模式)、permissive(宽容模式)或disabled(禁用模式)。
2 安装并配置Zabbix
2.1 安装zabbix官方的yum源
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
2.2 清理yum源缓存,获取最新的
yum clean all
yum makecache
2.3 编辑官方yum源,开启需要安装的源信息
把zabbix-frontend的enabled选项开启,设置为1。(0--不启用,1--启动)
vi /etc/yum.repos.d/zabbix.repo
2.4 安装所有需要安装的软件包
2.4.1 安装zabbix服务器端组件zabbix server和agent
yum install zabbix-server-mysql zabbix-agent -y
【安装会有个询问过程(yes or no),后面加-y表示yes】
2.4.2 安装zabbix前端组件
yum install centos-release-scl -y
2.4.3 安装zabbix前端页面、初始化数据库、PHP以及httpd组件
yum install zabbix-web-mysql-scl zabbix-nginx-conf-scl -y
3 安装并配置MySQL
3.1 安装centos 7默认的mariadb数据库
yum install mariadb-server -y
3.2 启动数据库,并配置开机自动启动
systemctl enable --now mariadb
3.3 初始化mariadb并配置root密码
mysql_secure_installation
这时候点击Enter键
输入密码并再次输入密码
显示successful即表示设置密码成功。
接下来yes/no,我们都输入n。
n/n/n/n
3.4 使用root用户进入MySQL
mysql -uroot -p
【如果未遇到问题,请直接跳到3.5 】
【问题解决】
一、问题:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
二、原因:
错误 1045 (28000):用户“root”@“本地主机”的访问被拒绝(使用密码:是)
简单的说,就是用户root没有使用权限。
(1) MySQL服务器停止
(2)密码输入错误
三、解决方法:
(1)若MySQL已经没有启动,重启MySQL服务器
systemctl restart mysqld
或者
systemctl restart mariadb
(2)修改密码
1.修改/etc/my.cnf文件,在[mysqld]中添加skip-grant-tables(登录时跳过权限检查)
vi /etc/my.cnf
skip-grant-tables
2. 重启数据库
systemctl restart mysqld
或者
systemctl restart mariadb
3.修改密码
先登录mysql
mysql -uroot -p
会让你输入密码,直接点击回车即可。
输入use mysql
use mysql
设置密码
【MySQL密码不好设置,可以跟我一样设置密码为:Abcdefg@123】
方法一:
set password for `root`@`localhost`=password('Abcdefg@123');
【问题解决】
如果遇到
ERROR 1290 (HY000): The MariaDB server is running with the --skip-grant-tables option so it cannot execute this statement
输入flush privileges;
flush privileges;
接下来再次输入set password for `root`@`localhost`=password('Abcdefg@123');即可
set password for `root`@`localhost`=password('Abcdefg@123');
方法二:
update mysql.user set authentication_string ='Abcdefg@123' where user="root";
4.退出
exit
5.将my.cnf中的skip-grant-tables去除
vi /etc/my.cnf
6.重启服务
systemctl restart mysqld
或者
systemctl restart mariadb
7.登录
使用修改后的密码登录即可。
普及:
不输入密码显示:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
3.5 创建zabbix的数据库,注意数据库编码
(1)将它的字符设为utf 8。
create database zabbix character set utf8 collate utf8_bin;
(2)创建一个localhost,用户认证通过password。
create user zabbix@localhost identified by 'password';
(3)创建优先级,都允许来访问zabbix。
grant all privileges on zabbix.* to zabbix@localhost;
(4)退出
quit
3.6 导入数据库
zabbix数据库用户为zabbix,密码为password。
#mysql -u用户名 -p 数据库名
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
4 zabbix配置初始化
4.1 配置数据库连接信息
修改zabbix_server配置文件,找到DBPassword=,将前面的#删掉,等号后输入password。
vi /etc/zabbix/zabbix_server.conf
修改前:
修改后:
4.2 配置时区信息
修改时间区域(去除前面的; 末尾修改为上海的时区)
#php_value[date.timezone] = Asia/Shanghai
vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
修改前:
修改后:
4.3 配置文字,避免前台监控图形中文乱码
yum -y install wqy-microhei-fonts
将下载好的ttc的字体覆盖到原来的默认字体上面。
cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf
输入y确认覆盖。
4.4 启动zabbix相关服务并设置开机自启动
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
开机自动启动
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
5 浏览器访问
使用如下命令即可登入zabbix。
http://IP地址/zabbix
输入刚配置的数据库zabbix用户密码:password。
登录账号Admin,密码 :zabbix。
进入系统后默认是英文显示,可以点击左下角User settings,设置语言为中文即可。
IP地址获取方法:
ip a
使用ip a命令查看IP地址
在2:ens33:中第三行inet后,可以知道我们IP地址是192.168.10.115。
创作不易,给个三连吧~