前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >「Zabbix连载系列」之Zabbix 4.X安装指南

「Zabbix连载系列」之Zabbix 4.X安装指南

作者头像
用户1456517
发布2019-05-15 16:06:48
1.6K0
发布2019-05-15 16:06:48
举报
文章被收录于专栏:芝麻实验室

前提准备

准备系统环境

  • 安装基础环境
代码语言:javascript
复制
    $ yum -y install wget vim tree lrzsz epel-release bash-completion ntpdate ntp
  • 关闭SELinux
代码语言:javascript
复制
    $ setenforce 0 #此为临时生效,建议编辑 /etc/selinux/config ,将SELINUX的值改为disabled
  • 关闭防火墙
代码语言:javascript
复制
    $ systemctl stop firewalld
    $ systemctl disable firewalld
  • 时间同步
代码语言:javascript
复制
    $ ntpdate cn.ntp.org.cn

安装Zabbix

编译前的准备工作

1.准备zabbix用户

代码语言:javascript
复制
[root@mu-node1 src]# groupadd -r zabbix
[root@mu-node1 src]# useradd -r -g zabbix -s /sbin/nologin -d /usr/local/zabbix zabbix
[root@mu-node1 src]# id zabbix
uid=997(zabbix) gid=995(zabbix) 组=995(zabbix)
[root@mu-node1 src]# cat /etc/passwd | grep zabbix
zabbix:x:997:995::/usr/local/zabbix:/sbin/nologin

如果Zabbix server 和 agent 运行在同一台计算机上,建议使用不同的账户运行Server和Agent。否则,如果两个进程使用了同一个用户,Agent就可以访问Server的配置文件,并可轻易地读取Zabbix中任何管理员级别的用户,比如数据库密码。同时,应避免使用诸如root,bin或其他特殊权限的用户运行Zabbix,因为会存在潜在的安全风险。 ——Zabbix官方建议

2.下载源码包

代码语言:javascript
复制
[root@mu-node1 ~]# cd /usr/src/
[root@mu-node1 src]# wget -O /usr/src/zabbix-4.2.0.tar.gz https://ayera.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/4.2.0/zabbix-4.2.0.tar.gz
[root@mu-node1 src]# tar xf zabbix-4.2.0.tar.gz

3.准备数据库环境

代码语言:javascript
复制
[root@mu-node1 src]# yum install mariadb-server -y
[root@mu-node1 src]# systemctl enable mariadb
[root@mu-node1 src]# systemctl start mariadb
[root@mu-node1 src]# mysql_secure_installation
[root@mu-node1 src]# mysql -uroot -hlocalhost -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 10
Server version: 5.5.60-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> create database zabbix character set utf8; #暂不直接支持utf8mb4字符集,若需使用,需手动修改官方SQL初始化脚本中的字段长度
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'guomai';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> flush privileges ;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> exit
Bye

4.初始化数据库

代码语言:javascript
复制
[root@mu-node1 src]# cd zabbix-4.2.0/database/mysql/
[root@mu-node1 mysql]# mysql -hlocalhost -uzabbix -p zabbix < schema.sql
Enter password:
[root@mu-node1 mysql]# mysql -hlocalhost -uzabbix -p zabbix < images.sql
Enter password:
[root@mu-node1 mysql]# mysql -hlocalhost -uzabbix -p zabbix < data.sql
Enter password:
[root@mu-node1 mysql]#

编译Zabbix

1.准备编译环境

代码语言:javascript
复制
[root@mu-node1 mysql]# cd ../../
[root@mu-node1 zabbix-4.2.0]# yum -y install openssl-devel pcre-devel make gcc net-snmp-devel mysql-devel curl-devel libxml2-devel libevent-devel
[root@mu-node1 zabbix-4.2.0]# ./configure --help | less #获取编译帮助
[root@mu-node1 zabbix-4.2.0]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openssl
  • 如果希望添加Java Gateway支持,你必须先进行如下操作,然后才添加--enable-java这一编译选项,否则将出现形如checking for javac... no...configure: error: Unable to find "javac" executable in path的报错信息
代码语言:javascript
复制
#添加Java支持
[root@mu-node1 zabbix-4.2.0]# cd /usr/src/
[root@mu-node1 src]# wget http://192.168.20.55/packages/java/jdk-8u131-linux-x64.rpm
[root@mu-node1 src]# rpm -ivh jdk-8u131-linux-x64.rpm
[root@mu-node1 src]# cat >> /etc/profile
    JAVA_HOME=/usr/java/jdk1.8.0_131
    JRE_HOME=/usr/java/jdk1.8.0_131/jre
    PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
    CLASSPATH=:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
    export JAVA_HOME JRE_HOME PATH CLASSPATH
[root@mu-node1 src]# source /etc/profile
[root@mu-node1 src]# java -version #此处能正常显示Java版本信息即说明添加Java环境成功
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
  • 继续编译
代码语言:javascript
复制
[root@mu-node1 src]# cd zabbix-4.2.0/
[root@mu-node1 zabbix-4.2.0]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --enable-java --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2 --with-openssl
[root@mu-node1 zabbix-4.2.0]# make install

2.查看Zabbix组件结构

代码语言:javascript
复制
[root@mu-node1 zabbix-4.2.0]# cd /usr/local/zabbix/
[root@mu-node1 zabbix]# tree
.
├── bin
│   ├── zabbix_get
│   └── zabbix_sender
├── etc
│   ├── zabbix_agentd.conf
│   ├── zabbix_agentd.conf.d
│   ├── zabbix_server.conf
│   └── zabbix_server.conf.d
├── lib
│   └── modules
├── sbin
│   ├── zabbix_agentd
│   ├── zabbix_java
│   │   ├── bin
│   │   │   └── zabbix-java-gateway-4.2.0.jar
│   │   ├── lib
│   │   │   ├── android-json-4.3_r3.1.jar
│   │   │   ├── logback-classic-0.9.27.jar
│   │   │   ├── logback-console.xml
│   │   │   ├── logback-core-0.9.27.jar
│   │   │   ├── logback.xml
│   │   │   └── slf4j-api-1.6.1.jar
│   │   ├── settings.sh
│   │   ├── shutdown.sh
│   │   └── startup.sh
│   └── zabbix_server
└── share
    ├── man
    │   ├── man1
    │   │   ├── zabbix_get.1
    │   │   └── zabbix_sender.1
    │   └── man8
    │       ├── zabbix_agentd.8
    │       └── zabbix_server.8
    └── zabbix
        ├── alertscripts
        └── externalscripts

17 directories, 20 files

3.添加环境变量

代码语言:javascript
复制
[root@mu-node1 zabbix]# echo "export PATH=/usr/local/zabbix/sbin:$PATH" >> /etc/profile.d/zabbix.sh
[root@mu-node1 zabbix]# source /etc/profile.d/zabbix.sh
[root@mu-node1 zabbix]# echo $PATH
/usr/local/zabbix/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/java/jdk1.8.0_131/bin:/usr/java/jdk1.8.0_131/jre/bin

4.设定开机自启

代码语言:javascript
复制
[root@mu-node1 zabbix]# echo "/usr/local/zabbix/sbin/zabbix_server" >> /etc/rc.d/rc.local 
[root@mu-node1 zabbix]# echo "/usr/local/zabbix/sbin/zabbix_agentd" >> /etc/rc.d/rc.local
[root@mu-node1 zabbix]# chmod +x /etc/rc.d/rc.local #仅Centos 7.x需额外授予此执行权限

5.编辑Zabbix Server主配置文件

代码语言:javascript
复制
[root@mu-node1 zabbix]# vim etc/zabbix_server.conf
# DBHost=localhost db服务器ip,本示例为本机,故localhost即可(注:需事先在Mariadb/MySQL中授权)
DBName=zabbix #库名,默认zabbix
DBUser=zabbix #账户名,默认zabbix
DBPassword=guomai #数据库密码,需自行配置
DBPort=3306 #服务端口,默认3306

配置和安装PHP-FPM及Nginx

代码语言:javascript
复制
[root@mu-node1 zabbix]# yum -y install php-fpm
[root@mu-node1 zabbix]# yum install -y nginx
[root@mu-node1 zabbix]# cp -r /usr/src/zabbix-4.2.0/frontends/php/ /usr/share/nginx/html/zabbix
[root@mu-node1 zabbix]# systemctl enable nginx
[root@mu-node1 zabbix]# systemctl start nginx
[root@mu-node1 zabbix]# systemctl start php-fpm
[root@mu-node1 zabbix]# vim /etc/nginx/nginx.conf
        location / {
            root   /usr/share/nginx/html;
            index  index.html index.htm index.php;
        }

        location ~ \.php$ {
            root           /usr/share/nginx/html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
[root@mu-node1 zabbix]# vim /etc/php-fpm.d/www.conf
#修改PHP-FPM执行用户
user = nginx
group = nginx

#修改站点根目录权限
[root@mu-node1 zabbix]# chown -R nginx:nginx /usr/share/nginx/html/zabbix
[root@mu-node1 zabbix]# systemctl restart php-fpm nginx

启动Zabbix Server及Zabbix Agentd

代码语言:javascript
复制
[root@mu-node1 zabbix]# zabbix_server
[root@mu-node1 zabbix]# zabbix_agentd

访问Zabbix Web

  • 浏览器端访问:http://Your_Zabbix_Server_IP/zabbix/setup.php

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/05/12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前提准备
    • 准备系统环境
    • 安装Zabbix
      • 编译前的准备工作
        • 编译Zabbix
          • 配置和安装PHP-FPM及Nginx
            • 启动Zabbix Server及Zabbix Agentd
              • 访问Zabbix Web
              相关产品与服务
              数据库
              云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档