天天看点

安装启动zabbix

1. 离线文件准备.

    2.1 操作流程,从外网下载安装包和依赖包,然后拷贝到内网服务器进行离线安装.官网的教程是在线安装,

    教程地址:https://www.zabbix.com/cn/download?zabbix=5.0&os_distribution=centos&os_version=7&db=mysql&ws=apache

    2.2 先配置zabbix的yum源,下载https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm到/root/softFile/下,

    使用命令:rpm -ivh /root/softFile/zabbix-release-5.0-1.el7.noarch.rpm 进行安装,

    此文件安装之后会在/etc/yum.repos.d/目录下生成zabbix.repo文件,当在线下载zabbix依赖包时,此repo文件会做出指引.

    编辑这个zabbix.repo文件,将zabbix-frontend  enabled改为1

    vim /etc/yum.repos.d/zabbix.repo

    [zabbix-frontend]

    ...

    enabled=1

    ...

2. 刷新yum源.

    在设置yum源之后,需要清理缓存,重新启用.yum 清理缓存,使用如下三条命令:

    yum clean all

    yum makecache

3. 明确要安装的服务有下面四个,

    zabbix-server-mysql,和mysql挂钩的zabbix服务.

    zabbix-agent,zabbix客户端,将主动向服务器端发送数据.

    zabbix-web-mysql-scl,zabbix服务端管理页面,与mysql挂钩,前端使用php编写,所以需要php环境.

    zabbix-apache-conf-scl,zabbix服务端管理页面

4. 安装软件集合存储库(SCL)

    在下载zabbix-web-mysql-scl及其依赖时,会提示缺rh-php72-php*文件,

    这些文件在软件集合存储库(SCL)中,所以需要先安装scl,

    输入:yum install centos-release-scl-rh 

    说明:配置yum源,生成CentOS-SCLo-scl-rh.repo

5. 安装php环境.

    在下载zabbix-web-mysql-scl及其依赖时,会提示缺rh-php72-php*文件,

    这是由于管理页面的前端使用php编写,所以需要安装php环境,

    zabbix我们准备装5.0版本,依赖的php版本是7.2,有的centos没装或已经装了php5.6,此时用以下命令安装或升级php到7.2

    rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm 说明:配置yum源,生成epel.repo  epel-testing.repo

    rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm 说明,配置yum源,生成webtatic-archive.repo  webtatic-testing.repo webtatic.repo 

6. 下载zabbix安装包及其所有依赖.

    yum install --downloadonly --downloaddir=/root/softFile/zabbix5.0_download zabbix-server-mysql

    yum install --downloadonly --downloaddir=/root/softFile/zabbix5.0_download zabbix-agent

    yum install --downloadonly --downloaddir=/root/softFile/zabbix5.0_download rh-php72-php-mbstring rh-php72-php-fpm rh-php72-php-ldap rh-php72-php-bcmath rh-php72-php-mysqlnd rh-php72-php-gd rh-php72-php-xml rh-php72

6.1 遇到个奇怪的问题,yum install --downloadonly --downloaddir=/root/softFile/zabbix5.0_download zabbix-server-mysql

执行有时查找依赖然后下载文件,有时直接打出"已加载插件:fastestmirror"就结束了.

但是执行yum install --downloadonly --downloaddir=/root/softFile/zabbix5.0_download java

一定会查找依赖并下载文件,遇到这种情况,我都是把命令回删,修改下载路径和下载文件,这样就能正常下载,很是奇怪.

7. 通过以上步骤,我们就将离线的zabbix安装文件全部下载出来了.我上传到了百度网盘,链接: https://pan.baidu.com/s/1XwUB3hLEdPMJzK99Br5e8w 提取码: arvw 

8. 在linux系统安装本地文件

    yum clean all ;

    yum localinstall –y --skip-broken /root/softFile/zabbix5.0_downloadcreate.sql.gz | mysql -h 68.119.49.123 -P 3306 -uzabbix -p zabbix

    Enter password:xxxxx

    然后会开始执行表格的初始化操作,需要内心等待,等#出来.

    注意,如果zabbixServer和mysql没有在同一台机器,上面可能会提示找不到mysql的命令,此时可以把create.sql.gz 从zabbix服务器上拷贝到mysql的服务器上执行,或者在zabbix服务器的服务器上装一个mysql或者MariaDB(mysql的一个分支版本).

11. 配置zabbix服务和管理页面.

    为Zabbix server配置数据库

    vi  /etc/zabbix/zabbix_server.conf

    修改DBPassword=zondy

    为Zabbix前端配置PHP

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

    修改php_value[date.timezone] = Europe/Riga

12. 启动Zabbix server和agent进程,并为它们设置开机自启

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

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

13. 配置防火墙.

    zabbix agent与zabbix server通过10050端口通信。server端侦听在10051端口,客户端侦听在10050端口,80web页面访问接口.

    输入:

    firewall-cmd --add-port=10050/tcp --permanent

    firewall-cmd --add-port=10051/tcp --permanent

    firewall-cmd --add-port=80/tcp --permanent

    说明:防火墙开放指定端口.

14. 访问页面,并进一步进行配置

    http://68.119.52.10/zabbix

    页面连接数据库,设置zabbix 服务地址和服务名,最后登录Admin/zabbix,注意Admin第一个字母大些.

15.    其他电脑安装agent

    准备agent离线文件zabbix-agent-5.0.11-1.el7.x86_64.rpm,不需要其他依赖文件.

    安装,yum localinstall –y --skip-broken /root/softFile/zabbix5.0_agent_download/zabbix-agent-5.0.11-1.el7.x86_64.rpm

    配置,  修改zabbix-server的IP

    vim /etc/zabbix/zabbix_agentd.conf

    修改Server=10.0.0.147

    systemctl restart zabbix-agent

    重启zabbix-agent

14. 遇到问题.

    14.1 mysql添加用户名报错

    MySQ8.0报错:Access denied; you need (at least one of) the SYSTEM_USER privilege(s) for this operation

    MySQL8.0.16版本中新增了一个system_user帐户类型,当我通过phpAdmin新增用户并赋予权限时

    CREATE USER 'homestead'@'%' IDENTIFIED WITH caching_sha2_password BY '***';

    GRANT ALL PRIVILEGES ON *.* TO 'homestead'@'%' WITH GRANT OPTION;

    原因是由于root用户没有SYSTEM_USER权限,把权限加入后即可解决:

    grant system_user on *.* to 'root';

    14.2 zabbix 5.0 页面第三步,连接musql,出现Permission denied,

    此时只需要关闭Selinux,临时关闭:setenforce 0   ,永久关闭参照:https://blog.51cto.com/bguncle/957315

    14.3 报错:Job for zabbix-server.service failed because a configured resource limit was exceeded. 

    See "systemctl status zabbix-server.service" and "journalctl -xe" for details.

    解决: 关闭SeLinux 即可,参见上面.

15. 拓展.

现场项目需要监测交换机,路由器,需要用到snmp功能.

yum install-n net-snmp-libs net-snmp net-snmp-utils --downloadonly --downloaddir=/root/softFile/snmp_download

安装,yum localinstall –y --skip-broken /root/softFile/snmp_download/*

snmp 监控项说明https://blog.csdn.net/VIP099/article/details/105935696