编译安装zabbix

Zabbix简介

Zabbix 是一个企业级的分布式开源监控方案。

Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。Zabbix使用灵活的通知机制,允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据,Zabbix提供了出色的报告和数据可视化功能。这些功能使得Zabbix成为容量规划的理想方案。

Zabbix支持主动轮询和被动捕获。Zabbix所有的报告、统计信息和配置参数都可以通过基于Web的前端页面进行访问。基于Web的前端页面可以确保您从任何方面评估您的网络状态和服务器的健康性。适当的配置后,Zabbix可以在IT基础架构监控方面扮演重要的角色。对于只有少量服务器的小型组织和拥有大量服务器的大型公司也同样如此。

Zabbix是免费的。Zabbix是根据GPL通用公共许可证第2版编写和发行的。这意味着它的源代码都是免费发行的,可供公众任意使用。

Zabbix基于LAMP架构,或者LNMP架构进行工作。

Zabbix功能点:数据收集,灵活的阀值定义,高度可配置化的告警,实时图表绘制,Web监控功能,丰富的可视化选项,历史数据存储,配置简单,使用模板,网络发现,快捷的Web界面,Zabbix API,权限管理系统,功能强大,易于扩展的agent,二进制代码,使用Zabbix proxy代理服务器,使得远程监控更简单。

系统环境

# cat /etc/centos-release

CentOS Linux release 7.6.1810 (Core)

# uname -r

3.10.0-957.el7.x86_64

# getenforce

Disabled

# systemctl status firewalld.service

● firewalld.service - firewalld - dynamic firewall daemon

Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)

Active: inactive (dead)

Docs: man:firewalld(1)

下载zabbix源码包

https://www.zabbix.com/cn/download_sources  可以在此页面找到想要的zabbix源码包。

# tar xf zabbix-4.0.6.tar.gz

安装依赖包

# yum install gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel net-snmp-devel libevent-devel -y

创建zabbix相关的用户

# groupadd --system zabbix

# useradd --system -g zabbix -d /application/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix

创建相关zabbix目录

# mkdir -m u=rwx,g=rwx,o= -p /application/zabbix

# chown zabbix:zabbix /application/zabbix

创建默认数据库

create database zabbix default character utf8; #创建库

grant all privileges on zabbix.* to zabbix@'localhost' identified by '123456';  #授权库

GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'qwer 1234' WITH GRANT OPTION; #授权库另一种放法

use zabbix #切换到zabbix库

导入默认的数据库文件

mysql> source /mnt/zabbix-4.0.6/database/mysql/schema.sql

mysql> source /mnt/zabbix-4.0.6/database/mysql/images.sql

mysql> source /mnt/zabbix-4.0.6/database/mysql/data.sql

编译装装

./configure --prefix=/application/zabbix --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

make && make install

配置zabbix配置文件

# egrep -v '^$|^#' /application/zabbix/etc/zabbix_agentd.confLogFile=/tmp/zabbix_agentd.log

Server=10.0.0.100

ServerActive=10.0.0.100

Hostname=Zabbix server

Include=/application/zabbix/etc/zabbix_agentd.conf.d/*.conf

# egrep -v '^$|^#' /application/zabbix/etc/zabbix_server.confLogFile=/tmp/zabbix_server.log

DBHost=10.0.0.100

DBName=zabbix

DBUser=zabbix

DBPassword=qwer 1234

DBSocket=/application/mysql/mysql.sock

Timeout=4

LogSlowQueries=3000

Include=/application/zabbix/etc/zabbix_server.conf.d/*.conf

启动zabbix-server和zabbix-agent

./zabbix_agentd

./zabbix_server

安装zabbix-agent客户端

#类似服务端安装,由于未在官网找到关于zabbix4.0的agent的包,可以用源码包安装,另一种可以通过yum源方式安装zabbix客户端

利用zabbix的源码包进行安装

# yum install gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel net-snmp-devel libevent-devel -y

创建zabbix相关的用户

# groupadd --system zabbix

# useradd --system -g zabbix -d /application/zabbix -s /sbin/nologin -c "Zabbix Monitoring System" zabbix

创建相关zabbix目录

# mkdir -m u=rwx,g=rwx,o= -p /application/zabbix

# chown zabbix:zabbix /application/zabbix

编译安装zabbix-agent

./configure --prefix=/application/zabbix --enable-agent

修改配置问价为下方

# egrep -v '^$|^#' /application/zabbix/etc/zabbix_agentd.confLogFile=/tmp/zabbix_agentd.log

Server=10.0.0.100

ServerActive=10.0.0.100

Hostname=Zabbix agent

Include=/application/zabbix/etc/zabbix_agentd.conf.d/*.conf

启动agnet服务端

/zabbix_agentd

故障问题

问题一:找不到共享库

ln -s /application/mysql/lib/libmysqlclient.so.20 /usr/local/lib/libmysqlclient.so.20  #find找到此库,然后创建软连接

# cat /etc/ld.so.conf

include ld.so.conf.d/*.conf

/usr/local/lib #添加此行信息

# /sbin/ldconfig -v  #更新配置信息

Zabbix服务就可以启动了

问题二:没有zabbix-web页面   #复制默认zabbix-web页面

# pwd  #解压的源码包

/mnt/zabbix-4.0.6/frontends/php

# cp -rf ./* /application/nginx/html/Zabbix #复制到nginx的html目录下

Zabbix discoverer processes more than 75% busy  # Zabbix发现处理超过75%的使用率

修改zabbix_server.conf配置文件

vim zabbix_server.conf

...

StartDiscoverers=2  修改此处,范围是0-250;

...

zabbix无告警

开启监控项

勾选Wizard,默认选择全部触发器

选择启用,之后报警就能使用了,修改刷新时间为1分钟。

CentOS7.x编译安装zabbix4.0的更多相关文章

  1. Centos7一键编译安装zabbix-4.0.2

    ##只针对centos7的系统有效,centos6无效,mysql zabbix用户:zabbix,密码:zabbix;建议用全新的centos7服务器 软件版本: (nginx-1.14.2.php ...

  2. centos7.6下编译安装zabbix4.0.10长期支持版

    一.安装数据库,这里使用的是percona-server5..24版本 配置如下 [root@zabbix4_clone:~]# cat /etc/my.cnf # Example MySQL con ...

  3. centos7下编译安装php-7.0.15(PHP-FPM)

    centos7下编译安装php-7.0.15(PHP-FPM) 一.下载php7源码包 http://php.net/downloads.php 如:php-7.0.15.tar.gz 二.安装所需依 ...

  4. Linux Centos7.2 编译安装PHP7.0.2

    操作环境: 1.系统:Centos7.2 2.服务:Nginx 1.下载PHP7.0.2的安装包解压,编译,安装: $ cd /usr/src/ $ wget http://cn2.php.net/d ...

  5. CentOS7下编译安装redis-5.0.9

    CentOS7下编译安装redis-5.0.9 本文地址http://yangjianyong.cn/?p=171转载无需经过作者本人授权 下载redis #code start wget https ...

  6. Centos7编译安装zabbix-4.0.1

    架构组合:nginx1.9.10+php7.0.32+mysql5.7.22+zabbix4.0.1 nginx1.9.10 先装依赖 openssl-1.1.0f tar zxvf openssl- ...

  7. Centos 7.5源码编译安装zabbix4.0报fatal error: mysql.h: No such file or directory

    系统环境:CentOS 7.5是最小化安装的 编译信息 编译选项: root@Server01 zabbix-]# ./configure --prefix=/usr/share/applicatio ...

  8. centos7.2编译安装zabbix-3.0.4

    安装zabbix-3.0.4 #安装必备的包 yum -y install gcc* make php php-gd php-mysql php-bcmath php-mbstring php-xml ...

  9. CentOS7中编译安装redis5.0

    1. 环境介绍 CentOS7 (未安装Development Tools) 2. 下载Redis5.0-rc3 wget -O redis-5.0-rc3.tar.gz https://github ...

随机推荐

  1. python之读取配置文件模块configparser(二)参数详解

    configparser.ConfigParser参数详解 从configparser的__ini__中可以看到有如下参数: def __init__(self, defaults=None, dic ...

  2. IDEA代码格式化快捷键(新)

    快捷键:Ctrl+Alt+L 效果: 之前: 之后:

  3. .NET Core微服务之基于Ocelot实现API网关服务

    Tip: 此篇已加入.NET Core微服务基础系列文章索引 一.啥是API网关? API 网关一般放到微服务的最前端,并且要让API 网关变成由应用所发起的每个请求的入口.这样就可以明显的简化客户端 ...

  4. 一个适合.NET Core的代码安全分析工具 - Security Code Scan

    本文主要翻译自Security Code Scan的官方Github文档,结合自己的初步使用简单介绍一下这款工具,大家可以结合自己团队的情况参考使用.此外,对.NET Core开发团队来说,可以参考张 ...

  5. SQL 注入~MySQL专题

    Recently, 团队在做一个关于SQL的项目,这个专题是项目中的一部分,该部分正是由我来负责的.今天,分享给正在奋斗中的伙伴们,愿,你们在以后的学习道路中能有自己的收获.              ...

  6. 自定义GridControl编辑器

    本文版权归博主 惊梦无痕 所有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作.SourceLink 鉴于网上的针对GridControl的一些代码比较凌乱,且功能分散,故将整理过的代码分享出来 ...

  7. java面试记录

    怎么确保一个集合不能被修改   ArrayList<String> list = new ArrayList<>();list.add("x");Colle ...

  8. Java学习点滴——Integer缓存

    前言 一切从下面这段代码开始 public static void test(String[] agrs){ Integer a = 1; Integer b = 2; System.out.prin ...

  9. WinForm DataGridView实时更新表格数据

    前言 一个特殊的项目没有用第三方控件库,但用到了DataGridView,由于是客户端产生的数据,所以原始数据源就是一个集合. 根据需要会向集合中添加数据项,或是修改某些数据项的值,但DataGrid ...

  10. MySQL索引初探

    一.什么是索引? 帮助数据库系统实现高效获取数据的数据结构 索引可以帮助我们快速地定位到数据而不需要每次搜索的时候都遍历数据库中的每一行. 二.常见实现方式有哪些? 常见索引模型有三种:哈希表.有序数 ...