bobbai 发表于 2019-2-17 07:01:47

Centos7源码安装Zabbix3.4.7

特点
  1、分布式监控
  2、支持自动发现网络设备和服务器
  3、设置报警值并通知管理员
  4、支持图表
  5、支持监控多种服务和跨平台系统监控
  6、开源
IE --> B/S
注:需运行在LAMP平台之上
原理
  1、Server:LAMP环境
  2、Agent:搜集客户端数据传输给Server
  3、SNMP:搜索网络设备数据传输给Server
搭建环境:
  系统版本:Centos7x 3.10.0-514.el7.x86_64(两台)
  zabbix软件版本:zabbix-3.4.7.tar.gz
  MySQL版本:mysql-community-server.x86_64 0:5.7.22-1.el7
  部署LAMP平台
  关闭防火墙 systemctl stop firewalld.service
  禁止防火墙开机自启 systemctl disable firewalld.service
  关闭selinux sed -i 's/SELINUX=enforcing /SELINUX=disabled/g'
/etc/sysconfig/selinux
  重启系统即可    reboot
一、部署zabbix_server
1、配置IP
  1)vim /etc/sysconfig/network-scripts/ifcfg-ens32
http://i2.运维网.com/images/blog/201804/18/215f5cbfe9ce65c5058041790a283254.png
2)vim /etc/sysconfig/network-scripts/ifcfg-ens33
http://i2.运维网.com/images/blog/201804/18/3abe34dceba1806480fd0257b0d3e251.png
3)重启reboot
2、安装LAMP平台和Zabbix依赖包
  1)rm -rf /etc/yum.repos.d/ && vim /etc/yum.repos.d/local.repo
  
name=local
baseurl=file:///mnt
gpgcheck=0
enabled=1
  2)挂载光盘mount /dev/cdrom /mnt
  3)下载在线源 wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
  4)安装apache    yum -y install httpd
  5)安装mysql(由于yum源上没有mysql-server。所以必须去官网下载,这里 我们用wget命令,直接获取)
wget -i –c
http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
  // 安装mysql的依赖包
yum -y install mysql57-community-release-el7-10.noarch.rpm
http://i2.运维网.com/images/blog/201804/18/40de4012952ff58e3203c82db7877a82.png
  //安装mysql数据库      yum -y install mysql-community-server
http://i2.运维网.com/images/blog/201804/18/4470bc24efa8b688159357eeef57a0df.png
http://i2.运维网.com/images/blog/201804/18/b4240acb9861c780877365b7cac5ea2d.png
  //完成安装,重启mysql       systemctl restart mysqld
http://i2.运维网.com/images/blog/201804/18/74f776bb8a3f4550ee037602afb70239.png
  //此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码,通过如下命令可以在日志文件中找出密码:
grep "password" /var/log/mysqld.log
http://i2.运维网.com/images/blog/201804/18/97d69c7caa2c2f0335c4a08da08a911c.png
  //复制粘贴上边的密码进入数据库    mysql -uroot -p
http://i2.运维网.com/images/blog/201804/18/e556b0567c2625e7a491e92d01baa41c.png
  //输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库修改密码命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123';
http://i2.运维网.com/images/blog/201804/18/1119e6f05f0566c07a076ab307b58661.png
以上报错是说新设置的密码过于简单
解决办法:
  //首先按照默认密码格式复杂度更改
http://i2.运维网.com/images/blog/201804/18/f775ffe267d038a1b647e39bbb2afddb.png
  //查看MySQL完整的初始密码规则,查看的前提是必须先用ALTER USER命令更改过密码(SHOW VARIABLES LIKE 'validate_password%';),
http://i2.运维网.com/images/blog/201804/18/6a7c0725a3ffabeed12a3b41c71ff352.png
http://i2.运维网.com/images/blog/201804/18/b3c0490f79df72030260d829785bfea1.png
http://i2.运维网.com/images/blog/201804/18/a1984c8a2a4d0ace89ea4a7bc4e90159.png
  //密码的长度是由validate_password_length决定的,而validate_password_length的计算公式是:validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)
  //因为当前的密码太复杂不方便后期做实验,所以使用命令修改密码策略两种方式:
mysql> set global validate_password_policy=0;
http://i2.运维网.com/images/blog/201804/18/2fe6bf952113800f3ae7761ab431f87c.png
  mysql> set global validate_password_policy=LOW;
http://i2.运维网.com/images/blog/201804/18/040dee07383aa0c81acb568a86b890ed.png
  密码策略分四种:
  1、OFF(关闭)   2、LOW(低)   3、MEDIUM(中)4、STRONG(强)
  //上边改完策略之后我们在改长度 mysql> SET GLOBAL validate_password_length=4;
http://i2.运维网.com/images/blog/201804/18/6c5efd897f4aca88cc63fd209e351be0.png
  //都改完之后查看密码规则mysql> SHOW VARIABLES LIKE 'validate_password%';
http://i2.运维网.com/images/blog/201804/18/bb24858a64e4f8f876279276cc942668.png
  //接下来就可以将刚才的复杂密码改为简单的四位的密码了;
http://i2.运维网.com/images/blog/201804/18/b69109acb60547f7ecbb934071dddc2a.png
  //初始化数据库
mysql_secure_installation
http://i2.运维网.com/images/blog/201806/07/6797aa6dff283afea8156385e96526de.png
http://i2.运维网.com/images/blog/201806/07/447c6e80d8c0cd86f31b045a5489d709.png
http://i2.运维网.com/images/blog/201806/07/0aa1e107dc300bcaba77fd9e5a522e29.png
注:执行完初始化命令后需要输入数据库root用户密码,然后默认如上截图一路回车即可。(以上截图问题也可根据自己实际情况进行选择)
  //此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,因为当前数据库已安装完成,所以把这个卸载掉:
yum removemysql57-community-release-el7-10.noarch.rpm
http://i2.运维网.com/images/blog/201804/18/8edaeb536aa058b3647cb1a39c05bf8d.png
3、安装php依赖包
  yum -y install gcc autoconf httpd-manual modssl modperl modauthmysql php-gd php-xml php-ldap php-pear php-xmlrpc mysql-connector-odbc libdbi-dbd-mysql net-snmp-devel curl-devel unixODBC-devel java-devel openldap openldap-devel php-pdo ncurses-devel httpdphp php-mysql OpenIPMI OpenIPMI-libs OpenIPMI-devel php-mbstring php-bcmath
4、配置php
  1)vim /etc/php.ini
  440 maxexecutiontime = 300
449 maxinputtime = 300
729 postmaxsize = 32M
946 date.timezone = Asia/Shanghai         //更改时区为亚洲上海
1586 mbstring.funcoverload = 2
  2)创建zabbix用户 useradd -M -s /sbin/nologin zabbix
  3)创建zabbix日志存放目录mkdir /var/log/zabbix
  4)创建zabbix配置文件存放目录mkdir /etc/zabbix
  5)更改zabbix日志目录权限chown zabbix:zabbix /var/log/zabbix/
5、部署Zabbix_server
  1、安装zabbix依赖包和基础组件
  yum -y install net-snmp-devel libxml2-devel libcurl-deve libeventlibevent-develcurlcurl-devel mydql-devel net-snmpsnmpperl-DBIphp-gdphp-xmlphp-bcmath php-mbstringphp-ldapphp-odbcphp-xmlrpc mysql-devel
  2、编译安装Zabbix_Server
  1) tar -zxvf zabbix-3.4.7.tar.gz -C /usr/src/
  2)进入解压目录cd /usr/src/ zabbix-3.4.7
  3)编译./configure --prefix=/usr/local/zabbix --sysconfdir=/etc/zabbix --enable-server --enable-agent --enable-proxy --with-mysql --enable-net-snmp --with-libcurl
http://i2.运维网.com/images/blog/201804/18/e3ee117fdca2abc79da1abe9ea190e29.png
注:如出现configure: error: MySQL library not found错误,是因为缺少mysql-devel该软件包,yum install mysql-devel进行安装。
  --prefix----> 指定zabbix安装目录
--enable-server----> 支持zabbix服务器
--enable-agent----> 支持zabbix代理
--enable-proxy----> 支持zabbix代理服务器
--with-libcurl----> 使用curl包
--with-net-snmp----> 使用net-snmp软件包,选择性地指定路径NET-SNMP配置
--with-mysql=/usr/bin/mysql_con
  4)安装 make && make install(如下不报错即完成安装)
http://i2.运维网.com/images/blog/201804/18/174240be51b8d64bd8dd14a3b737596f.png
6、Zabbix服务配置
  1)拷贝启动脚本cp misc/init.d/fedora/core/zabbix_*         /etc/init.d/
http://i2.运维网.com/images/blog/201804/18/cedbbbac0b94ce9b884ae09263ac03f7.png
http://i2.运维网.com/images/blog/201804/18/4fabef2bba206ddc56b62140a7d124dd.png
注:如果发现使用以上截图方式启动服务,但是用netstat命令监听不到,或者不拷贝启动脚本则使用指定路径启动如下
/usr/local/zabbix/sbin/zabbix_server
/usr/local/zabbix/sbin/zabbix_agentd
  2)编辑zabbix配置文件      vim /etc/zabbix/zabbix_server.conf
  12 ListenPort=10051            //监听端口号   
39 LogFile=/var/log/zabbix/zabbix_server.log//定义server服务日志文件位置
77 DBHost=192.168.1.10                  //定义数据库主机
87 DBName=zabbix                  //定义数据库名
103 DBUser=zabbix                   //定义连接数据库用户名
111 DBPassword=zabbix                   //定义连接数据库密码
  3)编辑zabbix数据库连接文件    vim /etc/zabbix/zabbix_agentd.conf
  21 LogFile=/var/log/zabbix/zabbix_agentd.log      //定义agentd服务日志文件位置
82 Server=192.168.1.10                  //定义server端服务IP
101 ListenPort=10050                  //开启监听端口
123 ServerActive=192.168.1.10:10051         //定义server端服务IP
213 Include= /etc/zabbix/zabbix_agentd.conf.d/
228 UnsafeUserParameters=1            //启用自定义脚本功能
二、创建zabbix数据库和用户
1、启动数据库并设置为开机自启
  systemctl start mysqld   &&   systemctl enablemysqld
2、创建数据库和用户
  mysql> create database zabbix character set utf8;
mysql> grant all on zabbix.* to zabbix@'localhost' identifiedby 'zabbix';
mysql> flush privileges;
http://i2.运维网.com/images/blog/201804/18/37bf4c13590d36cfdc354ac4691da41b.png
3、导入数据库表
  1)mysql -u zabbix -p -h 192.168.1.10 zabbix
页: [1]
查看完整版本: Centos7源码安装Zabbix3.4.7