ZABBIX-实战项目

企业常见监控工具

cacti:擅长出图,添加监控项很繁琐
nagios:可以添加监控项,但不可图形化
ganglia:分布式集群监控系统,适合于对上千台大型规模集群进行监控,性能成本比较低,批量管理更加方便,但不支持告警。
zabbix:基于web,提供分布式方式监控网络和系统参数,出图美观,支持告警
promethus:适合于监控k8s
ELK:日志监控

zabbix工作原理

Agentd安装在被监控的主机上,Agent负责定期收集客户端本地各项数据,并发送至Zabbix Server端,Zabbix Server收到数据,将数据存储到数据库中,用户基于Zabbix WEB可以看到数据在前端展现图像。
 当Zabbix监控某个具体的项目,该项目会设置一个触发器阈值,当被监控的指标超过该触发器设定的阈值,会进行一些必要的动作,动作包括:发送信息(邮件、微信、短信)、发送命令(SHELL 命令、Reboot、Restart、Install等)

安装部署环境

安装部署服务端

1.关闭防火墙和禁用selinux

systemctl stop firewalld
systemctl disable firewalld
sed -i "s/SELINUX=.*/SELINUX=Disabled/" /etc/selinux/config

2.安装zabbix5.0的rpm源
官方源地址:

repo.zabbix.com
rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
yum clean all

3.安装软件包
安装 zabbix server 和 agent

yum install zabbix-server-mysql zabbix-agent -y

安装 Software Collections,便于后续安装高版本的 php,默认 yum 安装的 php 版本为 5.4 过低

yum install centos-release-scl -y

启用 zabbix 前端源,修改vi /etc/yum.repos.d/zabbix.repo,将[zabbix-frontend]下的 enabled 改为 1

[zabbix-frontend]
...
enabled=1
...

安装 zabbix 前端和相关环境

yum install zabbix-web-mysql-scl zabbix-nginx-conf-scl -y

数据库安装
1.安装mariadb数据库

yum install mariadb-server -y
systemctl enable --now mariadb

mariadb设置root密码

mysqladmin -uroot password admin

使用 root 用户进入 mysql,并建立 zabbix 数据库,注意数据库编码

create database zabbix character set utf8 collate utf8_bin;
create user zabbix@localhost identified by 'zabbix';
grant all privileges on zabbix.* to zabbix@localhost;
quit;

导入初始架构和数据,zabbix 数据库用户为 zabbix,密码为 zabbix

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix

导入成功,如下图:
ZABBIX-实战项目

为Zabbix server配置数据库:
修改 zabbix server 配置文件vi /etc/zabbix/zabbix_server.conf 里的数据库密码


DBName=zabbix
DBUser=zabbix
DBPassword=zabbix

为Zabbix前端配置PHP:
编辑配置文件 vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf, add nginx to listen.acl_users directive.

listen.acl_users = apache,nginx
php_value[date.timezone] = Asia/Shanghai

Nginx端配置
nginx配置1:
编辑配置文件 vi /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf, uncomment and set 'listen' and 'server_name' directives.

# listen 80;
# server_name localhost;

nginx配置2:

注释listen,server_name,root
vim /etc/opt/rh/rh-nginx116/nginx/nginx.conf
    server {
#        listen       80 default_server;
#        listen       [::]:80 default_server;
#        server_name  _;
#        root         /opt/rh/rh-nginx116/root/usr/share/nginx/html;

#        Load configuration files for the default server block.#        include      /etc/opt/rh/rh-nginx116/nginx/default.d/*.conf;

启动相关服务,并配置开机自动启动

systemctl start zabbix-server rh-php72-php-fpm rh-nginx116-nginx

systemctl enable zabbix-server rh-php72-php-fpm rh-nginx116-nginx

使用浏览器访问http://ip/zabbix 即可访问 zabbix 的 web 页面

上一篇:【Opencv3+Python3入门(17)图像轮廓发现】


下一篇:零基础入门机器视觉(7)