菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
438
0

CentOS7下zabbix 4.0安装部署

原创
05/13 14:22
阅读数 41347
一、zabbix概述
zabbix是一个适用于任何IT基础架构、服务、应用程序和资源的企业级分布式开源监控解决方案。
能够监控众多网络参数和服务区的健康度、完整性;
灵活的告警机制,允许用户为几乎任何事件配置基于邮件、微信、短信、钉钉等告警,利于快速的响应服务器问题;
提供出色的报表和数据可视化功能;
支持主动轮询和被动捕获方式监控;
所有的报表、统计数据、配置参数都可以通过web界面配置展示;
zabbix开源免费,是根据GPL通用公共许可证的第二版编写和发布;
支持提供全球专业的技术支持服务-.-。
 
二、zabbix部署
1、服务器安装要求
1.1 受支持的平台
Linux 、 IBM AIX 、 FreeBSD 、 NetBSD 、 OpenBSD 、 HP-UX 、 Mac OS X 、 Solaris
 
1.2 硬件配置参考
配置越好,运行的速度越快
 
 
1.3 软件配置
zabbix是基于先进的Apache Web服务器、领先的数据库引擎和PHP脚本语言构建。
数据库管理系统
(IBM DB2的支持是基于实验性的)
 
前端web页面
需要用到如下软件
 
浏览器
必须启用Cookies和Javascript
 
服务器依赖包
其他请移步至官方手册查看:
Java Gateway
数据容量
时间同步
 
2、Zabbix Server部署过程
2.1 部署yum软件仓库
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo 
sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo 
rpm -Uvh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm 
sed -i 's/repo.zabbix.com/mirrors.aliyun.com\/zabbix/g' /etc/yum.repos.d/zabbix.repo
2.2 安装Server端、web端rpm包
yum install zabbix-server-mysql zabbix-web-mysql 
2.3 安装mariadb
# ①、安装启动并设置开机自启 yum install mariadb-server systemctl start mariadb systemctl enable mariadb 

# ②、首次安装进行数据库配置,命令与mysql一样 mysql_secure_installation
# ③、配置时出现的选项简要说明
Enter current password
for root (enter for none): # 输入数据库超级管理员root的密码(注意不是系统root的密码),第一次进入还没有设置密码则直接回车
Set root password? [Y/n] # 设置数据库root管理员用户密码,输入Y ,然后输入密码,注意密码需要设置成12位以上复杂密码
New password:
Re-enter new password:
Remove anonymous users? [Y/n] # 移除匿名用户 Y
Disallow root login remotely? [Y/n] # 拒绝root远程登陆 Y
Remove test database and access to it? [Y/n] # 删除test数据库 Y
Reload privilege tables now? [Y/n] # 重新加载权限表 Y

# ④、 设置mariadb的字符集 1)修改/etc/my.cnf , 在 [mysqld]标签下边添加 ,注意单引号为英文状态下的单引号
# vi /etc/my.cnf
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake

2)修改/etc/my.cnf.d/client.cnf , 在 [client]标签下添加
# vi /etc/my.cnf.d/client.cnf
default-character-set=utf8

3) 修改 /etc/my.cnf.d/mysql-clients.cnf , 在[mysql]标签下添加
# vi /etc/my.cnf.d/mysql-clients.cnf
default-character-set=utf8

# ⑤、重启mariadb服务
# systemctl restart mariadb

# ⑥、登陆查看字符集
# mysql -uroot -p
mysql> show variables like "%character%";show variables like "%collation%";
2.4 创建zabbix数据库并导入zabbix初始数据库schema和数据
mysql> create database zabbix character set utf8 collate utf8_bin; 
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '<strongPassword>'; 
mysql> flush privileges; 
# zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix 
2.5 修改zabbix_server.conf中的数据库配置,找到相关行进行配置
1 # vi /etc/zabbix/zabbix_server.conf
2  DBHost=localhost 
3  DBName=zabbix 
4  DBUser=zabbix 
5  DBPassword=<strongPassword>
2.6 修改zabbix前端配置,将时区设置到上海时区
 1 # 最后一行是需要修改的: #号去掉及时区修改 
 2 # vi /etc/httpd/conf.d/zabbix.conf  
 3    php_value max_execution_time 300 
 4    php_value memory_limit 128M 
 5    php_value post_max_size 16M 
 6    php_value upload_max_filesize 2M 
 7    php_value max_input_time 300 
 8    php_value always_populate_raw_post_data -1 
 9    php_value date.timezone Asia/Shanghai 
10 
11 # 重启httpd服务 systemctl restart httpd
2.7 SELINUX、防火墙配置
setsebool -P httpd_can_connect_zabbix on 
setsebool -P httpd_can_network_connect_db on 
firewall-cmd --add-port=80/tcp --permanent 
firewall-cmd --reload 
2.8 启动zabbix并设置开机自启
systemctl enable zabbix-server 
systemctl start zabbix-server 
3、 Zabbix前端配置
web浏览器输入 http://ip/zabbix
3.1 检查预安装环境,前置环境都需要为ok状态,如不是需按提示安装相应套件
3.2 前端数据库配置
3.3 前端zabbix_server主机描述
3.4 前端预安装摘要信息
3.5 前端安装成功界面
3.6 前端登陆界面,默认账号Admin默认密码zabbix
3.7 修改前端显示语言为中文
 
三、zabbix服务进程
1 、Server
zabbix软件的核心程序,是所有配置、统计和操作数据的中央存储中心,也是Zabbix监控系统的告警中心。在监控的系统中出现任何异常,将被发出通知给管理员。
 
2 、Agent
部署在被监控目标上,收集本地的操作信息并将数据报告给 Zabbix server 用于进一步处理。一旦出现异常 (例如硬盘空间已满或者有崩溃的服务进程),Zabbix server 会主动警告管理员指定机器上的异常。
Zabbix agent 可以运行被动检查和主动检查,是否执行被动或主动检查是通过选择相应的监控项类型来配置的。
被动检查 Zabbix server(或 proxy)询求数据,例如 CPU load,然后 Zabbix agent应答数据请求,返回结果给Server;
主动检查 Agent 必须首先从 Zabbix sever 索取监控项列表以进行独立处理,然后会定期发送采集到的新值给Server。
Agent的一些选项参数:
 
3、Zabbix Sender
一个命令行应用程序,必须配置 trapper 监控项 类型,可用于将性能数据发送到 Zabbix server 进行处理。
该实用程序通常用于长时间运行的用户脚本,用于定期发送可用性和性能数据。
范例
zabbix_sender -z zabbix -s "Linux DB3" -k db.connections -o 43 
其中:
z - Zabbix server 主机(也可以使用 IP 地址)
s - 被监控主机的名称(在前端注册)
k - 监控项键值
o - 要发送的值 包含空格的选项必须使用双引号引用。 Zabbix sender 可通过从输入文件发送多个值。 详见Zabbix sender manpage。 Zabbix sender 接受 UTF-8 编码的字符串(对于类 UNIX 系统和 Windows ),且在文件中没有字节顺序标记(BOM)。
4、Zabbix Get
一个命令行应用,它可以用于与 Zabbix agent 进行通信,并从 Zabbix agent 那里获取所需的信息,通常用于 Zabbix agent 故障排错。详见 Zabbix get 手册
范例
1 # Zabbix get 从 Zabbix agent 获取 processor load 的值 
2 zabbix_get -s 127.0.0.1 -p 10050 -k system.cpu.load[all,avg1] 
3 参数选项 
4 -s --host <host name or IP> 指定目标主机名或IP地址 
5 -p --port <port number> 指定主机上运行 Zabbix agent 的端口号。默认端口10050 
6 -I --source-address <IP address> 指定源 IP 地址 
7 -k --key <item key> 指定要从监控项键值检索的值 
8 -h --help 获得帮助 
9 -V --version 显示版本号
四、Zabbix问题处理
1、zabbix server日志
日志信息保存在 /var/log/zabbix 目录下,执行命令tail -f /var/log/zabbix/zabbix_server.log
 
2、web前端图形字体中文显示异常
问题原因:
/usr/share/fonts/dejavu/DejaVuSans.ttf图形字体不支持中文显示
解决方法:
从windows操作系统中拷贝一个简体字体(楷体)[ C:\Windows\Fonts\simkai.ttf ] , 替换图形字体文件
mv /usr/share/fonts/dejavu/DejaVuSans.ttf /usr/share/fonts/dejavu/DejaVuSans.ttf.bak 
mv simkai.ttf /usr/share/fonts/dejavu/DejaVuSans.ttf
3、Zabbix server内存溢出,无法启动
问题原因:
这是由于zabbix默认的缓存配置只有8M,当你zabbix正常运行一段时间后,大批量添加一些被监控设备就会出现这种情况。
解决方法:
打开zabbix_server.conf文件,将CacheSize改一个较大的值,我现在给自己配的是1024M。
vim /etc/zabbix/zabbix_server.conf
CacheSize=1024M #第385行

发表评论

0/200
438 点赞
0 评论
收藏