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]