zoukankan      html  css  js  c++  java
  • 004.Zabbix3.x-Server服务端安装

    一 环境基础

    1.1 部署基础环境

    部署Zabbix需要LAMP或LANP环境,数据库可以为MySQL或者MariaDB。硬件及存储条件按需配置。

    1.2 常见依赖列表

    Web前端需要支持的软件环境如下:
     
    软件
    版本
    描述
    Apache
    1.3以上
    主程序
    PHP
    5.3以上
    主程序
    PHP扩展库
    gd
    2.0以上
    PHP GD扩展库需支持PNG/JPEG/FreeType2
    bcmath
     
    php-bcmath(--enable-bcmath)
    ctype
     
    php-ctype(--enable-ctype)
    libXML
    2.6以上
    php-xml
    xmlreader
     
    php-xmlreader
    xmlwriter
     
    php-xmlreader
    session
     
    php-net-socket
    sockets
     
    php-net-socket(--enable-sockets)
    mbstring
     
    php-mbstring(--with-gettext)
    ibm_db2
     
    使用DB2虚此支持
    mysqli
     
    使用MySQL需此支持
    oci8
     
    使用oracle需此支持
    pgsql
     
    使用postgresql需此支持
    sqlite3
     
    使用sqlite需此支持
    注意:如是RHEL系统,自带的RPM包可能缺少php-mbstring和php-bcmatch包,若编译安装,请确保以上参数开启。

    1.3 Zabbix-Server需要软件环境

    依赖的软件包
    描述
    OpenIPMI
    如需支持IPMI
    libssh 2
    如需支持SSH,则需此包
    fping
    ICMP ping的支持
    libcurl
    Web监控
    libiksemel
    Jabber告警介质
    net-snmp
    SNMP的支持
    注意:Zabbix-Server对时间精度要求很高,尽量采用NTP自动同步。

    二 安装

    2.1 安装Zabbix官方源和epel源

      1 [root@imxhy01 ~]# yum -y install epel-release.noarch
      2 [root@imxhy01 ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
      3 [root@imxhy01 ~]# ls /etc/yum.repos.d/			#查看Zabbix源是否安装成功
      4 epel.repo  epel-testing.repo  zabbix.repo
      5 [root@imxhy ~]# yum -y install zabbix-get zabbix-server-mysql zabbix-web-mysql zabbix-web zabbix-agent
     
    注意:1 Zabbix官方的yum源为:http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/。
    2 服务器端也需要监控,因此也安装Zabbix-Agent。
      1 [root@imxhy01 ~]# yum -y install php-bcmath
      2 [root@imxhy01 ~]# yum -y install php-mbstring		#安装缺少的两个包,v3版本可以不安装。
     

    2.2 安装MariaDB

      1 [root@imxhy01 ~]# yum -y install mariadb mariadb-server
      2 [root@imxhy01 ~]# vi /etc/my.cnf
      3 [mysqld]
      4 datadir=/var/lib/mysql
      5 socket=/var/lib/mysql/mysql.sock
      6 symbolic-links=0
      7 character-set-server=utf8				#设置字符集为utf8
      8 innodb_file_per_table=1                             #设置innodb的每个表文件单独存储
     10 [mysqld_safe]
     11 log-error=/var/log/mariadb/mariadb.log
     12 pid-file=/var/run/mariadb/mariadb.pid
     13 ……
     14 [root@imxhy01 ~]# systemctl enable mariadb		#设为开机启动
     15 [root@imxhy01 ~]# systemctl start mariadb		#开启MariaDB数据
     

    三 创建相关数据库

    3.1 设置数据库相关项

     
      1 [root@imxhy01 ~]# groupadd zabbix			#添加Zabbix组,3.x不需要手动添加
      3 [root@imxhy01 ~]# useradd -g zabbix zabbix		#添加Zabbix组,3.x不需要手动添加
      5 [root@imxhy01 ~]# mysql_secure_installation		#设置安全性,并设置数据库root密码
      6 [root@imxhy01 ~]# mysql -u root -p
      7 MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;		#创建数据库且字符集为utf8,使web界面显示中文不出现乱码
      8 MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@'localhost' identified by 'x120952576';
      9 #创建zabbix数据库和Zabbix用户,且赋予此用户拥有此数据库全部权限。
     10 MariaDB [(none)]> flush privileges;
     11 MariaDB [(none)]> exit;
    注意:1 若之后忘记该密码可使用以下命令修改密码——
      1 UPDATE zabbix.user SET passwd=md5('zabbix') WHERE alias='Admin'

    3.2 导入数据库

      1 [root@imxhy01 ~]# cd /usr/share/doc/zabbix-server-mysql-3.2.1/			  #进入数据库模板所在目录
      2 [root@imxhy01 zabbix-server-mysql-3.2.0]# ls
      3 AUTHORS  ChangeLog  COPYING  create.sql.gz  NEWS  README
      4 [root@imxhy01 zabbix-server-mysql-3.2.0]# zcat create.sql.gz | mysql -uroot -p zabbix #将模板数据恢复至Zabbix数据库
      6 Enter password:
      7 [root@imxhy01 ~]# mysql -u zabbix -p                                                  #用Zabbix用户登录
     
    注意:也可以gunzip create.sql.gz解压后使用mysql -uroot -p  zabbix < create.sql恢复模板。
      1 MariaDB [(none)]> show databases;
      2 +-----------------------+
      3 | Database		    |
      4 +-----------------------+
      5 | information_schema    |
      6 | zabbix                |
      7 +-----------------------+
      8 2 rows in set (0.00 sec)
      9 MariaDB [(none)]> use zabbix;
     10 MariaDB [zabbix]> show tables;				#查看数据表项
     

    四 Zabbix服务配置

    4.1 配置Zabbix_server.conf项

      1 [root@imxhy01 ~]# vi /etc/zabbix/zabbix_server.conf
      2 LogFile=/var/log/zabbix/zabbix_server.log
      3 LogFileSize=0
      4 PidFile=/var/run/zabbix/zabbix_server.pid
      5 DBHost=localhost					#修改主机
      6 DBName=zabbix
      7 DBUser=zabbix
      8 DBPassword=x120952576				#修改DB密码(之前所创建密码)
      9 SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
     10 Timeout=4
     11 AlertScriptsPath=/usr/lib/zabbix/alertscripts
     12 ExternalScripts=/usr/lib/zabbix/externalscripts
     13 LogSlowQueries=3000
     

    4.2 启动Zabbix服务

      1 [root@imxhy01 ~]# systemctl enable zabbix-server	        #设为开机启动Zabbix服务
      2 [root@imxhy01 ~]# systemctl start zabbix-server		#启动Zabbix服务
      3 [root@imxhy01 ~]# systemctl start zabbix-agent		#需要监控自己,因此也开启agent
      4 [root@imxhy01 ~]# systemctl enable zabbix-agent		#启动Zabbix服务
     

    4.3 配置php

      1 [root@imxhy ~] vi /etc/php.ini
      2 date.timezone= Asia/Shanghai
      3 max_execution_time = 300
      4 post_max_size = 16M
      5 memory_limit = 128M
      6 [root@imxhy ~]# vi /etc/httpd/conf.d/zabbix.conf
      7 Alias /zabbix /usr/share/zabbix
      8 <Directory "/usr/share/zabbix">
      9     Options FollowSymLinks
     10     AllowOverride None
     11     Require all granted
     12     Allow from all
     13     php_value max_execution_time 300
     14     php_value memory_limit 128M
     15     php_value post_max_size 16M
     16     php_value upload_max_filesize 2M
     17     php_value max_input_time 300
     18     php_value always_populate_raw_post_data -1
     19     php_value date.timezone Asia/Shanghai
     20 </Directory>
     
    注意:1 若之后配置web时,提示任何参数不满足安装配置要求,修改对应的参数后重启httpd即可。
    2 yum安装可能zabbix.conf中已包含相关配置。

    五 服务测试

    5.1 防火墙及SELinux

      1 [root@imxhy01 ~]# firewall-cmd --permanent --add-service=http	#防火墙开放Apache服务
      2 [root@imxhy01 ~]# firewall-cmd --permanent --add-port=10051/tcp	#防火墙开放Zabbix所需端口
      3 [root@imxhy01 ~]# firewall-cmd --permanent --add-port=10050/tcp	#防火墙开放Zabbix所需端口
      4 [root@imxhy01 ~]# firewall-cmd --reload
      5 [root@imxhy01 ~]# chcon -R -t httpd_sys_content_rw_t /usr/share/zabbix/conf
      6 [root@imxhy01 ~]# yum -y install policycoreutils-python
      7 [root@imxhy01 ~]# setsebool -P httpd_can_network_connect=true
      8 [root@imxhy01 ~]# semanage port -a -t http_port_t -p tcp 10051
     

    5.2 启动Apache服务

      1 [root@imxhy01 ~]# systemctl start httpd.service
      2 [root@imxhy01 ~]# systemctl enable httpd.service
     
    注意:此处建议为了防止不必要的问题,可关闭SELinux和防火墙。

    六 配置Web界面

    6.1 确认各项参数

    打开浏览器。输入http://IP地址/zabbix。
    10
    下一步可查看各项参数均ok,若有failed可重新进行相应的php.ini修改,之后重启服务即可。

    6.2 连接数据库

    11
    • Database type:MySQL(选择数据库的类型)
    • Database host:localhost(填写执行数据库的主机名或者IP)
    • Database port:默认(3306)
    • Database name:zabbix(创建Zabbix数据库时指定的名字)
    • User:Zabbix数据库的用户名
    • Password:Zabbix数据库的密码

    6.3 设置Zabbix-server

    12
    13

    Zabbix-server的链接地址、端口、名称设置等。

    注意:若Zabbix-server在其他机器中,此处的Host填写Zabbix-server所在机器的IP。

    6.4 登录测试

    14
    15

    测试登录,此处默认用户名:Admin,默认密码为:zabbix。

    注意:1 若无法正常运行,分别检查zabbix_server.conf中各项配置;
    2 检查SELinux和防火墙是否开放相应端口和服务;
    3 检查/usr/share/zabbix/conf/zabbix.conf.php中各项设置。

    附一:修改admin密码

    若admin默认密码zabbix无法登录,可采用以下方式修改。
      1 [root@imxhy01 ~]# echo -n admin | openssl md5
      2 (stdin)= 21232f297a57a5a743894a0e4a801fc3	#admin经过md5生成的加密的密码
      3 [root@imxhy01 ~]# mysql -u root -p		#进入数据库
      4 MariaDB [(none)]> use zabbix;		#选择zabbix数据库
      5 MariaDB [zabbix]> select * from users;	#查看users用户表可知Admin用户的ID为1,passwd为一串加密的密码
      6 MariaDB [zabbix]> update users set passwd='21232f297a57a5a743894a0e4a801fc3' where userid = '1';					#将userid为1的用户即Admin的密码更新。
      7 MariaDB [(none)]> flush privileges;		#刷新权限即可
      8 MariaDB [(none)]> exit;
     
  • 相关阅读:
    pyqt 实现左列表向右列表添加
    python 获取ffmpeg里可以推送的音视频设备名称
    精确控制windows全局音量二(Python)
    精确控制windows全局音量(Python)
    ${pagecontext.request.contextpath}绝对路径理解
    eclipse中修改JSP模板中的默认编码
    hibernate的ddl-auto属性
    乱码-eclipse显示中文16进制的
    在写数据库相关项目时,出现The server time zone value '�й���׼ʱ��' is unrecogni异常。
    mysql5.7.28安装和配置
  • 原文地址:https://www.cnblogs.com/itzgr/p/9962771.html
Copyright © 2011-2022 走看看