上一篇

【1】循序渐进学 Zabbix :初识与基础依赖环境搭建( LNMP )

安装 Zabbix Server

上篇我们在 192.168.200.101 上面安装了 Zabbix 所依赖的 LNMP 环境且已经能够正常使用,那么本章就正式进入我们真正 Zabbix 的安装!

在安装之前,我们可以先简单的扯一下 Zabbix 的工作流程,如下图:

简单的说就是 Zabbix Agent 客户端将监控项目的数据传输给 Zabbix Server 服务端,Zabbix Server 将它保存到数据库,此时 Zabbix WEB 服务再去读取数据库,这样就实现了监控,展示的目的!

当然,我这里选用的是 NGINX 作为 WEB 服务器,你也可以选择 Apache 这些!

那么进入正题,开始安装 Zabbix:

安装包:

安装包
zabbix-3.4.10.tar.gz

【1】创建相应的数据库:

# 登录数据库
mysql -uroot -p123456 # 执行以下建库和用户 SQL
create database zabbix default character set utf8 collate utf8_general_ci;
grant all on zabbix.* to zbxuser@'127.0.0.1' identified by '';
grant all on zabbix.* to zbxuser@'localhost' identified by '';
grant all on zabbix.* to zbxuser@'%' identified by '';
flush privileges;
quit;

【2】 创建相关用户和目录:

# 创建相关用户
useradd zabbix -s /sbin/nologin # 创建相关目录
mkdir /opt/packages/zabbix
mkdir /opt/logs/zabbix # 授权
chown -R zabbix:zabbix /opt/logs/zabbix

【3】编译安装 Zabbix Server,将安装包上传到 /opt/packages/zabbix

cd /opt/packages/zabbix
tar -xf zabbix-3.4.10.tar.gz
cd zabbix-3.4.10 # 编译安装
./configure --prefix=/opt/services/zabbix --enable-server --enable-agent --with-mysql=/opt/services/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2 make && make install

这里可以简单的说下编译参数:

1、ennable server 和 agent 代表本机 Server 端和 Agent 端都安装

2、with mysql 知道的文件是本机安装 MySQL 下的,如果你安装的路径和我不同,你可以使用 find 查找一下你的 mysql_config 在哪里

3、net snmp 是 Zabbix 监控需要用到的

【4】初始化数据库:MySQL 为我们提供了三个初始化脚本,注意导入顺序

mysql -uroot -p123456 zabbix </opt/packages/zabbix/zabbix-3.4.10/database/mysql/schema.sql
mysql -uroot -p123456 zabbix </opt/packages/zabbix/zabbix-3.4.10/database/mysql/images.sql
mysql -uroot -p123456 zabbix </opt/packages/zabbix/zabbix-3.4.10/database/mysql/data.sql

【5】 配置 Zabbix Server:

cd /opt/services/zabbix/etc

vim zabbix_server.conf

# 以下是我开启的配置
LogFile=/opt/logs/zabbix/zabbix_server.log
PidFile=/opt/logs/zabbix/zabbix_server.pid
# 数据库连接信息
DBHost=localhost
DBName=zabbix
DBUser=zbxuser
DBPassword=123456
DBSocket=/opt/logs/mysql/mysql.sock
DBPort=3306
Timeout=4
LogSlowQueries=3000

【6】配置启动文件:

# 复制文件
cp /opt/packages/zabbix/zabbix-3.4.10/misc/init.d/fedora/core/* /etc/init.d/ # 修改,修改部分如图
vim /etc/init.d/zabbix_server

图1:

图2:

【7】 配置 MySQL 的 lib,否则会报错:error while loading shared libraries: libperconaserverclient.so.20

# 添加配置
echo "/opt/services/mysql/lib" >> /etc/ld.so.conf # 执行命令生效配置
ldconfig

【8】 启动 Zabbix Server:CentOS 7 第一次启动容易出现各种毛病,建议使用全路径启动,之后就可以用 /etc/init.d/zabbix_server start 启动关闭了

/opt/services/zabbix/sbin/zabbix_server

【9】查看进程: 也可以使用 netstat 查看端口 10051

ps -ef

【10】加入开机启动:

# 加入开机启动
echo '' >> /etc/rc.local
echo '# zabbix server startup' >> /etc/rc.local
echo '/etc/init.d/zabbix_server start &' >> /etc/rc.local

【11】至此,Zabbix Server 服务端配置完成,下一篇将谈谈服务端的 WEB 怎么配置!

小结

简单的谈一下关于 CentOS 7 安装 Zabbix 过程中遇到的一些问题:

1、可能配置的 MySQL lib 不生效,还是报错 libperconaserverclient.so.20,可以采用 ln -s 建立软连接的方式把 MySQL 的 lib 目录下所有文件链接到 /usr/lib64 /usr/lib 下面,如果有问题,建议重启一下机器

2、zabbix 的监听用户是 zabbix,所有 logs/zabbix 目录该用户一定要有写的权限,否则无法启动

3、第一次启动用脚本启动可能不成功,建议使用全路径启动,之后再用脚本启动关闭,一切正常

下一篇

【3】循序渐进学 Zabbix :配置 Zabbix Web

【2】循序渐进学 Zabbix:安装配置 Zabbix Server 服务端的更多相关文章

  1. 【3】循序渐进学 Zabbix:配置 Zabbix Web

    上一篇 [2]循序渐进学 Zabbix:安装配置 Zabbix Server 服务端 配置 Zabbix Web 访问 上一篇完成了 Zabbix Server 的安装,但是那对于我们而言只是一个服务 ...

  2. 安装配置zabbix代理之zabbix_proxy

    配置Proxy代理 如图所示: zabbix_server端在阿里云上,其代理程序部署在各地机房,代理程序收集所在机房的所有机器监控指标,然后传给server端 环境说明: CentOS releas ...

  3. zabbix安装配置agent程序之agent配置文件详解

    安装zabbix-agent http://repo.zabbix.com/zabbix/3.2/rhel/6/x86_64/ 下载:zabbix-agent-3.2.0-1.el6.x86_64.r ...

  4. 全网最详细的PLSQL Developer + Oracle client的客户端 或者 PLSQL Developer + Oracle server服务端的下载与安装过程(图文详解)

    不多说,直接上干货! 环境说明: 本地没有安装Oracle服务端,oracle服务端64位,是远程连接,因此本地配置PLSQL Developer64位. Oracle database使用在本机部署 ...

  5. SVN--下载、安装VisualSVN server 服务端和 TortoiseSVN客户端

    前言: 在http://www.cnblogs.com/xiaobaihome/archive/2012/03/20/2407610.html的博客中已经很详细地介绍了SVN的服务器--VisualS ...

  6. Photon Server 服务端编程

    Photon Server 和 Unity3D 数据交互: Photon Server 服务端编程 Unity3D 客户端编程 VS2017 之 MYSQL实体数据模 一:Photon Server的 ...

  7. SVN server 服务端修改端口号

    SVN server 服务端修改端口号 在实际使用中可能当安装svn server 服务后,发现与后续其他程序端口冲突, 1.打开svn server 管理界面->操作->properti ...

  8. QT server服务端如何判断客户端断开连接

    在QT编程中有时会用到server服务端与客户端进行TCP网络通信,服务端部分代码如下: 1.创建server用于监听客户端套接字 this->server = new QTcpServer(t ...

  9. 小白都能看懂的Linux系统下安装配置Zabbix

    实验环境: 操作系统:Centos 7.6 服务器ip:192.168.10.100 运行用户:root 网络环境:Internet Zabbix是一个基于web界面的提供分布式系统监控及网络功能的企 ...

随机推荐

  1. try catch(java)

    1 try.catch.finally语句中,在如果try语句有return语句,则返回的之后当前try中变量此时对应的值,此后对变量做任何的修改,都不影响try中return的返回值 2 如果fin ...

  2. VMware tools的使用

    现在的开发环境基本上都是lnmp,所以我们需要在windows下使用虚拟机来搭建开发环境, 但是 在本地写好代码以后,需要上传到虚拟机的运行目录,每次修改都需要上传??? 不存在的!!! 使用Vmwa ...

  3. LTE-V2X车联网无线通信技术发展

    2017年9月7日,国家制造强国建设领导小组车联网产业发展专项委员会第一次全体会议在北京召开.会议要求“要加大关键产品研发攻关力度,完善测试验证.技术评价.质量认证等公共服务平台,促进LTE-V2X车 ...

  4. RDD之一:总体介绍

    摘要 本文提出了分布式内存抽象的概念——弹性分布式数据集(RDD,Resilient Distributed Datasets),它具备像MapReduce等数据流模型的容错特性,并且允许开发人员在大 ...

  5. Python函数(一)-return返回值

    定义一个函数可以在最后加上return返回值,方便查看函数是否运行完成和返回函数的值 # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR&qu ...

  6. 问题:只能在执行 Render() 的过程中调用 RegisterForEventValidation;结果:只能在执行 Render() 的过程中调用 RegisterForEventValidation

    只能在执行 Render() 的过程中调用 RegisterForEventValidation 当在导出Execl或Word的时候,会发生只能在执行 Render() 的过程中调用 Register ...

  7. python jvm数据

    在网上找的抱歉忘了原链接了额 #!/usr/bin/env python # # import os import commands import re import sys (status1, re ...

  8. 部署和调优 3.1 dns安装配置-1

    安装配置DNS服务器 装一个bind,首先搜一下. yum list |grep bind bind.x86_64   我们安装这个 安装 yum install bind.x86_64 -y 看一下 ...

  9. java中的面向对象的三大基本特征

    转载,原文来自http://blog.sina.com.cn/s/blog_5f79a56a0100c6ig.html 众所周知,java中的面向对象的三大基本特征是:[封装].[继承].[多态] 一 ...

  10. 吸收效果,像是在Mac上的垃圾桶的效果一样

    #import "AppDelegate.h" #import <QuartzCore/QuartzCore.h> @interface AppDelegate () ...