一.准备工作

1.yum国内源的安装与更新

1.1 备份原repo文件

cd /etc/yum.repos.d/
mkdir repo_bak
mv *.repo repo_bak

1.2 在centos中配置网易和阿里的开源镜像

wget http://mirrors.aliyun.com/repo/Centos-7.repo
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo

1.3 清除系统缓存并生成新的yum缓存

yum clean all
yum makecache

1.4 安装epel源

yum -y install epel-release

1.5 下载安装阿里开源镜像提供的epel

wget http://mirrors.aliyun.com/repo/epel-7.repo

1.6 再次清除系统缓存并生成新的yum缓存

yum clean all
yum makecache

1.7 查看系统可用的yum源和所有yum源

yum repolist enable
yum repolist all

1.8 升级系统到最新

yum update -y

2.关闭防火墙

2.1 关闭selinux

vi /etc/selinux/config
#将SELINUX=enforcing改为disabled
getenforce #检测selinux是否关闭

2.2 关闭防火墙

firewall-cmd --state #查看防火墙状态
systemctl stop firewalld.service #临时关闭防火墙
systemctl disable firewalld.service #禁止firewall开机启动

3. 安装依赖环境

yum install -y httpd php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhash

4. 编辑httpd --可选

vi /etc/httpd/conf/httpd.conf
ServerName www.zabbixtest.com
DirectoryIndex index.html index.php

5. 编辑配置php,配置中国时区

vi /etc/php.ini
date.timezone = Asia/Shanghai

6. 启动httpd

systemctl start httpd #开机启动httpd
systemctl enable httpd

7. mysql数据库安装和配置

7.1 安装mysql5.7

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
rpm -ivh mysql57-community-release-el7-10.noarch.rpm
yum install mysql-server

注意:安装完mysql以后不要启动mysql,我们需要修改mysql的数据存储路径和日志存储路径

7.2 修改mysql数据存储路径

#创建数据存储目录并修改权限
mkdir /data/mysql
chown -R mysql /data/mysql
chgrp -R mysql /data/mysql
chmod -R g+rw /data/mysql
#修改配置文件
vim /etc/my.cnf
[mysqld]
datadir=/data/mysql
socket=/data/mysql/mysql.sock
[client]
socket=/data/mysql/mysql.sock

如果安装完mysql,mysql已经启动,默认的数据存储路径是/var/lib/mysql/,修改存储路径需要先停止mysql并且将原路径下的文件复制到新的路径下,操作方式如下:

#查看mysql的datadir路径
mysql -u root -p
show variables like '%dir%';
#停止mysql
systemctl stop mysqld
#创建数据存储目录,将原路径下的文件复制到新的路径下并修改权限
mkdir /data/mysql
cp -r /var/lib/mysql/* /data/mysql/
chown -R mysql /data/mysql
chgrp -R mysql /data/mysql
chmod -R g+rw /data/mysql
#修改配置文件
vim /etc/my.cnf
[mysqld]
datadir=/data/mysql
socket=/data/mysql/mysql.sock
[client]
socket=/data/mysql/mysql.sock

7.3 修改mysql日志存储路径

#创建日志存储目录并修改权限
mkdir /log/mysql chown -R mysql mysql
chgrp -R mysql mysql
chmod -R g+rw mysql mysql vim /etc/my.cnf
log-error=/log/mysql/mysqld.log

7.4 启动mysql

以上操作完成以后可以启动mysql

systemctl start mysql #开机启动mysql
systemctl enable mysql
ss -anplt | grep httpd #监听80端口
ss -anplt | grep mysql #监听3306端口

7.5 初始化mysql数据库,并修改root密码

grep "password" /var/log/mysqld.log

查看默认密码

7.5.1 修改mysql password的方法

1.mysqladmin -u用户名 -p旧密码 password 新密码

mysqladmin -u root -p 123456 password EZsvs@123

2.使用默认密码登陆mysql后使用命令mysql> set password for 用户名@localhost = password('新密码');修改密码

set password for root@localhost = password('EZsvs@123');

3.用UPDATE直接编辑user表

首先登录MySQL。

mysql> use mysql;
mysql> update user set password=password('EZsvs@123') where user='root' and host='localhost';
mysql> flush privileges;

7.5.2 创建zabbix库和用户

mysql -u root -p #root用户登录数据库
CREATE DATABASE zabbix character set utf8 collate utf8_bin; # 创建zabbix数据库(中文编码格式)
GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'ZAbbix@123'; #授予zabbix用户zabbix数据库的所有权限,密码zabbix
flush privileges; #刷新权限
exit

7.5.2 为保证zabbix用户也可以登录数据库,若出现本地无法登录情况,解决方式如下:

mysql -u root -p  #使用root账户登录数据库;
select user,host from mysql.user; #有空用户名称占用导致本地无法登录远程可登录
drop user ''@localhost; #删除空用户

二.zabbix-server的安装和配置

1. 安装依赖

1.1 安装依赖包和组件

yum -y install net-snmp net-snmp-devel curl curl-devel libxml2 libxml2-devel libevent-devel.x86_64 javacc.noarch  javacc-javadoc.noarch javacc-maven-plugin.noarch javacc*
yum install php-bcmath php-mbstring -y #安装php支持zabbix组件

1.2 安装zabbix源

rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm #会自动生成yum源文件,保证系统可以上网

yum-config-manager --enable rhel-7-server-optional-rpms

1.3 安装zabbix组件

1.3.1 安装zabbix-server

yum install zabbix-server-mysql zabbix-web-mysql -y

1.4 导入数据库

1.4.1 使用 MySQL 来导入 Zabbix server 的初始数据库 schema 和数据

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p ZAbbix@123

1.5 配置mysql数据库

1.5.1 为zabbix-server配置mysql数据库

编辑zabbix_server.conf文件

vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
DBSocket=/data/mysql/mysql.sock
LogFile=/log/zabbix/zabbix_server.log

1.6 zabbix前端配置

vi /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai

1.7 启动zabbix进程

systemctl start zabbix-server
systemctl enable zabbix-server

1.8 zabbix web端配置

登录http://localhost/zabbix/

初始用户名:Admin

密码:zabbix

初次配置会检查zabbix环境是否符合要求,依照页面要求检查完毕后进入zabbix监控管理页面

至此,zabbix-server的安装和配置已经完毕

三.zabbix-proxy安装和配置

1. 安装依赖

1.1 安装依赖包和组件

yum -y install net-snmp net-snmp-devel curl curl-devel libxml2 libxml2-devel libevent-devel.x86_64 javacc.noarch  javacc-javadoc.noarch javacc-maven-plugin.noarch javacc*
yum install php-bcmath php-mbstring -y #安装php支持zabbix组件

1.2 安装zabbix源

rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm #会自动生成yum源文件,保证系统可以上网

yum-config-manager --enable rhel-7-server-optional-rpms

1.3 安装zabbix组件

1.3.1 安装zabbix-server

yum install zabbix-proxy-mysql -y

2.导入zabbix proxy的初始数据库schema和数据

zcat /usr/share/doc/zabbix-proxy-mysql-4.0.11/schema.sql.gz | mysql -u zabbix -p ZAbbix@123

3.为zabbix-proxy配置mysql数据库

修改zabbix-proxy.conf配置文件

vi /etc/zabbix/zabbix-proxy.conf
Server=192.168.4.67 #同步指向的server端的IP,非本地IP。可以是server端的主机域名,但要确保proxy端解析server的域名,并且网络可达
Hostname=zabbix-proxy-01 #proxy本地的名称,此名称需要与将来在server端的WEB页面上的代理程序名称一致,名称自定义
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=ZAbbix@123
DBPort=3306
DBSocket=/data/mysql/mysql.sock
LogFile=/log/zabbix/zabbix_proxy.log

4. 运行以下命令启动zabbix-proxy进程

systemctl start zabbix-proxy
systemctl enable zabbix-proxy

5. 在zabbix-server web页面端进行配置agent代理程序

填写proxy的名称及地址

在配置监控主机的时候,选择proxy即可

四. zabbix-agent的安装和配置

1. 安装zabbix-agent

yum install zabbix-agent -y

2. 配置zabbix-agent

安装完成后配置文件一般在 /etc/zabbix/zabbix_agentd.conf,打开把里面内容全部清空然后加入

PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/log/zabbix/zabbix_agentd.log #错误日志
LogFileSize=0
ListenPort=10050 #启动监听端口
StartAgents=3 #被动模式下选择,主动模式则为0
ListenIP=0.0.0.0 #监听所有IP
Server=192.168.4.67 #被动模式下必填,将zabbix-server端的ip填入
#ServerActive=192.168.4.67 #主动模式下填写
Hostname=zabbix-agent-01 #本机的hostname,此值必须与zabbix的网页上创建的主机名一致即可
Include=/etc/zabbix/zabbix_agentd.d/

3. 启动zabbix-agent

systemctl start zabbix-agent
systemctl enable zabbix-agent

五. 问题及处理方法

1 导入mysql数据报错ERROR 1046 (3D000) at line 1 No database selected

解决办法:

1.先把原始的数据库压缩包备份

cp /usr/share/doc/zabbix-server-mysql-4.0.9/create.sql.gz create.sql.gz-backup
cd /usr/share/doc/zabbix-server-mysql-4.0.9/

2.解压数据库

gunzip create.sql.gz

3.安装nano编辑数据库信息

yum -y install nano

用nano打开编辑数据库信息

nano create.sql

在第一行加上

USE zabbix;

4.用gzip命令把create.sql文件压缩成.gz格式

gzip create.sql

5.然后重新导入MySQL数据库即可

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -u zabbix -p

2. 中文乱码问题

在windows的C:\Windows\Fonts目录中找个字体SIMFANG.TTF

将后缀改成小写ttf并复制到/usr/share/zabbix/assets/fonts目录下

mv SIMFANG.TTF /usr/share/zabbix/assets/fonts/SIMFANG.ttf

修改defines.inc.php配置文件

vim /usr/share/zabbix/include/defines.inc.php

修改这两个地方(大概是69行和114行)

define('ZBX_FONT_NAME', 'SIMFANG');
define('ZBX_GRAPH_FONT_NAME', 'SIMFANG'); // font file name

刷新页面

zabbix4.0搭建的更多相关文章

  1. zabbix4.0搭建(基于CentOS6.8)

    环境 服务端:188.188.3.241,系统:centos6.8,mysql:5.7.3,php:5.4.9,nginx:1.12.0   一.nginx编译安装 NGINX_VERSION=1.1 ...

  2. zabbix4.0搭建2

    server端(ip 192.168.200.15) proxy端(ip 192.168.200.22) agent端(ip 192.168.200.12) server端: #安装数据库 [mari ...

  3. zabbix4.0搭建1

    server端:负责接受到客户端发送过来的数据,并且保存到自己的数据库当中 端口:10051 agent端:负责每隔一定时间进行客户端的数据采集,并且发送给server端 端口:10050 proxy ...

  4. CentOS7 zabbix4.0搭建配置

    一.Zabbix-Server服务器端的安装 概述:10050是Agent的端口,Agent采用被动方式,Server主动连接Agent的10050端口:10051是Server的端口,Agent采用 ...

  5. centos 7 源代码搭建部署 zabbix-4.0.13 LTS

    Zabbix 官网 >:https://www.zabbix.com/download 源代码地址>:https://www.zabbix.com/cn/download_sources# ...

  6. 源码搭建Zabbix4.0.23LTS监控系统

    实验环境 centos 7.5 主机名 IP地址 配置 应用 controlnode 172.16.1.120/24 4核/8G/60G java-1.8.0-openjdk zabbix serve ...

  7. Centos7安装Zabbix4.0步骤

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 Centos7安装Zabbix4.0步骤 官方搭建zabbix4.0的环境要求: 1. 环境搭建L ...

  8. Centos7.5 ZABBIX4.0.3版本的编译安装

    Zabbix监控的搭建理论 1.      Zabbix Server会去采集监控数据,采集的监控数据会写入到SQL数据库 2.      Zabbix的WEB后端采用php语言开发,所有配置信息.用 ...

  9. centos7.2下快速安装zabbix4.0

    本笔记是基于CentOS 7.2下最小化安装的操作系统搭建的Zabbix4.0环境,主要用于做一些企业路由器和交换机等设备的运行状态监控. 1.安装epel源 yum -y install epel- ...

随机推荐

  1. 通用 spring cloud 微服务模板

    说明文档 功能 1. 基于映射数据库一键生成 spring cloud 微服务 2. 通用 Controller ,无需编写代码即可完成基于数据库的服务 3. 动态多条件 CRUD + 分页 使用说明 ...

  2. 【Matlab开发】matlab中bar绘图设置与各种距离度量

    [Matlab开发]matlab中bar绘图设置与各种距离度量 标签(空格分隔): [Matlab开发] [机器学习] 声明:引用请注明出处http://blog.csdn.net/lg1259156 ...

  3. 【Python】【demo实验36】【基础实验】【求3*3矩阵的主对角线之和】

    题目: 求一个3*3矩阵主对角线元素之和. 主对角线:从左上多右下的书归为主对角线 副对角线:从左下至右上的数归为副对角线. 我的源码: #!/usr/bin/python # encoding=ut ...

  4. Hadoop学习(2)-java客户端操作hdfs及secondarynode作用

    首先要在windows下解压一个windows版本的hadoop 然后在配置他的环境变量,同时要把hadoop的share目录下的hadoop下的相关jar包拷贝到esclipe 然后Build Pa ...

  5. hadoop(二MapReduce)

    hadoop(二MapReduce) 介绍 MapReduce:其实就是把数据分开处理后再将数据合在一起. Map负责“分”,即把复杂的任务分解为若干个“简单的任务”来并行处理.可以进行拆分的前提是这 ...

  6. 【转载】CASE WHEN 及 SELECT CASE WHEN的用法

    原文链接:https://www.cnblogs.com/aipan/p/7770611.html Case具有两种格式.简单Case函数和Case搜索函数. 简单Case函数 CASE sex WH ...

  7. php 处理图片 将图片转成base64

    1.直接将图片路径传入下面该方法就可以了//将图片转成base64 public function imgToBase64($img_file){ $img_base64 = ''; if ($img ...

  8. 关于greenlet的一些问题

    今天测试关于协程方面的代码发现我安装了greenlet模块缺导入不进.如图: 后来找了半天才发现原来greenlet被整进了gevent包中,如下导入就可以成功: 但这个greenlet没有了swit ...

  9. docker 入门1 - 方向 【翻译】

    开始,第 1 部分:方向和设置 欢迎!我们很高兴您想学习 Docker.Docker 入门教程将教您如何: 设置 Docker 环境(当前步骤) 生成映像并将其作为一个容器运行 缩放应用以运行多个容器 ...

  10. Java 8 Collectors 类的静态工厂方法

    摘自<<Java 8 实战>> Collectors 类的静态工厂方法 工厂方法 返回类型 用于 toList List<T>  把流中所有项目收集到一个 List ...