zabbix5.0版本监控环境安装部署(CentOS7.5)_蜗牛速度在更新的博客-程序员信息网

技术标签: 运维  linux  服务器  centos  

zabbix官方网址:

https://www.zabbix.com/cn/download?zabbix=5.0&os_distribution=centos&os_version=7&db=mysql&ws=nginx

基于LNMP模式,进行安装部署。

zabbix5.0中文使用手册

https://www.zabbix.com/documentation/5.0/zh/manual/quickstart/login

zabbix原理图示

如下图,也可以不使用zabbix proxy,zabbix-agent直接将采集到的信息传输给zabbix-server。

zabbix监控流程

agentd需要安装到被监控的主机上,它负责定期收集各项数据,并发送到zabbix server端,zabbix server将数据存储到数据库中,zabbix web根据数据在前端进行展现和绘图。这里agentd收集数据分为主动和被动两种模式:

主动:agent请求server获取主动的监控项列表,并主动将监控项内需要检测的数据提交给server/proxy

被动:server向agent请求获取监控项的数据,agent返回数据。

zabbix-server 监听端口:10051 ; Agent 监控端口 10050 。
服务端安装 Zabbix Server 和 Zabbix Agent 两个服务,客户端只安装 Zabbix Agent 一个服务。

zabbix server端安装

注意:先停止防火墙和SELinux

systemctl stop firewalld

systemctl disable firewalld

sentenforce 0

vi /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled

安装zabbix镜像

# rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
# yum clean all

安装zabbix-server和zabbix-agent

# yum install zabbix-server-mysql zabbix-agent

安装Zabbix frontend

该步骤只是允许服务器可以安装更高版本的php-fpm

Enable Red Hat Software Collections

# yum install centos-release-scl

编辑配置文件 /etc/yum.repos.d/zabbix.repo and enable zabbix-frontend repository.

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

安装zabbix前端包

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

这里使用nginx作为zabbix的前端,zabbix-nginx-conf-scl安装完成后,就不用单独的安装nginx了,如果已经安装了nginx,想使用自己安装好的nginx,只需要稍做更改就可以,参考如下:

https://blog.csdn.net/weixin_44901564/article/details/112577130?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-3.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-3.control

创建初始数据库

Make sure you have database server up and running.

说明:这里创建zabbix用户的时候,允许其远程访问,如果server端跟数据库在同一台服务器也可以设置为localhost,但是我在安装的时候,web界面配置的时候总是提示连接失败,就将访问权限更改为可以任意ip远程访问,就可以顺利连接了。

# mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> create user [email protected]'%' identified by 'password';
mysql> grant all privileges on zabbix.* to [email protected]'%';
mysql> flush privileges;
mysql> \q

导入初始架构和数据,系统将提示您输入新创建的密码

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

为Zabbix server配置数据库

vi /etc/zabbix/zabbix_server.conf

#找到对应项有注释则取消:
DBHost= localhost
DBName = zabbix
DBuser= zabbix
DBpassword = 123456

为Zabbix前端配置PHP

vi /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf

将listen改为8080或者自己定义端口,将server_name 设置为本机ip

# listen 8080;
# server_name 192.168.171.10;

编辑PHP配置文件

vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf

第6行添加,nginx
最后一行去掉前面;号并修改时区为Asia/Shanghai

vi /etc/opt/rh/rh-php72/php.ini

将下面的参数,修改为如下的值,也可以不修改,如果zabbix的web页面初始化时遇到错误,再进行修改也可以:

post_max_size = 16M
max_execution_time = 300
max_input_time = 300
date.timezone =Asia/Shanghai

配置完成,关于log文件的存放位置,也可以自己定义,自己定义的时候注意文件的属主属组。

开始启动

启动 zabbix服务和进程!

直接使用systemctl start zabbix-server可能会出现无法启动,使用restart即可

启动服务
# systemctl restart zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm
设置开机自启
# systemctl enable zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm

配置Zabbix前端

配置zabbix前端,由于前端存在代理服务器,设置/zabbix为访问路径:

直接访问https://192.168.110.111/zabbix

第一次访问会进入到setup界面:https://192.168.110.111/zabbix/setup.php

点击下一步,会进行检测,没有失败项即可:

点击下一步,输入数据库的相关信息

下一步,自定义名称,可以直接使用zabbix-server这个名字

下一步完成即可,会进入登录界面,默认管理员账号密码为 Admin zabbix

修改页面为中文:

一些图表显示乱码,使用中文字体进行替换即可:

cd /usr/share/zabbix/assets/fonts/

程序默认使用的是graphfont.ttf

# cd /etc/alternatives
# ll

可以看到zabbix-web-font也是一个连接,我们只需要将DejaVuSans.ttf替换为我们自己的字体即可。

复制本地电脑C:\Windows\Fonts\simkai.ttf(楷体)上传到zabbix服务器网站目录的/usr/share/fonts/dejavu目录下

注意:上传的时候如何使用rz命令,一定要加上rz -be imkai.ttf,否则会出错。

上传完成后,备份之前的字体,并设置软连接:

# cd /usr/share/fonts/dejavu

# mv DejaVuSans.ttf DejaVuSans.ttf.bak

# ln -s simkai.ttf DejaVuSans.ttf

重新加载zabbix-server:

systemctl restart zabbix-server

刷新web界面,可以看到乱码问题已经解决

server-agent安装部署

上面只是将server端进行了部署,在要被监控的主机上,还需要安装zabbix-agent,用来采集服务器信息,并发送到server端。

agent安装比较简单,只需要安装server-agent这一个安装包即可。

# yum install zabbix-agent

也可以下载rpm包,上传后进行安装

#清华源
https://mirrors.tuna.tsinghua.edu.cn/

下载完成后:rpm -ivh xxxx.rpm安装即可

安装完成后进行配置,连接server端

vi /etc/zabbix/zabbix_agentd.conf

更改

Server=192.168.171.10             //谁可以监控本机(被动监控模式),如果有多个主机可以监控本机,则填写ip使用逗号隔开,例如:127.0.0.1,192.168.2.5 
ServerActive=192.168.171.10         //谁可以监控本机(主动监控模式)
Hostname=web1   //被监控端自己的主机名,在zabbix web页面Monitoring->Configuration->Hosts 页面更改Host name和zabbix_agentd.conf里面的Hostname一样
#EnableRemoteCommands=1       //监控异常后,是否允许服务器远程过来执行命令,如重启某个服务
UnsafeUserParameters=1       //是否允许自定义key监控,不使用,可以不定义

测试agent端是否连接

zabbix_get命令是在server端用来检查agent端的一个命令,在添加完主机或者触发器后,不能正常获得数据,可以用zabbix_get来检查能否采集到数据,以便判断问题症结所在。

zabbix_get 参数说明:

-s --host: 指定客户端主机名或者IP

-p --port:客户端端口,默认10050

-I --source-address:指定源IP,写上zabbix server的ip地址即可,一般留空,服务器如果有多ip的时候,你指定一个。

-k --key:你想获取的key

在服务端先安装该命令:

yum install zabbix-get –y

安装完成后进行测试

zabbix_get -s 192.168.171.11 -p10050 -k agent.ping

如果返回结果为1,说明连接正常。

zabbix告警信息配置

https://blog.csdn.net/qq32933432/article/details/114022333

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_43054437/article/details/118339016

智能推荐

Java连接数据库并实现添加数据有重复不插入数据_数据库重复数据不插入_halo_prt的博客-程序员信息网

1、适用场景当你不希望存入数据库中的某组数据重复。我这里的例子是一个注册系统,不希望账户名重复。2、设置数据库中某字段不重复alter table user.users add unique(account);alter table + 数据库名.表名 + add unique (字段名);3、java连接数据库连接数据库需要先导入mysql-connector-java-5.1.36-bin.jar包下载地址下载好之后在idea中创建个Directory解压下载好的包,复制下图中框

springboot:jpa:报错 Inferred type 'S' for type parameter 'S' is not within its bound; 解决办法_花和尚也有春天的博客-程序员信息网

报错:Inferred type 'S' for type parameter 'S' is not within its bound;should extends xxxxxxInferred type 'S' for type parameter 'S' is not within its bound; should extend 'com.tzb.myspringboot.dao....

MOOC南京大学操作系统期末考试_雨客Yoker的博客-程序员信息网_设有n个进程共用一个相同的程序段

1.配置了操作系统的机器是一台比原来的物理机器功能更强的计算机,这样的计算机只是一台逻辑上的计算机,称为_______计算机。编号选项A并行B真实C虚拟D共享2.如果分时系统的时间片一定,那么_____,则响应时间越长编号选项A内存越少B内存越多C用户数越少D用户数越多3.实时操作系统必须在______内处理来自外部的事件。编号选项A响应时间B周转时间C调度时间

解决Keras加载模型TypeError: ('Keyword argument not understood:', u'return_state')_weixin_39012047的博客-程序员信息网

由于使用了安装了tensorflow,特搜人flow自带了keras,所以在自己安装keras时版本需要与tensorflow内置的一样。不一致的话会出现错误。

Windows 10 安装STF_KENYCHEN奉孝的博客-程序员信息网

what is STF?STF相关镜像的拉取docker pull openstf/stf:latestlatest: Pulling from openstf/stf7b378fa0f908: Pull complete4d77b1b29f2e: Pull complete7c793be88bae: Pull completeecc05c8a19c0: Pull completedf5e254ddac3: Pull complete43a21c14ee0a: Pull ..

随便推点

OCR识别_康红风的博客-程序员信息网_bizlicense

最近作者项目中用到了身份证识别跟营业执照的OCR识别,就研究了一下百度云跟腾讯云的OCR产品接口。1.腾讯云OCR收费:身份证OCR和营业执照OCR接口,每个接口每个月各有1000次的免费调用接口说明:身份证OCR接口 - https://cloud.tencent.com/document/product/866/33524营业执照OCR接口-https://c...

Windows下配置OpenSSL1.1.1+Curl7.61.0访问HTTPS_lolzhzhzh的博客-程序员信息网

 前言       这几天使用百度的人脸识别API,他们在线接口是使用HTTPS进行GET和POST,官方的C++ SDK是使用Openssl+Curl进行访问的,于是写下这篇记录一下配置过程吧!Openssl简介       Curl要访问HTTPS需要用到SSL支持库,目前curl提供了两种使用支持库的方式,一种是Windows自带的WinSSL,另一种是第三方SSL库Open...

数据重复插入问题及解决方案_joshua317的博客-程序员信息网_c# 高并发导致数据重复问题

本文为joshua317原创文章,转载请注明:转载自joshua317博客https://www.joshua317.com/article/251.问题背景某天客户反馈说,有一条一模一样的数据在列表中展示出来,主要这个列表还是比较关键的业务数据,经过排查发现,数据库中的确存在了两条数据,而且关键字段没有加唯一索引,导致了数据入库的时候重复插入了。2.引起数据重复的原因有哪些引起数据库被重复插入的原因无外乎几个原因,表象原因可能就是如网络延迟、用户连点、并发等等实际上是我们在数据库设计.

edge浏览器 开启java_如何让你的Edge浏览器跑得更快?几个步骤解放它!_陈马登Morden的博客-程序员信息网

原标题:如何让你的Edge浏览器跑得更快?几个步骤解放它!Edge浏览器在之前被微软当作取代IE并寄予和Chrome分庭抗礼期许的浏览器,虽然很多部分都已经较IE做出修正与改良,但对于使用者来说可能还是嫌它不够快,今天要教大家的小技巧能够快速解放Edge的封印,让Edge更快、更迅猛,现在一起做做看! 这次要告诉大家的两种小技巧,都能够唤醒Edge更多潜能,分别是针对Java的限制和TCP快速启动..._1671465600

纹理压缩格式整理(持续更新)_ChallengerCY的博客-程序员信息网

纹理压缩格式整理(持续更新)为什么用纹理格式?自GPU诞生以来,开发人员一直试图将更大更好的纹理塞进内存。有时这需要更多的RAM,但更多时候是通过本地支持压缩纹理格式来实现的。纹理压缩的目的是减少数据的大小,同时尽量减少对视觉质量的影响。内存通与CPU共享,因此内存是稀缺资源。受制于移动数据慢,设备存储空间小等因素。传输更小的数据非常重要。除了空间,还有电力的使用。纹理小可以在很多地方节能。包括从存储器读取,解包解压缩或转码步骤,写入内存,以及在渲染过程中读取数据。Unity支持常见的图像格式导入纹理

Keras调用plot_model报错解决方案_独影月下酌酒的博客-程序员信息网_plot_model

Keras调用plot_model报错解决方案1.报错信息​ 在建立神经网络模型的时候,可以调用keras中的plot_model模块画出模型示意图,方便对模型结构做出调整:from tensorflow.keras.models import Modelfrom tensorflow.keras.utils import plot_modelmodel = Model(dense_inputs+sparse_inputs, output_layer)plot_model(model, "fm_

推荐文章

热门文章

相关标签