Zabbix介绍、安装配置

前言

本篇文章转自我的个人博客 http://anyisalin.com 欢迎大家访问

我们为什么需要监控?

没有监控就将系统上线, 就是在耍流氓; 在生产环境中, 监控是必不可少的, 因为我们需要实时了解业务的运行状态, 并且将数据以图表的方式直观的展示出来, 甚至当服务出现故障还可以根据事先定义好的规则自动执行相应脚本, 从而实现自动恢复、转移等功能

常用的开源监控系统有哪些?

运维工作就是大部分时候都是通过各种工具来让我们完成特定的任务, 监控也是如此, 目前也有很多开源的监控软件可供我们使用

常见的开源监控简单介绍

  • Cacti: 通过snmpget来获取数据, 使用RRDTool来绘制图形, 使用PHP语言编写, 提供强大的数据展示功能, 但是在故障报警方面不是很擅长

  • Nagios: 异常强大的报警功能, 多节点监控、数据图形展示的功能薄弱, 因此经常整合Cacti来进行监控

  • Zabbix: 融合CactiNagios的大部分功能, 通过WEB界面提供分布式的网络监控

Zabbix架构

Zabbix是一款强大的开源分布式监控系统, 能够将SNMPJMXZabbix Agent提供的数据通过WEB GUI的方式进行展示.

Zabbix有四个组件, Zabbix-ServerZabbix-AgentZabbix-Webzabbix-proxy

  • Zabbix-Server: 服务端, 通过C语言编写, 获取Zabbix-Agent端的数据并存储在数据库中

  • Zabbix-Proyx: 代理服务端收集数据并保存在本地的数据库中, 定期将数据提交给Zabbix-Server

  • Zabbix-Agent: 客户端, 通过C语言编写, 收集定义的item的数据, 定期发给服务端在不同工作模式下、也可能是服务器主动收集

  • Zabbix-Web: Web-GUI结构, 可以运行在任意主机中, 连接Zabbix-Server并将数据库中的内容在前端展示

1462925923227840.jpg

Zabbix的安装和配置

搭建一个lamp环境

[root@node6 ~]# yum install httpd mysql-server php-mysql php -y --nogpgcheck

使用阿里云的Zabbix_yum和epel仓库

[root@node6 ~]# yum-config-manager --add-repo="http://mirrors.aliyun.com/zabbix/zabbix/2.4/rhel/6/x86_64/"  #添加yum仓库

1462925558910529.jpg

安装Zabbix-Server

[root@node6 ~]# yum install zabbix zabbix-server zabbix-server-mysql zabbix-get zabbix-sender zabbix-web-mysql zabbix-web -y --nogpgcheck

配置mysql数据库

mysql> GRANT ALL ON zabbix.* TO zbxuser@'%' IDENTIFIED BY 'passwd';
mysql> CREATE DATABASE zabbix;


#导出zabbix默认的数据表
[root@node6 ~]# mysql zabbix < /usr/share/doc/zabbix-server-mysql-2.4.8/create/schema.sql  
[root@node6 ~]# mysql zabbix < /usr/share/doc/zabbix-server-mysql-2.4.8/create/images.sql
[root@node6 ~]# mysql zabbix < /usr/share/doc/zabbix-server-mysql-2.4.8/create/data.sql

配置php时区

[root@node6 ~]# vim /etc/php.ini  #设置时区为某个地区
date.timezone = Asia/Shanghai

配置zabbix-server

[root@node6 ~]# vim /etc/zabbix/zabbix_server.conf   #修改下面两项
DBName=zabbix
DBPassword=passwd
DBHost=172.16.1.7

启动并进入web-gui初始化

[root@node6 ~]# service zabbix-server start
[root@node6 ~]# service httpd start

启动后一定要看一下端口是否监听, 如果没有监听, 查看/var/log/zabbix/zabbix-server.log是否有错误记录

1462925558127515.jpg

1462925561877413.gif

安装agent

[root@node6 ~]# yum install zabbix-agent -y

配置agent

[root@node6 ~]# vim /etc/zabbix/zabbix_agentd.conf  ##我这里是监控本机, 其实不用修改配置文件,如果是其他节点需要监控, 则需要按如下配置
Server=127.0.0.1,172.16.1.7
ServerActive=127.0.0.1,172.16.1.7
Hostname=node6.anyisalin.com

启动agent并测试

[root@node6 ~]# service zabbix-agent start

1462925562191707.gif

总结

我们轻松的实现了Zabbix-ServerZabbix-Agent. 尽管我没有将它们分离开来, 但是效果已经达到了, 关于Zabbix的更多文章,还会继续写

文章内容浅尝辄止, 大家有更好的见解可以提出, 觉得我写的不错, 可以点一波赞~(≧▽≦)/~ 
作者: AnyISaIln QQ: 1449472454 
感谢: MageEdu

原创文章,作者:Net18-AnyISalIn,如若转载,请注明出处:http://www.178linux.com/16273

(2)
Net18-AnyISalInNet18-AnyISalIn
上一篇 2016-05-13 22:20
下一篇 2016-05-14

相关推荐

  • Linux系统网络属性管理

        每台计算机主机连入internet都必须给主机设定以个合法的IP地址。这些IP参数大概包括IP地址、子网掩码、网关、路由、DNS等。在Linux中,大多数命令配置网络配置都是临时生效,想要网络服务永久有效就必须写入配置文件中,所以有时候更改配置重启主机是为了让内核重读配置文件到内核中,因为配置文件属于用户空间的文件。大多数网络配置…

    Linux干货 2016-09-18
  • 虚拟主机的实现

    示例1:基于ip 编辑配置文件,切换到最后一行,增加: <VirtualHost 192.168.1.117:80>     ServerName web1.ams.com     DocumentRoot "/vhosts/web1/htdocs" </VirtualHost&g…

    Linux干货 2016-08-05
  • Linux运维实战之一:初识计算机组成及Linux系统

    本次博文是Linux运维实战的开山篇,主要内容如下: 计算机的组成及其功能; Linux的不同发行版之间的联系与区别; Linux的哲学思想; Linux系统上命令的适用格式及一些常用命令的使用; Linux系统上如何获得帮助信息; Linux发行版的基础目录名称命名法则及功用规定; 一、计算机的组成及其功能: 问题引入:互联网时代,计算机是我们每天都要使用…

    Linux干货 2016-10-31
  • M22 程序员偷懒战法

    前段时间有个外国的程序猿走红网络,这个哥们可以说是懒到了极点,上班请假给领导发短信写脚本,下班晚回家给老婆发短信写脚本,甚至于接个咖啡也要写脚本。这个哥们离职之后,他的同事在他的办公电脑上发现了这些脚本,并公布到了网上,引起众程序猿纷纷膜拜。最近我刚好学到shell脚本部分,就让我分析其中的一个跟领导请假的脚本吧。 #!/bin/sh -e # Exit e…

    Linux干货 2017-04-06
  • 系统启动流程

    linux系统启动流程 内核的设计结构单内核:linux(线程–lwp轻量级进程)微内核:windows(支持真正意义上的多线程) 单内核:很多功能驱动都集成在一起 微内核:内核很小,功能单一。模块化 linux为了适应众多用户的不同硬件需求,linux内核在设计上采用模块化设计。可以动态加载模块。核心模块:ko 内核所独有的。共享对象:so 红…

    Linux干货 2016-09-19