zoukankan      html  css  js  c++  java
  • zabbix真的很简单 (安装篇)

    系统环境: Centos 6.4

      一直觉得 zabbix 很简单,但是还是有好多人看了好多文档都搞不明白怎么用,我从2013年使用到现在也小有心得,如果时间允许,很高兴与大家一起分享我在使用过程中的一些小技巧和小经验。好了至于什么是zabbix之类的废话就不多说了,有兴趣可以看看别人写的,我只想说zabbix网上的文档真是好多好多好多....

      咱们这次部署全程使用 yum ,我会简单说一下 yum 的配置。很多小伙伴都会问,不都是下载源码包装吗?或者下载 rpm 包装吗?我的 yum 里为什么没有 zabbix ?其实类似这种第三方软件,基本的 yum 软件源是不提供的,不过你可以增加 epel 源来安装,这里就不介绍 epel 啦,想详细了解的就自己去epel 官网看吧。

    安装一套LAMP环境

    yum -y install zlib-devel mysql-devel glibc-devel curl-devel gcc automake mysql libidn-devel openssl-devel net-snmp-devel rpm-devel OpenIPMI-devel httpd mysql-server php-gd php-mysql php-bcmath php-mbstring php-xml perl-DBI php
    

    提示:以上相关软件直接可以通过centos自带的yum源安装,这个过程依据各自带宽而定。很慢~! 虽然版本偏低,但是对于部署来说足够了。

    安装EPEL源

    我们可以直接访问 http://download.fedoraproject.org/pub/epel/6/i386/repoview/epel-release.html 找到epel的安装包,右键复制地址,直接装就可以了。

    rpm -ivh http://mirrors.zju.edu.cn/epel/6/i386/epel-release-6-8.noarch.rpm  
    

    提示:这里对epel里的zbx资源简单介绍一下,epel里zbx资源分为三个版本,1.8、2.0、2.2。官网目前最新版本是2.4,1.8建议你不要考虑了,我曾经在别人的机器上用过一下,trigger还不能手动编写,反正我是用不惯,2.0目前是我正在使用的版本,2.2让我感觉比较high的亮点功能就是对虚拟机的监控。在我眼里2.0、2.2 、2.4这三个版本其实在使用上没啥太大的区别,安装方式也是一样的。

    安装ZABBIX

      这里先为大家显示一下,一个Zabbix Server所需要的安装包

    $yum search zabbix22 | awk -F":" '/zabbix22/&&!/pgsql|Matched|sqlite|proxy/{print $1}'
    zabbix22.x86_64 
    zabbix22-agent.x86_64 
    zabbix22-dbfiles-mysql.noarch 
    zabbix22-server.noarch 
    zabbix22-server-mysql.x86_64 
    zabbix22-web.noarch 
    zabbix22-web-mysql.noarch
    

    很多文档直接就装了,也不说这玩意都是什么东西,所以今天就说点废话,主要是针对新手向,老手可以绕行。以下只是简单的介绍,具体包里都包含什么文件,有兴趣的话,可以自己rpm -ql翻看,反正偶是没兴趣。

    zabbix22.x86_64 #zabbix主程序
    zabbix22-agent.x86_64 #zabbix客户端程序
    zabbix22-dbfiles-mysql.noarch #zabbix22 mysql数据库文件
    zabbix22-server.noarch #Server服务端程序
    zabbix22-server-mysql.x86_64 #Server连接mysql程序
    zabbix22-web.noarch #web前端php程序
    zabbix22-web-mysql.noarch #web前端php连接mysql数据库

    复制粘贴回车你懂的

    yum -y install $(yum search zabbix22 | awk -F":" '/zabbix22/&&!/pgsql|Matched|sqlite|proxy/{print $1}')
    

      这里说一下我理解的 zabbix 的结构,zabbix 分为 Server 端和 Agent 端(大家都知道的,不用你废话。-_-!!),Agent 负责采集监控数据传送到 Server 端,Server 端负责将采集的数据保存到数据库中,还有一个很多时候大家都忽略的部分,就是 zabbix 通过前端 WEB 页面调用 php,将监控数据值从数据库中提取出来并进行前端展示。所以有时候排查故障的一定要先确定故障点是在前端,还是在后端。学会缩小范围按步骤排查故障。

      以上安装我过滤掉了 zabbix 使用pgsql数据库的程序, sqlite 数据库程序和 proxy 程序。帮朋友排查 zabbix 问题的时候,发现好多都是装的 mysql 数据库,zabbix 装的是 pgsql 数据库连接程序,导致 zabbix 数据库怎么也连不上。所以在这里给大家提个醒,注意自己装的程序是否符合自己的环境。

      以上步骤完后所有需要创建的系统账号比如 mysql,zabbix服务的启动脚本,包括 httpd 关于 zabbix 访问的配置文件,都已经为你配置好了。你可以通过查看/etc/httpd/conf.d/zabbix.conf 文件找到前端页面访问的具体位置。(这就是偶稀饭yum的原因!!)

    启动数据库

    service mysqld start
    

    创建数据库

    mysql << EOF
    create database zabbix character set utf8;
    grant all on zabbix.* to zabbix@localhost identified by '123456';
    quit
    EOF
    

    提示:这里数据库一定要指定字符集,要不在前端历史操作是乱码,因为历史操作是保存在数据库里的。

    导入数据库

    mysql -uzabbix -p123456 zabbix < /usr/share/zabbix-mysql/schema.sql
    mysql -uzabbix -p123456 zabbix < /usr/share/zabbix-mysql/images.sql 
    mysql -uzabbix -p123456 zabbix < /usr/share/zabbix-mysql/data.sql
    

    提示:以上数据库一定要按照顺序导入

    配置zabbix_server访问数据库的账号和密码

    sed -i '/^DBName/s/=.*$/=zabbix/' /etc/zabbix_server.conf
    sed -i '/^# DBPassword/s/.*$/DBPassword=123456/' /etc/zabbix_server.conf
    

    修改php.ini

    sed -i 's/post_max_size = 8M/post_max_size = 32M/g' /etc/php.ini
    sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 50M/g' /etc/php.ini
    sed -i 's/;date.timezone =/date.timezone = Asia\/Shanghai/' /etc/php.ini
    sed -i 's/max_execution_time = 30/max_execution_time = 600/g' /etc/php.ini
    sed -i 's/max_input_time = 60/max_input_time = 600/g' /etc/php.ini
    sed -i 's/memory_limit = 128M/memory_limit = 256M/g' /etc/php.ini
    

    提示:我这里只是修改了 zabbix 初始化php配置时需要检测默认配置参数,大家可以根据自己实际情况调整 php.ini 参数

    简单的配置服务

    chkconfig --level 345 zabbix-server on
    chkconfig --level 345 zabbix-agent on
    setenforce 0
        service zabbix-server start
        service zabbix-agent start
    

    提示:不稀饭 selinux,所以我都关掉。

    登录

      现在可以通过http://ip/zabbix 来访问了,第一次会初始化一些配置,主要还是配置 php.ini 的参数和php访问数据库的账号和密码。基本上一路Next就ok了。

  • 相关阅读:
    086 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 03 面向对象基础总结 01 面向对象基础(类和对象)总结
    085 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 04 构造方法调用
    jQuery UI组件库Kendo UI使用技巧小分享
    Kendo UI ListView模板功能,让Web开发更轻松
    UI组件套包DevExpress ASP.NET Core v20.2新版亮点:全新的查询生成器
    Devexpress WinForms最新版开发.NET环境配置Visual Studo和SQL Server对应版本
    全新的桌面应用数据可视化呈现方式,Sankey Diagram控件你了解多少?
    java中的递归方法
    连接数据库查询 将查询结果写入exce文件中
    java连接mysql数据查询数据
  • 原文地址:https://www.cnblogs.com/itflycat/p/4284374.html
Copyright © 2011-2022 走看看