zabbix部署

zabbix部署

简介

  • Zabbix 是由 Alexei Vladishev 开发的一种网络监视、管理系统,基于 Server-Client 架构。可用于监视各种网络服务、服务器和网络机器等状态。
  • 监控的原因是我们需要及时得知服务器是否正常运行,如果管理一两台服务器还好说,出问题马上就可以发现,但是如果管理上百台服务器,有些时候就分身乏术了,这个时候就需要一个这样的网络监控管理系统,zabbix无疑可以提高网站的可用性
  • 高可用性,HA(High Available)有一个衡量的标准——x个9
 1个9:(1-90%)*365=36.5天,表示该软件系统在连续运行1年时间里最多可能的业务中断时间是36.5天 
2个9:(1-99%)*365=3.65天 , 表示该软件系统在连续运行1年时间里最多可能的业务中断时间是3.65天 
3个9:(1-99.9%)*365*24=8.76小时,表示该软件系统在连续运行1年时间里最多可能的业务中断时间是8.76小时。 
4个9:(1-99.99%)*365*24=0.876小时=52.6分钟,表示该软件系统在连续运行1年时间里最多可能的业务中断时间是52.6分钟。 
5个9:(1-99.999%)*365*24*60=5.26分钟,表示该软件系统在连续运行1年时间里最多可能的业务中断时间是5.26分钟。 
6个9:(1-99.9999%)*365*24*60*60=31秒, 示该软件系统在连续运行1年时间里最多可能的业务中断时间是31秒
  • 监控的内容(就像电脑上面的鲁大师一样)

硬件 温度,硬盘

系统 cpu,内存,硬盘使用率等等

服务 apache,nginx等等

性能 服务器性能,数据库性能等

日志 访问日志,错误日志等等

安全 对不同类型攻击的统计

网络 端口,网络流量等等

安装

这里做实验用了两台centos的虚拟机,一台当作服务端,另一台当作客户端

服务端

  • 安装zabbix源、aliyun YUM源
    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
    rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
  • 安装zabbix
    yum install -y zabbix-server-mysql zabbix-web-mysql
  • 安装Mariadb数据库
yum install -y  mariadb-server

  • 启动Mariadb数据库
    systemctl start mariadb.service

MariaDB数据库管理系统是MySQL的一个分支

  • 创建数据库
    mysql -e 'create database zabbix character set utf8 collate utf8_bin;'
    mysql -e 'grant all privileges on zabbix.* to zabbix@localhost identified by "zabbix";'

使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作

  • set utf8 设置数据库的默认编码为utf8
  • collate utf_bin是 以二进制值比较,也就是区分大小写,collate是核对的意思
  • uft-8_general_ci  一般比较,不区分大小写
  • grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
  • 当权限1,权限2,…权限n被all privileges或者all代替,表示赋予用户全部权限。
  • 当数据库名称.表名称被.代替,表示赋予用户操作服务器上所有数据库所有表的权限.这里的zabbix.*表示的是zabbix数据库里面的所有表
  • 用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%'表示从任何地址连接
  • 连接口令不能为空,否则创建失败。
cd /usr/share/doc/zabbix-server-mysql-3.0.32
zcat create.sql.gz | mysql -uzabbix -pzabbix zabbix

  • zcat命令用于不真正解压缩文件,就能显示压缩包中文件的内容的场合。zcat是一个命令行实用程序,用于查看压缩文件的内容,而无需对其进行解压缩
  • mysql -u -p (用用户名和密码)登录到mysql

  • 配置zabbix-server连接mysql
sed -i.ori '115a DBPassword=zabbix' /etc/zabbix/zabbix_server.conf

sed 的 -i 选项可以直接修改文件内容,a 动作是在匹配的行之后追加字符串,这里就是在115行后面新增DBPassword=zabbix

  • 添加时区
sed -i.ori '18a php_value date.timezone  Asia/Shanghai' /etc/httpd/conf.d/zabbix.conf

  • 解决中文乱码问题
    yum -y install wqy-microhei-fonts
    \cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

cp(英文全拼:copy file)命令主要用于复制文件或目录

  • 关掉防火墙以及Linux的安全子系统
    setenforce 0
    systemctl stop firewalld

  • 设置为开机自启动
    chmod +x /etc/rc.d/rc.local
    cat >>/etc/rc.d/rc.local<<EOF
    systemctl start mariadb.service
    systemctl start httpd
    systemctl start zabbix-server
    EOF

    rc.local开机自启动配置文件,这个配置文件会在用户登陆之前读取,这个文件中写入了什么命令,在每次系统启动时都会执行一次。

  • 启动服务(如果做实验可以选择不设为开机自启动,这里没有开启数据库是因为之前已经打开了)
systemctl start httpd
systemctl start zabbix-server

  • 输出信息
echo "浏览器访问 http://`hostname -I|awk '{print $1}'`/zabbix"

  • 这时候去访问给出的地址就会发现服务端已经安装好了

客户端

  • 安装zabbix源、aliyun、YUM源
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
rpm -ivh http://repo.zabbix.com/zabbix/3.0/rhel/7/x86_64/zabbix-release-3.0-1.el7.noarch.rpm
  • 安装zabbix客户端
yum install zabbix-agent -y

  • 设置主服务器的IP,修改配置文件/etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1
ServerActive=127.0.0.1
改为
Server=192.168.31.249
ServerActive=192.168.31.249
  • 启动服务
systemctl start  zabbix-agent.service

  • 写入为开机自启动(做实验可以不用)
chmod +x /etc/rc.d/rc.local
cat >>/etc/rc.d/rc.local<<EOF
systemctl start  zabbix-agent.service
EOF

检测连通性

  • 服务端安装zabbit-get检测工具
yum install zabbix-get

  • 在服务端进行测试
zabbix_get -s 192.168.31.162 -p 10050 -k "system.cpu.load[all,avg1]"

web界面操作

zabbix的web安装

  • 检测信息

  • 选择数据库

MySQL数据库嘛,所以我选的是3306端口,这里的密码是前面配置zabbixserver连接mysql时设置的

  • abbix server details

host和port可以不用修改,名字自定义

  • 确认信息

  • 安装完成,点击finish

  • 登录,默认用户名是Admin,密码是zabbix

添加监控信息

  • 修改监控管理机

  • 添加新的主机

可以选择添加一个模板

  • 添加完成

查看监控内容

 

然后就会出现所有的监控项

查看图像

下图中的两个地方进行选择,然后就会出图

总结

上面只介绍了安装、配置以及最最最基础的使用方法。在查询资料的时候借鉴了部分博客园博主【惨绿少年】的文章内容,在此表示感谢并附上原文链接,里面还介绍了其他的功能和高级使用方法,如果想要深入学习的可以参考一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值