项目规划

软件 版本 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分布式安装全过程的更多相关文章

  1. zabbix的安装部署及自定义监控的实现

    此篇感谢我的小师傅. 1. Zabbix主要功能和优劣势说明 1. Zabbix主要功能和优劣势说明 1.1 Zabbix主要功能: 1)Application monitoring 应用监控 数据库 ...

  2. LNMP+zabbix分布式监控搭建及版本升级

    LNMP+zabbix分布式监控搭建需要组件:gcc gcc-c++ openssl* pcre pcre-devel gd gd-devel libjpeg-devel libpng-devel l ...

  3. Redis介绍——Linux环境Redis安装全过程和遇到的问题及解决方案

    一:redis的入门介绍: 首先贴出官网; 英文:https://redis.io/ 中文:http://www.redis.cn/ 1.是什么 --REmote DIctionary Server( ...

  4. 06 Zabbix分布式监控和主被动模式

    06 Zabbix分布式监控和主被动模式 zabbix proxy设置 使用zabbix代理的好处 监控拥有不可靠的远程区域 当监控项目数以万计的时候使用代理分担zabbix-proxy压力 简化分布 ...

  5. zabbix 分布式zabbix_proxy

    Zabbix是一个分布式监控系统,它可以以一个中心点.多个分节点的模式运行,使用Proxy能大大的降低Zabbix Server的压力,Zabbix Proxy可以运行在独立的服务器上 1)下载zab ...

  6. Zabbix分布式监控

    上一篇:Zabbix的API的使用 zabbix分布式监控 新建一台主机 安装zabbix proxy和数据库 yum -y install mariadb-server zabbix-proxy-m ...

  7. zabbix的安装(一)监控os资源:内存,cpu,io,负载,带宽

    一.Linux下开源监控系统简单介绍1)cacti:存储数据能力强,报警性能差2)nagios:报警性能差,存储数据仅有简单的一段可以判断是否在合理范围内的数据长度,储存在内存中.比如,连续采样数据存 ...

  8. Zabbix分布式配置

    Zabbix是一个分布式监控系统,它可以以一个中心点.多个分节点的模式运行,使用Proxy能大大的降低Zabbix Server的压力,Zabbix Proxy可以运行在独立的服务器上,安装Zabbi ...

  9. zabbix 分布式监控及优化

    1..zabbix分布式监控,模拟多机房实现监控? 1.有多机房时,需要用到proxy 1.网络不通 2.网络延迟 2.当监控的主机较多时,也可以用proxy来缓解压力 1.安装proxy [root ...

随机推荐

  1. Chrome浏览器架构

    通用浏览器架构 它可以是一个具有许多不同线程的进程,也可以是具有几个通过IPC进行通信的多个线程的进程. 一个具有许多不同线程的进程 通过IPC进行通信的多个线程的进程 注意 这些不同的体系结构是实现 ...

  2. Node.js 的事件循环机制

    目录 微任务 事件循环机制 setImmediate.setTimeout/setInterval 和 process.nextTick 执行时机对比 实例分析 参考 1.微任务 在谈论Node的事件 ...

  3. 利用opencv实现视频捕捉功能

    import cv2 as cv import numpy as np def video_demo(): capture = cv.VideoCapture(0) #打开摄像头,参数0代表设备ID( ...

  4. Bi-shoe and Phi-shoe LightOJ - 1370

    欧拉函数. 欧拉函数打表模板: #define maxn 3000010 int p[maxn]; void oula(){ int i,j; ; i<=maxn; i++) p[i]=i; ; ...

  5. Laravel中使用JWT

    Laravel 版本: Laravel Framework 6.18.3 查看版本命令: php artisan -V 1.安装JWT扩展包: composer require tymon/jwt-a ...

  6. bypass安全狗测试学习

    搭建简单的sql注入环境 在test数据库中创建sqltest表,插入字段数据 编写存在注入的php文件 <?php $id = $_REQUEST['uid']; echo "您当前 ...

  7. tensorflow1.0 队列FIFOQueue管理实现异步读取训练

    import tensorflow as tf #模拟异步子线程 存入样本, 主线程 读取样本 # 1. 定义一个队列,1000 Q = tf.FIFOQueue(1000,tf.float32) # ...

  8. Spring Cloud 系列之 Sleuth 链路追踪(一)

    随着微服务架构的流行,服务按照不同的维度进行拆分,一次请求往往需要涉及到多个服务.互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发.可能使用不同的编程语言来实现.有可能布在了 ...

  9. thinkphp5.0.x

    payload5.0.24 http://-----/index.php?s=index/think\app/invokefunction&function=call_user_func_ar ...

  10. VideoView--简单获取进度条的方法

    使用MediaController类就可以简单的把视频中的进度条加进去 实例: 现在布局哪里放一个VideoView,然后: videoView = (VideoView) findViewById( ...