啥是zabbix?
zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,Free BSD,Open BSD,OS X等平台上。
开始操作
本次作业使用默认的nat网卡!
之前是按照这篇文章配置的yum外源
- Linux之RedHat7如何更换yum源
安装Apache并启动设置自启动(已安装则省略)
yum install -y httpd
systemctl start httpd
systemctl enable httpd
防火墙放通http,并重启防火墙
firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --reload
查看是否启动以及http是否放通
systemctl status httpd
firewall-cmd --zone=public --query-service=http --permanent
安装MariaDB(如已安装可省略)
yum install -y mariadb mariadb-server
systemctl start mariadb
systemctl enable mariadb
初始化(如已初始化可省略)
mysql_secure_installation
使用root账户登入
mysql -u root -p密码
创建一个名为zabbix的数据库,数据库字体使用utf8的字符编码格式,校验参考utf8_bin
create database zabbix character set utf8 collate utf8_bin;
创建一个用户名为zb,密码zb
create user zb@localhost identified by 'zb';
将zabbix数据库下的所有表单的所有权限都赋给zb
grant all privileges on zabbix.* to zb@localhost identified by 'zb';
查看所有表
show databases;
查看用户zb权限
show grants for zb@localhost;
部署php环境
yum install -y php php-mysql
安装zebbix的repository
在CentOS中的的/etc/yum.repos.d/中的yum源文件没有针对zabbix的相关最新的rpm,因此需要额外添加一个。
cd /etc/yum.repos.d //进入目录
ll //查看目录下的文件
需要编辑得是之前更改的yum源:CentOS-Base.repo 或者你之前设置的repo文件
需要编辑得是之前更改的yum源:CentOS-Base.repo
vim CentOS-Base.repo
末尾添加如下内容
[zabbix]
name=Zabbix Official Repository - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/4./rhel/7/\$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/\$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
添加密钥
先刷入
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
再刷入
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
安装Zabbix server,Web前端,agent
yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent
导入初始架构和数据
原先的zabbix数据库下是没有任何的表项的
退出数据库
cd ~ 输入以下内容导入数据库
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzb -pzb zabbix
再次show tables;
发现表有内容了
配置zabbix主配置文件
vim /etc/zabbix/zabbix_server.conf
更改
DBUser=zb
以及
DBPassword=zb
为Zabbix Server前端配置PHP
vim /etc/httpd/conf.d/zabbix.conf
去#,并且设置成Asia/Shanghai
php_value date.timezone Asia/Shanghai
关闭防火墙和selinux
systemctl stop firewalld
setenforce 0
启动Zabbix server和agent进程
systemctl restart zabbix-server zabbix-agent httpd
systemctl enable zabbix-server zabbix-agent httpd
配置Zabbix 前端
自带的火狐浏览器输入你的ip/zabbix自动进入安装向导
输入刚才新建的数据库账户zb,密码zb
输入Zabbix服务器的名称是可选的,但是如果提交,它将显示在菜单栏和页面标题中,当然你可以选择直接下一步
默认的 账号为 Admin 密码 zabbix(注意大小写)
由于本身也安装了zabbix-agent,可以自己监控自己
打开GNS3,搭建如下拓扑
因为实验默认使用nat,默认的nat是vmnet8网卡,所以也是使用vmnet8
我的网卡分配地址是192.168.23.130
保证与路由器的连通性,配置e0/0的IP,为相同网段的ip,ping通
配置SNMP
snmp-server community zabbix rw ------>配置交换机的Community为“zabbix”
snmp-server host 192.168.23.131 traps version 2c zabbix ------>配置交换机主动向PC发送消息,PC 地址为192.168.23.131,community为“zabbix”
snmp-server enable traps ------>使能交换机主动发送Trap消息
在服务器上使用命令给进行测试
安装net-snmp-utils
yum -y install net-snmp-utils
linux下使用命令进行测试(测试过程较长,可选步骤)
snmpwalk -v 2c -c zabbix 192.168.23.131(路由器e0/0ip)
在zabbix上添加主机
输入信息ip等点击左下角Add
发现多了刚才设置的switch
点击switch
添加模板
提示成功
添加宏
选择enable
绿起来即为上线
点击switch
Discovery rules-全选name,选择check now
选择Network interfaces discovery
改为1m(1分钟)
在交换机上制造一些流量
ping 192.168.23.130 repeat 100000 size 15000
等待一分钟后
再去查看最近五分钟的流量