liunx下搭建zabbix

CentOS7+zabbix5.0 环境   建议下次在安装的时候换成Centos8+zabbix6或者7

Zabbix 介绍

zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

zabbix由2部分构成,zabbix server与可选组件zabbix agent。

zabbix server可以通过SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能,它可以运行在Linux,Solaris,HP-UX,AIX,Free BSD,Open BSD,OS X等平台上。

Linux 安装部署

第一步:Linux centOS7 环境配置  (检查配置)

su  进入到管理员界面

    #安装部分基础软件包

systemctl disable firewalld                              #禁止防火墙服务启动

systemctl stop firewalld                                 #关闭防火墙服务

setenforce  0                                             #临时关闭SELinux

vi /etc/selinux/config                                 #修改将“SELINUX=enforcing”更改为ELINUX=disabled”,永久关闭SELINUX

cd /etc/yum.repos.d/                                     #修改yum源 更改为阿里云

mv CentOS-Base.repo CentOS-Base.repo.bak                 #备份文件

wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo            #下载阿里云镜像仓库

~wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo     #下载epel仓库

yum clean all                                            #清理缓存

yum makecache                                            #重新生成缓存

说明:第一步不是一定要做,看系统环境配置有没有, yum源有没有能不能用,后面配置的时候出问题可以补。

第二步:安装 Zabbix 服务端和客户端

rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo

yum install zabbix-server-mysql zabbix-agent -y

rpm -qa | grep zabbix

yum search zabbix

//如果安装中出现错误,Delta RPMs disabled because /usr/bin/applydeltarpm not installed

//就安装下面的软件

//yum -y install deltarpm

//安装 Zabbix frontend

yum install centos-release-scl (重点)

编辑 CentOS-SCLo-scl-rh.repo 文件:

vi /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo

[centos-sclo-rh]

name=CentOS-$releasever - SCLo rh

baseurl=https://mirrors.aliyun.com/centos/$releasever/sclo/$basearch/rh/

gpgcheck=1

enabled=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo

编辑 CentOS-SCLo-scl.repo 文件:

vi /etc/yum.repos.d/CentOS-SCLo-scl.repo

替换内容为:

[centos-sclo-sclo]

name=CentOS-$releasever - SCLo sclo

baseurl=https://mirrors.aliyun.com/centos/$releasever/sclo/$basearch/sclo/

gpgcheck=1

enabled=1

gpgkey=https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

yum clean all

yum makecache

CentOS7的SCL源在2024年6月30日停止维护了。 当scl源里面默认使用了centos官方的地址,无法连接,需要替换为阿里云。

yum list rh-php7\*

编辑 /etc/yum.repos.d/zabbix.repo 启用[zabbix-frontend]

#找到[zabbix-frontend]将enabled=0改为1

[zabbix-frontend]

...

enabled=1

...

yum search zabbix-web

安装 Zabbix 前端包

yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl zabbix-nginx-conf-scl zabbix-agent.x86_64

rpm -qa | grep zabbix

zabbix-web-5.0.33-1.el7.noarch

zabbix-web-mysql-scl-5.0.33-1.el7.noarch

zabbix-nginx-conf-scl-5.0.33-1.el7.noarch

zabbix-server-mysql-5.0.33-1.el7.x86_64

zabbix-web-deps-scl-5.0.33-1.el7.noarch

zabbix-apache-conf-scl-5.0.33-1.el7.noarch

zabbix-release-5.0-1.el7.noarch

第三步:安装数据库软件(本机有数据库跳过)

数据库软件可以选用MySQL或MariaDB。

yum -y install mariadb-server mariadb              #安装mariadb数据库

systemctl start mariadb                         #启动mariadb数据库sys

systemctl enable mariadb                        #设置开机自启动

mysqladmin -u root password "123456"             #为root用户设置123456的密码,否则不能登陆,后面还要用到的。

mysql -u root -p                                #连接数据库,输入设置的密码,测试是否成功

MariaDB [(none)]> SHOW DATABASES; 展示数据库表格

quit; 退出数据库

第四步:创建和初始化zabbix数据库,有自己的数据库登录创建即可

A.登录mysql

# mysql -u root -p

123456                #输入之前设置的密码 123456

数据库查看

\show databases

查看数据库表

\show tables

B.创建zabbix数据库

MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;

Query OK, 1 row affected (0.00 sec)

创建zabbix用户 密码是zabbix

MariaDB [(none)]> create user zabbix@localhost identified by 'zabbix';

Query OK, 0 rows affected (0.00 sec)

#给zabbix用户授权

MariaDB [(none)]>  grant all privileges on zabbix.* to zabbix@localhost;

Query OK, 0 rows affected (0.00 sec)

完成退出

MariaDB [(none)]> exit

Bye

导入Zabbix数据库结构和数据 密码zabbix

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

#其中 “mysql -uzabbix -p zabbix” 的 “-uzabbix” 是前面创建的用户,“-p zabbix”是创建的数据库

第五步:配置Zabbix server  服务端

vim /etc/zabbix/zabbix_server.conf

DBPassword=zabbix #找到DBPassword 去掉注释,把之前的数据库密码写上去。用户名密码

修改zabbix 前端的时区

编辑 /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf 文件,为Zabbix前端配置PHP

去掉;注释,然后把时区改为Asia/Shanghai ; php_value[date.timezone] = Europe/Riga 改为如下: php_value[date.timezone] = Asia/Shanghai

第六步:启动zabbix server

启动 Zabbix 服务

让Zabbix 随系统自动启动。

systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm

systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm

//如果启动报错,可能是Apache的默认端口80被占用,修改Apache默认80端口后重新启动即可。

//httpd配置

//vim /etc/httpd/conf/httpd.conf

//Listen 9010

//ServerName 192.168.141.131:9010  本机IP地址

配置完第七步之后重启Linux。

访问:http://xxx.xxx.xxx.xxx:9010/zabbix/ 或者  http://IP/zabbix

Zabbix初始用户名和密码为:用户名为 Admin 密码为 zabbix

汉化:

zabbix 客户端部署

说明

zabbix 分为服务端和客户端,

服务端:主要是用来接收客户端传过来的主机数据,展示在zabbix PHP的web页面上。

客户端: 是实际的监控者,将监控的数据上传到zabbix服务端。

我们想监控哪个服务器,在对应的服务器上安装配置好客户端之后即可。

客户端部署步骤:

1.在能够联网的主机上rpm下载下来

rpm -Uvh https://repo.zabbix.com/zabbix/4.5/rhel/7/x86_64/zabbix-release-4.5-2.el7.noarch.rpm

2.拷贝客户端rpm到目标主机上安装(或者直接装在本机)

yum install  zabbix-agent -y

3.修改客户端配置

vim /etc/zabbix/zabbix_agentd.conf

Server=xxx.xx.xx.xxx     //安装zabbix服务器端的机器的IP  

ServerActive=xxx.xx.xx.xxx //安装zabbix服务端的机器的IP

Hostname=09          // 被监控的机器名             hostnanme==添加监控主机名称,web一致性。主动模式

4.启动agent

      systemctl start zabbix-agent 开启

   systemctl stop zabbix-agent  关闭

systemctl start zabbix-agent.service 这个服务必须要执行一下

zabbix 修改默认端口

zabbix-server的默认端口号是10051

服务端:

vim /etc/zabbix/zabbix_server.conf

ListenPort=10051

将默认的10051更改为其它端口号,重启服务

zabbix-agent 的默认端口是 10050

vim /etc/zabbix/zabbix_agentd.conf

ListenPort=10053    重启服务

服务器端需要telnet 192.168.141.132 10053 只有通了,才算可以。

端口不通往往是服务没有起来。还有就是防火墙的问题,端口没有开开,防火墙没有关闭。

开启防火墙

systemctl start firewalld  开启防火墙

firewall-cmd --add-port=10050/tcp --permanent 开启端口

firewall-cmd --reload

关闭

systemctl disable firewalld                              #禁止防火墙服务启动

systemctl stop firewalld                                 #关闭防火墙服务

firewall-cmd --remove-port=25/tcp --permanent 关闭端口

firewall-cmd --list-port 查看端口号开放

报错

Get value from agent failed: cannot connect to [[192.168.141.132]:10050]: [113] No route to host

解决办法,是端口服务没有起来 客户端配置了zabbix-agentd.conf 端口是10053 可以自定义。服务端配置了监控,hostnanme==主机名称,一致性。

其中要操作的是10053对应的服务是zabbix-agentd,systemctl start zabbix-agent.service 这个服务必须要执行一下。

测试端口号,telnet IP 端口    telnet 192.168.141.132 10053

彻底卸载zabbix

rpm -qa | grep -i zabbix // 查看命令

卸载zabbix安装包

yum remove  zabbix-xxx

查找残留的zabbix目录或文件:

whereis zabbix

find / -name zabbix

删除查询出的目录

rm -rf /xxx/zabbix    #目录地址

参考文献

【CentOS7.6】yum 报错:Could not retrieve mirrorlist http://mirrorlist.centos.org_centos-sclo-scl.repo-CSDN博客

https://zhuanlan.zhihu.com/p/709338316

【Zabbix】基于CentOS 7.9系统安装部署Zabbix 5.0LTS版本监控系统(详细教程)-CSDN博客^v100^pc_search_result_base6&spm=1018.2226.3001.4187

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值