Zabbix简介

Zabbix是一个高度集成的企业级开源网络监控解决方案,与Cacti、nagios类似,提供分布式监控以及集中的web管理界面。zabbix具备常见商业监控软件所具备的功能,例如主机性能监控,网络设备性能监控,数据库性能监控,ftp等通用协议的监控,能够灵活利用可定制警告机制,允许用户对事件发送基于E-mail的警告,保证相关人员可以快速解决。还能够利用存储数据提供杰出的报表及实时的图形化数据处理,实现对监控主机7x24小时集中监控。

Zabbix通过C/S模式采集数据通过B/S模式在web端展示和配置,通过SNMP协议传输,而被监控对象只需要支持SNMP协议或者运行Zabbix-agents代理程序即可。服务端监听端口为10051,而被监控端即Zabbix-agents代理程序监控10050端口。

实验环境

                     主机                                          操作系统                    IP地址                    主要软件
          zabbix服务端                       centos7.0 x86_64           10.1.28.70          zabbix-server4.0
          Linux被监控端                       centos7.0 x86_64           10.1.28.253           zabbix-agent4.0

Zabbix服务端环境部署

1、环境准备

由于zabbix提供集中的web监控管理界面,因此服务在web界面的呈现需要LAMP架构支持。
     yum install -y httpd mariadb-server mariadb php php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mhash

编辑配置httpd
    vim /etc/httpd/conf/httpd.conf
    ServerName zabbix
    DirectoryIndex index.html index.php //添加首页支持格式

编辑配置php,配置中国时区
    vim /etc/php.ini
    date.timezone = PRC //PRC为中国时区
启动httpd,mysq
    systemctl stop firewalld.service
    setenforce 0
    systemctl start httpd.service
    systemctl start mariadb.service
    netstat -ntap | egrep '(80|3306)'

启动msyql后执行初始安全设置。
    mysql_secure_installation
    mysql -u root -p
    CREATE DATABASE zabbix character set utf8 collate utf8_bin;
    GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY '123456'; //创建zabbix数据库,并设定用户密码
    flush privileges;
数据库设置完成,检测php与数据库连通情况
    vim /var/www/html/index.php
    <?php
    $link=mysql_connect('10.1.28.70','zabbix','123456');
    if($link) echo "<h1>Success!!</h1>";
    else echo "Fail!!";
    mysql_close();
    ?>
在网页中输入zabbix主机ip地址显示Success表示连通数据库成功
为保证zabbix用户也可以登录数据库,若出现本地无法登录情况,解决方式如下。
使用root账户登录数据库
    select user,host from mysql.user; //有空用户名称占用导致本地无法登录远程可登录
    +--------+-----------+
    | user | host |
    +--------+-----------+
    | zabbix | % |
    | root | 127.0.0.1 |
    | root | ::1 |
    | | cacti |
    | root | cacti |
    | | localhost |
    | root | localhost |
    +--------+-----------+

drop user ''@localhost; //删除空用户
    drop user ''@cacti;
    flush privileges;
2、部署Zabbix Server

yum install php-bcmath php-mbstring -y 安装php支持zabbix组件

rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm //会自动生成yum源文件,保证系统可以上网
    yum install zabbix-server-mysql zabbix-web-mysql -y 安装zabbix组件

zcat /usr/share/doc/zabbix-server-mysql-4.0.0/create.sql.gz | mysql -uzabbix -p zabbix //生成数据库文件,注意密码不要输成root的

查看、修改zabbix配置文件
    grep -n '^'[a-Z] /etc/zabbix/zabbix_server.conf
    38:LogFile=/var/log/zabbix/zabbix_server.log
    49:LogFileSize=0
    72:PidFile=/var/run/zabbix/zabbix_server.pid
    90:DBHost=127.0.0.1
    91:DBName=zabbix
    107:DBUser=zabbix
    108:DBPassword=123456
    287:SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
    413:Timeout=4
    455:AlertScriptsPath=/usr/lib/zabbix/alertscripts
    465:ExternalScripts=/usr/lib/zabbix/externalscripts
    501:LogSlowQueries=3000

修改zabbix在httpd中的时区
    vim /etc/httpd/conf.d/zabbix.conf
    php_value date.timezone Asia/Shanghai
zabbix基本配置完成,启动服务,实现web界面安装
    systemctl enable zabbix-server
    systemctl start zabbix-server
    netstat -anpt | grep zabbix //监听在10051端口上
    systemctl restart httpd.service

web界面安装访问。

zabbix被监控端代理设置

安装zabbix-agent客户端
    rpm -ivh http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/zabbix-release-3.5-1.el7.noarch.rpm

yum install -y zabbix-agent

编辑修改配置文件
    grep -n '^'[a-Z] /etc/zabbix/zabbix_agentd.conf
    vim /etc/zabbix/zabbix_agentd.conf
    13:PidFile=/var/run/zabbix/zabbix_agentd.pid
    32:LogFile=/var/log/zabbix/zabbix_agentd.log
    43:LogFileSize=0
    95:Server=10.1.28.70 //zabbix服务器地址
    136:ServerActive=10.1.28.70 //活跃服务器地址
    147:Hostname=zabbix_agent
    265:Include=/etc/zabbix/zabbix_agentd.d/*.conf
关闭防火墙,启动服务
    systemctl stop firewalld.service
    setenforce 0
    systemctl enable zabbix-agent.service
    systemctl restart zabbix-agent.service

netstat -anpt | grep zabbix //监听在10050端口

以上是整个配置过程

Linux中Zabbix4.0的搭建的更多相关文章

  1. 【Linux】zabbix4.0服务器搭建,agent搭建,及邮件使用方法

    zabbix默认的 服务端监听端口为10051,而被监控端即Zabbix--agents代理程序监控10050端口. 更新yum源: yum clean all yum makecache 需要配置网 ...

  2. linux中BASH_SOURCE[0]

    在C/C++中,__FUNCTION__常量记录当前函数的名称.有时候,在日志输出的时候包含这些信息是非常有用的.而在Bash中,同样有这样一个常量FUNCNAME,但是有一点区别是,它是一个数组而非 ...

  3. linux中BASH_SOURCE[0](转)

    转自:http://www.cnblogs.com/sunfie/p/5943979.html 在C/C++中,__FUNCTION__常量记录当前函数的名称.有时候,在日志输出的时候包含这些信息是非 ...

  4. Linux中samba服务器的搭建

    使用的vmware12虚拟机安装的centos6.8和物理机上的windows10,实现在windows10 上访问CentOs上的samba服务. 一.先查看系统中是否安装有samba服务相关的软件 ...

  5. Linux 中NFS服务器的搭建

    serve端IP:192.168.2.128 客户端IP:192.168.2.131 server端配置: 1.安装nfs,rpcbind,可以参考Linux 中yum的配置来安装: yum inst ...

  6. linux dubbo-admin-2.6.0 环境搭建

    1.去maven官网下载apache-maven-3.6.2-bin.tar.gz安装包 2.上传至linux服务器中 3.解压maven安装包 tar -zxvf apache-maven-3.6. ...

  7. Linux中变量#,#,@,0,0,1,2,2,*,$$,$?的含义【转】

    转自:http://www.cnblogs.com/kaituorensheng/p/4002697.html 1 2 3 4 5 6 7 8 $# 是传给脚本的参数个数 $0 是脚本本身的名字 $1 ...

  8. Linux中变量#,@,0,1,2,*,$$,$?的含义

    $# 是传给脚本的参数个数 $ 是脚本本身的名字 $ 是传递给该shell脚本的第一个参数 $ 是传递给该shell脚本的第二个参数 $@ 是传给脚本的所有参数的列表 $* 是以一个单字符串显示所有向 ...

  9. linux之CentOS-7.0环境搭建

    此文作为新手安装centos-7的图文教程.  一.  前言 最近,师兄要进行实验室架构搭建,需要学习docker.而docker是完全依赖于linux系统的.所以,有了这篇文章. linux有很多发 ...

随机推荐

  1. 51Nod-1006 最长公共子序列Lcs

    题目链接 Description 给出两个字符串A B,求A与B的最长公共子序列(子序列不要求是连续的). 比如两个串为: abcicba abdkscab ab是两个串的子序列,abc也是,abca ...

  2. centos7中安装、配置、验证、卸载redis

    本文介绍在centos7中安装.配置.验证.卸载redis等操作,以及在使用redis中的一些注意事项. 一 安装redis 1 创建redis的安装目录 利用以下命令,切换到/usr/local路径 ...

  3. spark使用udf给dataFrame新增列

    在 spark 中给 dataframe 增加一列的方法一般使用 withColumn // 新建一个dataFrame val sparkconf = new SparkConf() .setMas ...

  4. 【Redis篇】初始Redis与Redis安装

    一.前述 Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多,包括st ...

  5. asp.net core系列 37 WebAPI 使用OpenAPI (swagger)中间件

    一.概述 在使用Web API时,对于开发人员来说,了解其各种方法可能是一项挑战.在ASP.NET Core上,Web api 辅助工具介绍二个中间件,包括:Swashbuckle和NSwag .NE ...

  6. Python:zip 函数的用法

    zip() 接受一系列可迭代的对象作为参数,将对象中对应的元素打包成一个个 tuple,然后返回由这些 tuple 组成的 list. 若传入参数的长度不等,则返回 list 的长度和参数中长度最短的 ...

  7. golang - gob与rpc

    今天和大家聊聊golang中怎么使用rpc,rpc数据传输会涉及到gob编码,所以先讲讲gob,别担心,就算你完全没有接触过gob与rpc,只要知道rpc的中文是远程过程调用,剩下的我都能给你讲明白( ...

  8. PC逆向之代码还原技术,第一讲基本数据类型在内存中的表现形式.浮点,指针寻址公式

    目录 代码还原技术 一丶简介代码还原 二丶代码还原中的数据类型表现形式 1.整数类型 2.无符号整数 3.有符号整数 4.浮点数数据类型 5.浮点编码 4.Double类型解析. 三丶浮点汇编 1.浮 ...

  9. MySQL数据库实用技巧

    1.如何快速掌握MySQL? 培养兴趣 兴趣是最好的老师,不论学习什么知识,兴趣都可以极大地提高学习效率.当然学习MySQL 5.6也不例外.夯实基础 计算机领域的技术非常强调基础,刚开始学习可能还认 ...

  10. Spring Boot 2.x(四):整合Mybatis的四种方式

    前言 目前的大环境下,使用Mybatis作为持久层框架还是占了绝大多数的,下面我们来说一下使用Mybatis的几种姿势. 姿势一:零配置注解开发 第一步:引入依赖 首先,我们需要在pom文件中添加依赖 ...