非JAVA开发者 - JAVA

2.2.运维 - zabbix - 源码安装(Centos)

2017-09-28  本文已影响94人  风云雄霸天下123456

参考:

  1. Zabbix系统部署及使用
  2. zabbix的配置
  3. [Zabbix专区] 关于zabbix 3.4.1 安装手册 for CentOS 7.4

1. 前提

  1. 安装
    mysql, php, nginx 或 apache
  2. 关闭iptables 和 selinux

2. 安装依赖


3. 创建用户 和 用户组


4. 安装zabbix-server

  1. 下载源码(from 官网)

  2. 安装

    1. 解压并进入源码
      tar -zxvf zabbix-3.4.2.tar.gz && cd zabbix-3.4.2
    2. configure
      • 脚本:
        ./configure --prefix=/opt/zabbix --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-libcurl --with-net-snmp --with-openipmi --sysconfdir=/etc/zabbix
      • 说明:
        1. 安装目录在/opt/zabbix
        2. 开启server 和 agent
        3. 设置mysql的位置(此处需要查找本机mysql-config的位置,前提已安装mysql)
        4. 配置文件位置:/etc/zabbix
    3. make 和 make install
      sudo make -j && sudo make install
  3. 配置

    1. 配置数据库
      1. 数据库创建 + 创建用户 + 授权
        1. 命令行连上数据库
        2. 创建数据库
          create database zabbix charset=utf8;
        3. 创建数据库用户
          create user zabbix identified by password('zabbix');
        4. 对用户进行授权
          grant all on zabbix.* to zabbix;
        5. 刷新权限
          flush privileges;
      2. 导入zabbix自带的.sql文件
        1. 进入zabbix源码目录
        2. 执行
          mysql -uroot -p zabbix < database/mysql/schema.sql
          mysql -uroot -p zabbix < database/mysql/images.sql
          mysql -uroot -p zabbix < database/mysql/data.sql
    2. 为zabbix添加监听端口
      1. 编辑/etc/services
        sudo vim /etc/services
      2. 添加
        zabbix-trapper 10051/tcp Zabbix Trapper
        zabbix-trapper 10051/udp Zabbix Trapper
        zabbix-agent 10050/tcp Zabbix Agent
        zabbix-agent 10050/udp Zabbix Agent
        
    3. 配置文件
      1. 备份原有配置文件
        cd /etc/zabbix && cp zabbix_server.conf zabbix_server.conf.default
      2. 编辑配置文件
        1. 删除全部内容,并填入下列内容
          # 数据库配置部分
          DBHost=localhost
          DBName=zabbix
          DBUser=zabbix
          DBPassword=zabbixpw
          # 数据库所在的socket文件
          DBSocket=/tmp/mysql.sock
          # 默认配置ok
          StartDBSyncers=12
          SenderFrequency=30
          DebugLevel=2
          Timeout=5
          PidFile=/var/tmp/zabbix_server.pid
          # 日志所在位置
          LogFile=/data/logs/zabbix/zabbix_server.log
          LogFileSize=10
          HistoryCacheSize=20M
          LogSlowQueries=3
          # 其他脚本所在位置
          AlertScriptsPath=/etc/zabbix/alert
          ExternalScripts=/etc/zabbix/externalscripts
          FpingLocation=/usr/sbin/fping
          
      3. 添加zabbix启动管理
        1. 进入/etc/init.d
        2. 编辑文件:
          sudo vim zabbix_server_ctl
        3. 填充内容
          #!/bin/sh
          #chkconfig:2345 90 80 
          #description:Zabbix Server
          
          . /etc/rc.d/init.d/functions
          
          BASEDIR=/opt/zabbix
          PIDFILE=/var/tmp/zabbix_server.pid
          ZABBIX_SERVER=$BASEDIR/sbin/zabbix_server
          RETVAL=0
          
          start()
          {
              echo -n $"Starting Zabbix Server: "
              daemon --pidfile=$PIDFILE $ZABBIX_SERVER
              RETVAL=$?
              echo
              [ $RETVAL = 0 ]
              return $RETVAL
          }
          
          stop()
          {
              echo -n $"Stopping Zabbix Server: "
              killproc zabbix_server
              RETVAL=$?
              echo
              [ $RETVAL = 0 ] && rm -f $PIDFILE
          }
          
          case "$1" in
            start)
                  start
                  ;;
            stop)
                  stop
                  ;;
            status)
                  status -p $PIDFILE $ZABBIX_SERVER
                  RETVAL=$?
                  ;;
            restart)
                  stop
                  start
                  ;;
            *)
                  echo $"Usage: service zabbix_server_ctl {start|stop|restart|status}"
                  exit 1
          esac
          
          exit $RETVAL
          
        4. 添加权限
          sudo chmod a+x zabbix_server_ctl
        5. 修改文件夹权限
          sudo chown -R zabbix: /etc/zabbix
          sudo chown -R zabbix: /opt/zabbix
          sudo chown -R zabbix: /data/logs/zabbix
        6. 添加开机启动
          chkconfig --add zabbix_server_ctl
          chkconfig zabbix_server_ctl on
        7. 启动
          sudo service zabbix_server_ctl start
      4. web - frontend - 前端管理页面添加
        1. 进入源码根目录
        2. 拷贝前端代码,并进入拷贝后的源码目录
          sudo cp -rf frontends/php /data/www/zabbix && cd /data/www/zabbix
        3. 修改数据库配置文件
          1. 拷贝配置文件
            sudo cp conf/zabbix.conf.php.example conf/zabbix.conf.php
          2. 修改配置文件中数据库 以及 zabbix_server 相应的配置
        4. 修改文件夹权限
          sudo chown -R zabbix: /data/www/zabbix
        5. 配置nginx
          1. 配置内容参考:
            server {
                listen 80;
                server_name zabbix.dev;
                root '/data/www/zabbix';
                index index.php index.html index.htm;
            
                location / {
                                try_files $uri $uri/ /index.php?$query_string;
                }
            
                # 支持php
                include enable-php.conf;
            }
            
          2. 检查并重启nginx
            sudo nginx -t
            sudo nginx -s reload
          3. 浏览器可访问 zabbix.dev(前提配置了该域名的解析),如若发现
      5. 说明:
        1. 默认管理员用户名、密码
          admin 123456
        2. 在Status of Zabbix栏里,看到 如下文字即是成功
          Zabbix server is running Yes localhost:10051

5. 安装zabbix-agent

上一篇下一篇

猜你喜欢

热点阅读