zabbix分布式安装全过程
项目规划
| 软件 | 版本 | IP |
|---|---|---|
| zabbix-server | 3.4.15 | 10.1.10.128 |
| zabbix-proxy | 3.4.15 | 10.1.10.129 |
| zabbix-agent | 3.4.15 | 10.1.10.130 |
| centos | 7.6 | |
| mysql | 5.6.47 | 10.1.10.128/129 |
系统初始化
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
关闭SeLinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
zabbix-server
安装yum源
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
安装软件
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y
安装数据库
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum repolist enabled | grep"mysql.*-community.*"
yum install -y mysql-community-server
启动数据库
systemctl enable mysqld && systemctl start mysqld
创建数据库
mysql -uroot -p
create database zabbix character set utf8 collate utf8_bin;
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
flush privileges;
导入初始表
cd /usr/share/doc/zabbix-server-mysql-3.4.15/
zcat create.sql.gz | mysql -uzabbix -p zabbix
配置zabbix-server配置文件(/etc/zabbix/zabbix-server.conf)
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
启动zabbix-server
systemctl start zabbix-server && systemctl enable zabbix-server
配置http服务(/etc/httpd/conf.d/zabbix.conf
)
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghai
启动httpd
systemctl enable httpd && systemctl start httpd
在浏览器访问http://10.1.10.128/zabbix 配置



点击下一步直到登录,默认登录用户和密码(Admin/zabbix)

修正图形乱码
在windows上找相应得图片,上传到服务器上/usr/share/zabbix/fonts/,将其改名为graphfont.ttf
zabbix-proxy
配置yum源
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
安装软件
yum install zabbix-proxy zabbix-agent -y
因为zabbix-proxy会收集agent得数据,所以也需要安装数据库
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum repolist enabled | grep"mysql.*-community.*"
yum install -y mysql-community-server
启动mysql
systemctl enable mysqld && systemctl start mysqld
创建数据库和用户
create database zbx_proxy character set utf8 collate utf8_bin;
grant all privileges on zbx_proxy.* to zbx_proxy@localhost identified by 'zbx_proxy';
flush privileges;
导入zabbix-proxy库
cd /usr/share/doc/zabbix-proxy-mysql-3.4.15/
zcat schema.sql.gz | mysql -uzbx_proxy -p zbx_proxy
修改zabbix-proxy配置文件(/etc/zabbix/zabbix_proxy.conf)
注意:配置的时候将后面的配置去掉
ProxyMode=0
Server=10.1.10.128 # server服务器地址
HostnameItem=system.hostname
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
DBHost=localhost # zabbix-proxy 数据库配置
DBName=zbx_proxy
DBUser=zbx_proxy
DBPassword=zbx_proxy
ProxyLocalBuffer=3 # 数据同步到server,数据还会保存多久,单位小时
ProxyOfflineBuffer=24 # 未提交的数据保存多长时间
HeartbeatFrequency=60 # 心跳间隔检测时间, , 默认60秒, 范围0-3600秒, 被动模式不使用
ConfigFrequency=5 # 间隔多久从zabbix server 获取监控信息
DataSenderFrequency=5 # 数据发送时间间隔, 默认为1秒, 范围为1-3600秒, 被动模式不使用
StartPollers=10 # 启动的线程数, 与客户端的数据保持一致
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
启动zabbix-proxy
systemctl start zabbix-proxy && systemctl enable zabbix-proxy
配置web端,创建代理

注意代理名称与我们配置文件配置的Hostname一致。
zabbix-agent
安装YUM源
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-1.el7.centos.noarch.rpm
安装软件
yum install zabbix-agent -y
修改客户端配置文件(/etc/zabbix/zabbix_agentd.conf)
注意:配置的时候将后面的配置去掉
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=10.1.10.129 # zabbix-proxy地址
ServerActive=10.1.10.129 # zabbix-proxy地址
Hostname=10.1.10.130
Include=/etc/zabbix/zabbix_agentd.d/*.conf
UnsafeUserParameters=1
启动zabbix-agent
systemctl enable zabbix-agent && systemctl start zabbix-agent
监控客户端
手动添加主机




然后查看最新数据。有时候会没有获取到数据,这个是因为proxy启动了,但是zabbix 的server端没有创建代理,解决方法重启一下zabbix proxy就可以了。
然后就可以看到最新数据了。
自动发现
机器太多,手动配置太过繁琐,这时候就可以配置自动发现规则。
自动发现是由服务端发起。
1、配置自发现规则

备注:如果是通过代理去发现,就在上面代理程序配置代理
2、创建自动发现动作


我们可以看到已有主机被自动发现,如下:
自动注册
自动注册是由客户端发起,需要客户端配置好agent。


有agent的就会自动注册上。
自动下线


zabbix分布式安装全过程的更多相关文章
- zabbix的安装部署及自定义监控的实现
此篇感谢我的小师傅. 1. Zabbix主要功能和优劣势说明 1. Zabbix主要功能和优劣势说明 1.1 Zabbix主要功能: 1)Application monitoring 应用监控 数据库 ...
- LNMP+zabbix分布式监控搭建及版本升级
LNMP+zabbix分布式监控搭建需要组件:gcc gcc-c++ openssl* pcre pcre-devel gd gd-devel libjpeg-devel libpng-devel l ...
- Redis介绍——Linux环境Redis安装全过程和遇到的问题及解决方案
一:redis的入门介绍: 首先贴出官网; 英文:https://redis.io/ 中文:http://www.redis.cn/ 1.是什么 --REmote DIctionary Server( ...
- 06 Zabbix分布式监控和主被动模式
06 Zabbix分布式监控和主被动模式 zabbix proxy设置 使用zabbix代理的好处 监控拥有不可靠的远程区域 当监控项目数以万计的时候使用代理分担zabbix-proxy压力 简化分布 ...
- zabbix 分布式zabbix_proxy
Zabbix是一个分布式监控系统,它可以以一个中心点.多个分节点的模式运行,使用Proxy能大大的降低Zabbix Server的压力,Zabbix Proxy可以运行在独立的服务器上 1)下载zab ...
- Zabbix分布式监控
上一篇:Zabbix的API的使用 zabbix分布式监控 新建一台主机 安装zabbix proxy和数据库 yum -y install mariadb-server zabbix-proxy-m ...
- zabbix的安装(一)监控os资源:内存,cpu,io,负载,带宽
一.Linux下开源监控系统简单介绍1)cacti:存储数据能力强,报警性能差2)nagios:报警性能差,存储数据仅有简单的一段可以判断是否在合理范围内的数据长度,储存在内存中.比如,连续采样数据存 ...
- Zabbix分布式配置
Zabbix是一个分布式监控系统,它可以以一个中心点.多个分节点的模式运行,使用Proxy能大大的降低Zabbix Server的压力,Zabbix Proxy可以运行在独立的服务器上,安装Zabbi ...
- zabbix 分布式监控及优化
1..zabbix分布式监控,模拟多机房实现监控? 1.有多机房时,需要用到proxy 1.网络不通 2.网络延迟 2.当监控的主机较多时,也可以用proxy来缓解压力 1.安装proxy [root ...
随机推荐
- WEB页面实现方法
页面分类 :添加页.修改页.列表页.详情页.功能页.删除 一.添加 1) 准备tpl.action(添加页.添加页保存公用一个action),并确认是否登录才显示2) 书写添加页action代码,例如 ...
- 22 Extends 继承(子类、父类)
本章主要介绍继承的 概念.方法重写(@Override注解的使用).使用场景.方法的执行顺序 /*1.继承的 概念 * 继承:多个类有共同的成员变量和成员方法,抽取到另外一个类中(父类),在让多个类去 ...
- python3(二十) module
# 在Python中,一个.py文件就称之为一个模块(Module) # 1.最大的好处是大大提高了代码的可维护性. # 2.可以被其他地方引用 # 3.python内置的模块和来自第三方的模块 # ...
- redis中的分布式锁
分布式锁的实现场景 在平时的开发中,对于高并发的开发场景,我们不可避免要加锁进行处理,当然redis中也是不可避免的,下面是我总结出来的几种锁的场景 Redis分布式锁方案一 使用Redis实现分布式 ...
- C语言冒泡排序法分析及代码实现
冒泡排序法: 所谓冒泡排序法,就是对一组数字进行从大到小或者从小到大排序的一种算法.具体方法是,相邻数值两两交换.从第一个数值开始,如果相邻两个数的排列顺序与我们的期望不同,则将两个数的位置进行交换( ...
- Python-气象-大气科学-可视化绘图系列(一)——利用xarray读取netCDF文件并画图(代码+示例)
本文原创链接:https:////www.cnblogs.com/zhanling/p/12192978.html 1 import numpy as np import xarray as xr i ...
- 给我Python几十行代码,我还你一个微信聊天助手
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 故事胶片 PS:如有需要Python学习资料的小伙伴可以加点击下方链 ...
- docker 概览 (1)
Docker Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化.容器是完全使 ...
- stand up meeting 12-3
因为前后端在参数传递定义不清晰的原因,今天士杰和国庆采用了pair programming的方法,在一台电脑前工作了四十分钟,明确了请求questionpool,请求question,请求rank d ...
- Grafana-监控-报警-运维文档
Grafana运维文档 2019/09/23 Chenxin Wuweiwei 参考资料 https://grafana.com/grafana https://blog.52itstyle.vip/ ...