Zabbix:部署Zabbix 5.0 LTS


写在前面

zabbix部署

  1. 当前环境。
  0 16:22:06 root@zabbix,172.16.2.10:~ # cat /etc/redhat-release 
CentOS Linux release 7.9.2009 (Core)
  1. 添加zabbix仓库源,并激活。
  0 17:09:58 root@zabbix,172.16.2.10:~ # rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
  0 17:11:42 root@zabbix,172.16.2.10:~ # yum clean all
  0 17:12:17 root@zabbix,172.16.2.10:~ # vim /etc/yum.repos.d/zabbix.repo
[zabbix-frontend]
...
enabled=1
...
  1. 安装zabbix组件。
  0 17:12:17 root@zabbix,172.16.2.10:~ # yum -y install zabbix-server-mysql zabbix-agent centos-release-scl
  0 17:14:03 root@zabbix,172.16.2.10:~ # yum -y install zabbix-web-mysql-scl zabbix-nginx-conf-scl
  1. 部署mysql,并创建对应zabbix库。
  0 17:16:42 root@mysql-public,172.16.2.4:~ # mysql -uroot -p -S /server/data/mysql_3310/mysql.sock
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to 'zabbix'@'172.16.%' identified by 'password';
mysql> flush privileges;
mysql> q
  1. 导入sql文件。
# 默认sql文件在zabbix安装主机的/usr/share/doc/zabbix-server-mysql*/路径下,如果mysql是单独部署,则需要将sql文件拷贝到mysql主机再做导入。
  0 17:30:32 root@mysql-public,172.16.2.4:~ # zcat create.sql.gz | mysql -uzabbix -p -h 172.16.2.4 -P 3310 zabbix
  1. 配置zabbix。
# 创建对应目录及文件。(/server是我数据盘)
  0 14:06:30 root@zabbix,172.16.2.10:~ # mkdir -p /server/log/zabbix
  0 14:06:40 root@zabbix,172.16.2.10:~ # touch /server/log/zabbix/zabbix_server.log
  0 14:06:44 root@zabbix,172.16.2.10:~ # touch /server/log/zabbix/zabbix_agent.log
  0 14:06:52 root@zabbix,172.16.2.10:~ # chown -R zabbix. /server/log/zabbix
# 修改zabbix-server的配置
  0 14:07:10 root@zabbix,172.16.2.10:~ # cp /etc/zabbix/zabbix_server.conf{,.bak}
  0 14:07:18 root@zabbix,172.16.2.10:~ # vim /etc/zabbix/zabbix_server.conf
# ListenPort=10051                                    # 监听端口,保持默认即可
# SourceIP=                                           # 当server端有多个IP地址时,我们可以此选项指定服务端使用固定的IP与agent端进行通讯。
# LogType=file                                        # 执行使用哪种方式记录日志,有三种方式:'system'表示将日志发往syslog,'file'表示使用指定的文件作为日志文件,'console'表示将日志发往控制台,默认为file。
LogFile=/server/log/zabbix/zabbix_server.log          # 执行日志文件的位置
LogFileSize=200                                       # 指定日志文件达到多大时自动切割,单位为MB,设置为0代表不切割,所有日志保存在一个文件中。
# DebugLevel=3                                        # 指定日志级别,配置文件中有针对级别的说明,默认为3
PidFile=/var/run/zabbix/zabbix_server.pid             # 指定PID文件的位置,此处指定PID文件后,手动将zabbix-server.service文件中的PID配置删除掉。
SocketDir=/var/run/zabbix                             # 指定存储socket的目录,从zabbix 3.4.0之后开始支持该参数。
DBHost=172.16.2.4                                     # 默认为localhost,当DB跟zabbix-server不在同一主机时,需要指定DB主机。
DBName=zabbix                                         # 指定zabbix-server使用的DB库名
DBUser=zabbix                                         # DB用户名
DBPassword=xxxxxxx                                    # DB密码
DBPort=3310                                           # DB端口
# StartPollers=5                                      # 指定初始化时轮询的进程数量,启动的进程数越多,则服务端吞吐能力越强,对系统资源消耗越大。
Timeout=4                                             # 与agent,、SNMP设备或其它外部设备通信的超时时长(单位为秒)。根据网络和客户端具体状况调整此值,调大此值时,应考虑StartPollers参数是否也需要调大。
AlertScriptsPath=/usr/lib/zabbix/alertscripts         # 自定义告警脚本的存放位置。
ExternalScripts=/usr/lib/zabbix/externalscripts       # 外部脚本的存放位置
LogSlowQueries=3000                                   # 指定zabbix-server查询数据库所消耗的时间,单位是毫秒,1毫秒=0.001秒;超过该时间会记入日志。
StatsAllowedIP=172.16.0.0/20                          # 指定允许访问zabbix-server的地址
# 修改时区为亚洲上海。
  0 15:42:08 root@zabbix,172.16.2.10:~ # cp /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf{,.bak}
  0 15:42:17 root@zabbix,172.16.2.10:~ # vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
listen.acl_users = apache,nginx
php_value[date.timezone] = Asia/Shanghai
# 修改nginx主配置文件。
 0 14:22:35 root@zabbix,172.16.2.10:~ # vim /etc/opt/rh/rh-nginx116/nginx/nginx.conf
user nginx;
worker_processes auto;
error_log /var/opt/rh/rh-nginx116/log/nginx/error.log;
pid /var/opt/rh/rh-nginx116/run/nginx/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/opt/rh/rh-nginx116/nginx/mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log    /var/opt/rh/rh-nginx116/log/nginx/access.log  main;
    sendfile      on;
    tcp_nopush    on;
    tcp_nodelay   on;
    keepalive_timeout   65;
    types_hash_max_size 2048;
    include /etc/opt/rh/rh-nginx116/nginx/conf.d/*.conf;
}
# 修改nginx-zabbix配置文件,只修改如下部分。
  0 14:23:15 root@zabbix,172.16.2.10:~ # vim /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf
    listen          8000;
    server_name     172.16.2.10;
        fastcgi_pass    unix:/var/opt/rh/rh-php72/run/php-fpm/zabbix.sock;
        #fastcgi_pass     127.0.0.1:9000;    # 也可以使用代理到9000端口的方式,看个人。
  1. 启动zabbix。
  0 14:26:37 root@zabbix,172.16.2.10:~ # systemctl restart zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm
  0 14:26:45 root@zabbix,172.16.2.10:~ # systemctl enable zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm
  1. 图形化配置,浏览器输入http://IP:Port。如http://172.16.2.10:8000。
  1. 登录,默认用户Admin(大写A),默认密码:zabbix


写作不易,转载请注明出处,谢谢~~

原文地址:https://www.cnblogs.com/ccbloom/p/14637757.html