ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Zabbix监控系统部署

Zabbix监控系统部署 一、先想清楚一个理想的监控系统该有什么动手装之前最好先有套标准。网课上总结的 理想监控系统 清单我理解下来是三层。第一层监控本身。能自定义监控内容自己写脚本采集数据就行数据要入库方便事后分析计算部署要简单快速可视化要直观清晰第二层告警。告警逻辑能定义得复杂比如监控项之间的关联告警、程序依赖检测而不是只盯一个孤立的指标告警要能确认响应让组里人知道 这个已经有人在处理了报警方式可自定义短信、邮件、微信、钉钉告警内容可自定义能带一点简单分析省得人还得登服务器去看报警后能自动的简单的预处理比如自我修复、重启、采集数据第三层协同。有 API 给研发和其他系统调用监控数据开放、结构主流方便解析可视化能插件化使用而不是一堆复杂的 JS 文件二、监控到底在监控什么一个监控对象有哪些三、Zabbix 是什么Zabbix 是 Alexei Vladishev 开发的一套网络监视、管理系统基于 Server-Client 架构用来监视各种网络服务、服务器和网络机器的状态。几个关键点数据存储支持 MySQL、PostgreSQL、SQLite、Oracle、IBM DB2 等注意单独设置mysql的zabbix账户与专门数据库技术栈Server 端用 C 语言写Web 前端用 PHP注意版本低版本如php5可能不兼容监控方式灵活可以只用 Simple Check不装客户端在 UNIX/Windows 上装 Agent 后能监控 CPU Load、网络状况、硬盘容量等不装 Agent 也能通过 SNMP、TCP、ICMP、IPMI、SSH、telnet 监控目标扩展性自带 Item 足够满足普通小公司大公司可以自定义 Item、自动生成报表、用 API 和其他系统集成zabbix的业务逻辑一个完整的 Zabbix 监控系统主要由以下部分组成组件角色与职责部署位置Zabbix Agent数据采集器。部署在被监控目标如服务器、网络设备上负责采集CPU、内存、磁盘等数据。所有被监控的主机上Zabbix Proxy区域代理。可选组件充当Server的“区域采集站”。负责代表Server收集其下所有Agent的数据进行缓存和预处理后再批量转发给Server。代理靠近被监控端的独立服务器或容器Zabbix Server核心控制节点。整个系统的“大脑”负责接收所有数据、触发告警、执行动作并提供API接口。主机中心服务器Database数据存储。存储所有配置、历史数据和事件信息。数据库通常与Server在同一台或独立的数据库服务器上Web UI用户界面。提供图形化的配置、监控数据查看和报表功能。就是浏览器可与Server在同一台或独立部署四、部署实战CentOS 7 上部署Zabbix1. 环境初始化# 查看 IP ifconfig eth0 | awk NR2{print $2} # 关闭 SELinux改完重启生效 sed -i s/SELINUXenforcing/SELINUXdisabled/ /etc/selinux/config # 关闭并禁用防火墙 systemctl disable --now firewalld注意Zabbix Server 内存尽量给大一点4G 比较稳。2. 获取下载源换成阿里云镜像rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm把 repo 里的官方源替换成阿里云国内下载快sed -i s#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix# /etc/yum.repos.d/zabbix.repo清缓存装服务端和 agentyum clean all yum makecache yum install zabbix-server-mysql zabbix-agent -y3. 装前端Web 界面Zabbix 5.0 的 Web 前端跑在 SCLSoftware Collections环境里先装 SCL 工具yum install centos-release-scl -y再把[zabbix-frontend]段的 baseurl 改成阿里云镜像vim /etc/yum.repos.d/zabbix.repo 改成 baseurlhttps://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/frontend enabled1默认为0所以不会装 gpgcheck1 gpgkeyfile:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591grep -A6 ^\[zabbix-frontend\] /etc/yum.repos.d/zabbix.repo # 确认 enabled1、baseurl 是阿里云 yum makecache yum install zabbix-web-mysql-scl zabbix-apache-conf-scl -y安装前端环境和 Apache 配置yum install zabbix-web-mysql-scl zabbix-apache-conf-scl -y ##注意如果报错cannot find大概率是依赖树出了问题换源成阿里云的镜像站即可4. 装数据库 MariaDByum install mariadb-server -y systemctl enable --now mariadb初始化并设置 root 密码演示用 123生产请换强密码mysql_secure_installation这里有个交互项 Disallow root login remotely? [Y/n]学习用的虚拟机可以选 n 跳过允许远程 root 登录在生产环境不建议。5. 建库建用户mysql -uroot -p//进入数据库 MariaDB [(none)] create database zabbix character set utf8 collate utf8_bin; MariaDB [(none)] create user zabbixlocalhost identified by 123; SHOW DATABASES;//看看创建了没有补一步授权 —— 网课里没明说但导入数据前必须做否则后面会报权限错误MariaDB [(none)] grant all privileges on zabbix.* to zabbixlocalhost identified by 123; MariaDB [(none)] flush privileges; MariaDB [(none)] exit;6. 导入初始数据zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix7. 改 server 配置文件里的数据库密码grep ^DBPa /etc/zabbix/zabbix_server.conf # DBPassword123 //记得去注释 systemctl restart zabbix-server //改完重启8. 改 PHP 时区时区不对的话Web 安装向导会卡住。改 PHP-FPM 配置grep timezone /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf php_value[date.timezone] Asia/Shanghai9. 启动服务并访问systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm浏览器访问http://192.168.75.153/zabbix默认账号密码注意大小写网课老师专门强调过用大写Admin zabbix老问题[rootm01 ~]# chown -R zabbix:zabbix /var/run/zabbix [rootm01 ~]# chmod 755 /var/run/zabbix 由于老版或者zabbix文件权限不足导致无法运行zabbix提权即可成功了
返回列表