zabbix 5.0 yum安装 (建议内存4G)
###一、 zabbix-server安装
#注意时间正确
yum -y install ntpdate
ntpdate -u ntp.aliyun.com
#时区的统一配置
mv /etc/localtime{,.bak}
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
1、关闭防火墙和selinux
systemctl stop firewalld
systemctl disable firewalld
sed -i ‘s/^(SELINUX=).*/\1disabled/g’ /etc/selinux/config
2、安装zabbix yum源
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
3、修改zabbix源为阿里云
sed -i ‘s#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#’ /etc/yum.repos.d/zabbix.repo
#同时把enabled=0 改为 enabled=1
4、清空缓存
yum clean all
yum makecache
5、安装zabbix-server zabbix-agent
yum -y install zabbix-server zabbix-agent
6、安装centos-release-scl 可以在机器上使用多个版本的软件并且不会影响到依赖环境
yum -y install centos-release-scl
7、安装前端环境,且安装到scl环境
yum -y install zabbix-web-mysql-scl zabbix-apache-conf-scl
8、安装zabbix所需数据库,mariadb
yum -y install mariadb-server
9、开机自启动并立即启动
systemctl enable --now mariadb
10、初始化数据库 设置密码 123
mysql_secure_installation
(1)输入当前root密码 默认为空
(2)是否设置root密码
(3)是否移除匿名用户
(4)是否禁止root用户远程登录
(5)是否删除测试数据库
(6)是否刷新授权表
11、登录数据库 密码 123
mysql -uroot -p123
12、创建zabbix数据库
create database zabbix character set utf8 collate utf8_bin;
13、创建zabbix用户 密码为123
create user zabbix@localhost identified by ‘123’;
14、授权
grant all privileges on zabbix.* to zabbix@localhost;
15、刷新数据授权
flush privileges;
16、退出数据库
exit
17、使用zabbix-mysql命令,导入数据库信息
#mysql -u 用户名 -p 数据库名称
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
18、修改zabbix_server.conf (添加或者修改)#/etc/zabbix/zabbix_server.conf
mv /etc/zabbix/zabbix_server.conf /etc/zabbix/zabbix_server.conf.bak
vim /etc/zabbix/zabbix_server.conf
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBName=zabbix
DBUser=zabbix
DBPassword=123
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1
19、修改为亚洲上海时区
vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
php_value[date.timezone] = Asia/Shanghai
20、启动zabbix相关服务
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
21、访问网页设置zabbix
ip/zabbix
登录名:Admin
密码:zabbix
22、修改图形乱码
安装字体
yum -y install wqy-microhei-fonts
复制字体
\cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf
###二、安装zabbix-agent2
#关闭防火墙和selinux
systemctl stop firewalld
systemctl disable firewalld
sed -i ‘s/^(SELINUX=).*/\1disabled/g’ /etc/selinux/config
安装zabbix yum源
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
1、注意时间正确
yum -y install ntpdate
ntpdate -u ntp.aliyun.com
2、时区的统一配置
mv /etc/localtime{,.bak}
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
3、安装zabbix-agent
yum -y install zabbix-agent2
4、查看zabbix配置文件
cat /etc/zabbix/zabbix_agent2.conf
5、启动命令
/usr/sbin/zabbix_agent2
systemctl enable --now zabbix-agent2 ##–now 立即启动
6、查看服务是否启动
ps -ef | grep zabbix
7、修改配置文件内容
[root@zabbix-agent ~]# grep -Ev ‘#|$’ /etc/zabbix/zabbix_agent2.conf
PidFile=/var/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=0
Server=192.168.1.10
ServerActive=192.168.1.10
Hostname=zabbix-agent
Include=/etc/zabbix/zabbix_agent2.d/*.conf
ControlSocket=/tmp/agent.sock
8、重启客户端
[root@zabbix-agent ~]# systemctl restart zabbix-agent2
9、在zabbix-server上安装zabbix-get测试连通性
(1)yum安装:
yum install zabbix-get -y
(2)命令测试检测服务器是否连接上客户端 ##返回值应该为1是正确
zabbix_get -s ‘192.168.1.11’ -p 10050 -k ‘agent.ping’
zabbix_get -s ‘192.168.1.11’ -p 10050 -k ‘agent.hostname’
-s 指定IP -p 指定端口 -k 指定要执行的命令
###三、安装proxy代理
#关闭防火墙和selinux
systemctl stop firewalld
systemctl disable firewalld
sed -i ‘s/^(SELINUX=).*/\1disabled/g’ /etc/selinux/config
关闭服务器端的自动发现和自动注册。
1、安装zabbix yum源
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
修改zabbix源为阿里云
sed -i ‘s#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#’ /etc/yum.repos.d/zabbix.repo
#同时把enabled=0 改为 enabled=1
2、安装proxy,以及数据库
yum install zabbix-proxy-mysql zabbix-get -y
3、启动数据库,配置数据库用户,存储zabbix-agent2信息数据
yum install mariadb-server mariada -y
systemctl start mariadb
4、数据库sql设置
mysql -uroot -p
create database zabbix_proxy character set utf8 collate utf8_bin;
grant all privileges on zabbix_proxy.* to zabbix@‘localhost’ identified by ‘zabbix’;
创建zabbix数据库
create database zabbix character set utf8 collate utf8_bin;
flush privileges;
重启数据库
systemctl restart mariadb
5、导入zabbix数据库信息
查看数据库表信息在那
rpm -ql zabbix-proxy-mysql
添加到数据库zabbix
#mysql -u 用户名 -p 数据库名称
zcat /usr/share/doc/zabbix-proxy-mysql-5.0.11/schema.sql.gz | mysql -uzabbix -p zabbix
flush privileges;
6、修改zabbix-proxy配置文件,链接数据库的信息
sed -i.ori ‘162a DBPassword=zabbix’ /etc/zabbix/zabbix_proxy.conf
sed -i ‘s#Server=127.0.0.1#Server=192.168.1.10#’ /etc/zabbix/zabbix_proxy.conf
sed -i ‘s#Hostname=Zabbix proxy#Hostname=zabbix-proxy1#’ /etc/zabbix/zabbix_proxy.conf
7、检查代理服务器的配置文件
grep ‘1’ /etc/zabbix/zabbix_proxy.conf
###[root@zabbix-proxy1 ~]# grep ‘2’ /etc/zabbix/zabbix_proxy.conf
Server=192.168.1.10
Hostname=zabbix-proxy1
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
DBPassword=zabbix
DBName=zabbix_proxy
DBUser=zabbix
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1
8、启动代理服务器zabbix-proxy
systemctl restart zabbix-proxy
9、在web页面添加代理
管理>代理>创建
###四、报错:
1、代理服务器找不到zabbix-agent
19909:20210519:102426.666 cannot send list of active checks to “192.168.1.11”: host [zabbix-agent1] not found
2、在zabbix-server服务器中
查看/var/log/zabbix/zabbix_agentd.conf文件
检查Hostname=zabbix-server #名称是否是zabbix-server服务器的主机名称。
3、zabbix-server启动不了去查看日志文件 (修改完成后重启服务器)
tail -f /var/log/zabbix/zabbix_server.log
###五、snmp监控
1、服务器安装snmp监控程序
yum -y install net-snmp net-snmp-utils
2、开启snmp
sed -i.ori ‘57a view systeview included .1’ /etc/snmp/snmpd.conf
systemctl start snmpd.service
3、使用snmppingl
-v 指定协议版本 -c 指定暗号 sysname snmp的key
snmpwalk -v 2c -c public 127.0.0.1 sysname
4、在server和被监控端添加修改 /etc/snmp/snmpd.conf 文件
Make at least snmpwalk -v 1 localhost -c public system fast again.
name incl/excl subtree mask(optional)
view all included .1 # 添加这一行并在最上面
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1
Finally, grant the group read-only access to the systemview view.
group context sec.model sec.level prefix read write notif
# 将原来的systemview改为all
access notConfigGroup “” any noauth exact all none none
-----------------------------------------------------------------------------
5、示例:获取内存大小
#.1.3.6.1.2.1.25.2.2.0这个OID是获取内存总量大小的。
snmpget -v 2c -c public 192.168.1.11 .1.3.6.1.2.1.25.2.2.0
snmpget -v 2c -c public 192.168.1.12 .1.3.6.1.2.1.25.2.2.0
6、更改团体字 (默认为public)
/etc/snmp/snmpd.conf 文件的41行
#######装使用SNMP
yum install net-snmp net-snmp-utils
1
有时候我们监控项需要权限,为了测试,先在打开全部查看的权限
修改配置文件/etc/snmp/snmpd.conf
Make at least snmpwalk -v 1 localhost -c public system fast again.
name incl/excl subtree mask(optional)
view systemview included .1 ##添加这一行 ,且必须在前面,不然会无效
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1
1
2
3
4
5
启动snmp服务
systemctl start snmpd
1
测试
snmpget命令格式
snmpget [COMMON OPTIONS] [-Cf] AGENT OID [OID]…
常用的选项
-v 1|2c|3 表示使用snmp协议的哪个版本,有3个版本,最常用的是2c
-c COMMUNITY 设置口令,一般都是public,如果需要修改可以在配置文件改
示例:获取内存大小
##.1.3.6.1.2.1.25.2.2.0这个OID是获取内存总量大小的。
snmpget -v 2c -c public 192.168.253.128 .1.3.6.1.2.1.25.2.2.0