linux源码编译安装部署zabbix4.4

zabbix重要组件:

1)zabbix server:负责接收agent发送的报告信息的核心组件,所有配置、统计数据及操作数据都由它组织进行;

2)database storage:专用于存储所有配置信息,以及由zabbix收集的数据;

3)web interface:zabbix的GUI接口;

4)proxy:可选组件,常用于监控节点很多的分布式环境中,代理server收集部分数据转发到server,可以减轻server的压力;

5)agent:部署在被监控的主机上,负责收集主机本地数据如cpu、内存、数据库等数据发往server端或proxy端;

zabbix通信流程

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

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

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

【主动监测】通信过程如下:

zabbix首先向ServerActive配置的IP请求获取active items,获取并提交active tiems数据值server或者proxy。很多人会提出疑问:zabbix多久获取一次active items?它会根据配置文件中的RefreshActiveChecks的频率进行,如果获取失败,那么将会在60秒之后重试。分两个部分:

 

  • 获取ACTIVE ITEMS列表
  • Agent打开TCP连接(主动检测变成Agent打开)
  • Agent请求items检测列表
  • Server返回items列表
  • Agent 处理响应
  • 关闭TCP连接
  • Agent开始收集数据
  • 主动检测提交数据过程如下:
  • Agent建立TCP连接
  • Agent提交items列表收集的数据
  • Server处理数据,并返回响应状态
  • 关闭TCP连接

 

 

【被动监测】通信过程如下:

 

  • Server打开一个TCP连接
  • Server发送请求agent.ping\n
  • Agent接收到请求并且响应
  • Server处理接收到的数据
  • 关闭TCP连接

 

这里,有人可以看出来,被动模式每次都需要打开一个tcp连接,这样当监控项越来越多时,就会出现server端性能问题了。

 

那实际监控中是用主动的还是被动的呢?这里主要涉及两个地方:

 

1、新建监控项目时,选择的是zabbix代理还是zabbix端点代理程式(主动式),前者是被动模式,后者是主动模式。

 

2、agentd配置文件中StartAgents参数的设置,如果为0,表示禁止被动模式,否则开启。一般建议不要设置为0,因为监控项目很多时,可以部分使用主动,部分使用被动模式。

1.关闭防火墙

systemctl stop firewalld.service  # 临时关闭
systemctl disable firewalld.service # 永久关闭

2.安装apache

yum install -y httpd
systemctl enable httpd  # httpd服务开机进行自启
systemctl start httpd    # 启动httpd服务

3.安装mysql(博主装得5.6.42,不再赘述),不会使用源码装得或者网络慢得使用以下命令装mariadb

yum install -y mariadb mariadb-server
systemctl enable mariadb   # 开机自启动
systemctl start mariadb      # 运行服务

4.安装php环境(其实可以不走这,在install zabbix-server-mysql zabbix-web-mysql时会自动解决依赖)

yum install -y php php-mysql

5.下载zabbix包且安装

rpm -ivh https://repo.zabbix.com/zabbix/4.4/rhel/7/x86_64/zabbix-release-4.4-1.el7.noarch.rpm

yum install -y zabbix-server-mysql zabbix-get zabbix-web zabbix-web-mysql zabbix-agent zabbix-sender

这里注意:在使用 yum install安装得时候,可能会出现以下错误导致某些依赖包安装不了:

这是因为默认使用得yum源是zabbix官方得,所以你们懂得,解决办法就是将yum源改成国内得:

这里改成清华yum源,如下:

vi /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - $basearch
//注释部分是默认得安装源地址,改成清华得yum源,下面得两个组件地址也要改
#baseurl=http://repo.zabbix.com/zabbix/4.4/rhel/7/$basearch/
baseurl=https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.4/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

[zabbix-debuginfo]
name=Zabbix Official Repository debuginfo - $basearch
#baseurl=http://repo.zabbix.com/zabbix/4.4/rhel/7/$basearch/debuginfo/
baseurl=https://mirror.tuna.tsinghua.edu.cn/zabbix/zabbix/4.4/rhel/7/$basearch/debuginfo/
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
gpgcheck=1

[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
#baseurl=http://repo.zabbix.com/non-supported/rhel/7/$basearch/
baseurl=https://mirror.tuna.tsinghua.edu.cn/zabbix/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1

6.进入mysql配置数据库权限(切换至mysql目录 我的/usr/local/mysql  ./bin/mysql -uroot -p)

#创建一个zabbix库并设置为utf8的字符编码格式
create database zabbix character set utf8 collate utf8_bin;

#给来自loclhost的用户zabbxi分配可对数据库zabbix所有表进行所有操作的权限,并且设定密码为zabbix
grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';

#刷新
flush privileges;

然后exit推出mysql命令行

7.将zabbix的表导入mysql

#切换至此目录
cd /usr/share/doc/zabbix-server-mysql-4.4.10/

#解压,会有一个create.sql文件
gunzip create.sql.gz

#进入mysql命令行,导入表
use zabbix
source /usr/share/doc/zabbix-server-mysql-4.4.10/create.sql

8.切换至/etc/zabbix,配置zabbix server配置文件

执行 vi zabbix_server.conf,修改部分如下:

保存后退出。

9.修改zabbix安装目录属组和权限

chown -R zabbix:zabbix /etc/zabbix/(可用可不用,我没用)

chmod -R 755 /etc/zabbix/

10.编辑Zabbix前端的PHP配置,修改红圈部分

vim  /etc/httpd/conf.d/zabbix.conf (博主推荐finalshell,命令行与sftp同界面,并可使用编辑器打开文件,从此不用vi vim)

11.启动zabbix-server服务,并设置开机自启

systemctl restart zabbix-server httpd

systemctl enable zabbix-server httpd

12.登陆zabbix

访问地址:http://IP/zabbix

下一步填写mysql密码:

下一步:(name可以不填,host和port默认):

下面这个页面,登录的账号和密码默认是:Admin/zabbix,可自行去数据查看。

登录,到达下面的首页就大功告成啦:!!!!

猜你喜欢

转载自blog.csdn.net/weixin_46792649/article/details/107518815