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;
     
  • 相关阅读:
    [DB] 数据库的连接
    JS leetcode 翻转字符串里的单词 题解分析
    JS leetcode 拥有最多糖果的孩子 题解分析,六一快乐。
    JS leetcode 搜索插入位置 题解分析
    JS leetcode 杨辉三角Ⅱ 题解分析
    JS leetcode 寻找数组的中心索引 题解分析
    JS leetcode 移除元素 题解分析
    JS leetcode 最大连续1的个数 题解分析
    JS leetcode 两数之和 II
    JS leetcode 反转字符串 题解分析
  • 原文地址:https://www.cnblogs.com/itzgr/p/9962771.html
Copyright © 2011-2022 走看看