前言:zabbix是一款很好用的监控工具,相比nagios(也是监控工具的一种)而言,zabbix提供了强大的视图界面,操作简单,功能强大,只需在页面配置即可,让你用的开心,回家放心。

zabbix监控的原理:

zabbix agent需要安装到被监控的主机上,它负责定期收集本服务器的各项数据,列如:cpu的使用率、磁盘的使用率、内存的使用率、web应用服务日志以及web程序是否在正常运行等,

并将这些收集到的数据发送到zabbix server端,zabbix server 将收集到的数据存储在数据库中,zabbix web 再将数据库中的数据信息以图片或绘画的形式展现在页面上。



zabbix监控一般分为两种模式:主动模式和被动模式

主动模式:zabbix-agent客户端主动将本服务器的数据收集起来发送到zabbix-server服务器

被动模式:zabbix-server服务器去请求zabbix-agent客户端,zabbix-agent客户端在根据zabbix-server服务器请求的信息来收集相应要求的数据,在

把数据传回zabbix-server服务器。

由此来看,主动模式更被大家喜欢,谁喜欢被动是吧(爱情方面也是,哈哈哈哈)


言归正传,实际生产中,大部分的监控都是使用主动模式,这样可以减小zabbix-server服务端的压力,也少部分需要使用被动模式监控,例如mysql数据库的主从模式

就是用被动模式来监控的,主备结合动起来才爽嘛,你懂得(开车了,大家跟上)

---------------------------------------------------------------------------------------------------------------

环境

192.168.1.162    zabbix-server 服务端

192.168.1.174    zabbix-agent  客户端

----------------------------------------------------------------------------------------------------------

zabbix-server 服务端上做

一:侧方位停车

1、安装zabbix-server以及相关软件包

zabbix-release-3.5-1.el7.noarch.rpm
zabbix-get-3.5-1.el7.x86_64.rpm
zabbix-server-3.5-1.el7.x86_64.rpm
zabbix-server-mysql-3.5-1.el7.x86_64 .rpm
zabbix-web-3.5-1.el7.noarch.rpm
zabbix-web-mysql-3.5-1.el7.noarch.rpm
php-bcmath-5.4.16-46.1.el7.x86_64.rpm
php-mbstring-5.4.16-46.el7.x86_64.rpm

官方zabbix依赖包地址及相关php软件包地址

http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/

https://pkgs.org/download/php-bcmath

https://pkgs.org/download/php-mbstring

根据你自己的服务器系统选择相应的软件包,我的是centos7的系统

将这些包下载之后放到zabbix-server服务器的/root下面

yum install -y /root/*.rpm   httpd     说明:rpm包  httpd  mysql  php 都是安装在zabbix-server服务端的

如果你yum install报错有问题,请你看清楚,我上面一共有8个rpm包,是不是你少下载了一个,而且

zabbix-release-3.5-1.el7.noarch.rpm 这个软件包尤其重要,其他包都是依赖这个包才能下载

---------------------------------------------------------------------------------------------------------------------------

二、定点停车2、  非编译安装mysql数据库。

这里的mysql用非编译安装的就好,不需要编译安装
官网下载mysql的非编译安装包
https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz
不作为正式的数据库用,所以版本没有要求,5.6或者5.7都可以

yum install -y ncurses-devel libaio-devel 安装依赖包
ls /root
mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz
cd /root
tar -zxvf mysql-5.6.41-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.6.41 /usr/local/mysql

创建mysql用户, 组及目录
groupadd mysql
useradd -r -g mysql mysql

创建数据目录
mkdir -p /data/mysql/data

初始化数据库
cd /usr/local/mysql
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data

配置mysql服务开机自动启动
chkconfig mysqld on

启动mysql服务
service mysqld start

配置mysql登录命令的环境变量
vim /etc/profile
export PATH=$PATH:/usr/local/mysql/bin 在文件的最后一行添加

使环境变量立即生效
source /etc/profile

假如你一台服务器有多个环境变量需要配置,如下举例配置即可

export PATH=$A/bin:$B/bin:$C/bin:$PATH

配置zabbix链接数据库的信息(你在页面上配置的监控等,都是以数据的形式存在数据库里面的)
vim /etc/zabbix/zabbix_server.conf

DBHost=192.168.1.162                                            (数据库IP地址)
DBName=zabbix                                                       (数据库名)
DBUser=zbxuser                                              (登录数据库的用户名)
DBPassword=redhat                                           (登录数据库的密码)
DBSocket=/var/lib/mysql/mysql.sock                (数据库的sock文件的路径)

访问mysql数据库,创建zabbix的数据库信息
mysql   直接回车即可 (5.6版本免编译安装的mysql本地登录不需要用户和密码,5.7不太清楚)
mysql> CREATE DATABASE zabbix;              (创建zabbix库)
mysql> GRANT ALL ON zabbix.* TO zbxuser@'192.168.1.%' IDENTIFIED BY 'redhat';     (给zabbix库创建登录用户和密码并授权)
mysql> FLUSH PRIVILEGES;    (刷新一下,使权限立即生效)

-------------------------------------------------------------------------------------------------------------------

三、直角拐弯

3、导入zabbix基本配置数据到zabbix数据库并启动zabbix-server的服务。
cp /usr/share/doc/zabbix-server-mysql-3.5/create.sql.gz /tmp/
cd /tmp
gzip -d create.sql.gz  解压数据文件
ls
create.sql

mysql
mysql> USE zabbix;                   进入到zabbix库
mysql> source /tmp/create.sql;   将sql文件导入数据库

vim /etc/php.ini
:/time_zone          找到这一行
Asia/Shanghai

systemctl start zabbix-server.service 或者  service zabbix-server start  看你用的什么系统
systemctl start httpd.service             或者  service httpd start              看你用的什么系统

至此我们的zabbix-server服务端安装完成了

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

四、s弯道

4、zabbix-agent客户端安装

zabbix-sender-3.5-1.el6.x86_64.rpm
zabbix-agent-3.5-1.el6.x86_64.rpm

http://repo.zabbix.com/zabbix/3.5/rhel/7/x86_64/

将这两个包下载放到zabbix-agent服务器的/root/

yum install -y /root/*.rpm

vim /etc/zabbix/zabbix_agentd.conf    修改配置文件

Server = 192.168.1.162        (zabbix-server服务器的IP地址)
ServerActive=192.168.1.162 (zabbix-server服务器的IP地址)
Hostname=192.168.1.174    (zabbix-agent客户端的IP地址)
其他的参数都用默认的就好了

service zabbix-agent restart

至此zabbix-agent客户端安装完成

-------------------------------------------------------------------------------------

小插曲

我们现在可以手动测试下zabbix-server能否检测到zabbix-agent的数据

在zabbix-server服务器(192.168.1.162)上操作

[root@zabbix-server ~]# zabbix_get -s 192.168.1.174 -k system.cpu.load[all,avg1]
0.050000

说明:

zabbix_get 是手动测试的命令

-s            目标服务器地址(也就是zabbix-agent客户端的IP地址)

-K           监控的项目和键值  item[xx,xx]

我们可以看到192.168.1.174服务器cpu的使用率为5%,说明zabbix服务端可以检测到zabbix客户端的数据了

如果报错可以手动测试下端口是否开放

yum install -y telnet

telnet 192.168.1.174 10050 (10050是zabbix-agent客户端的默认端口)

注意:阿里云的服务器需要到管理控制台的安全组开放10050端口,顺便把10051端口也开放了吧

10051端口是zabbix-server服务端默认的端口

-------------------------------------------------------------------------------------

五、倒车入库

最难也是最繁琐的最后一个项目,能不能过就看它了

(以后的主导权在谁手上就看这最后一部了,进不去或者进错位置就尴尬了,第一次嘛,翻车也在所难免,老司机在这,包你满意,哈哈,跟上跟上)

192.168.1.162/zabbix

鼠标 点击  next setp(下一步的意思)

鼠标 点击  next setp

页面安装步骤省略了,很简单的

在zabbix服务器的图形化界面上的右上角 可以选择profile(基本资料)改为中文版的

手动添加主机

配置自动发现

我们可以看到自动发现了zabbix-agent客户端服务器192.168.1.174

至于发现主机192.168.1.174之后需要监听服务器的哪些数据,请看另外一篇吧(有了第一次之后,后面还不是你想怎么样就怎么样,嘿嘿)

zabbix安装和使用的更多相关文章

  1. CentOS下Zabbix安装部署及汉化

    搭建环境:Centos6.5_x86_64,Zabbix2.4.5,epel 源 服务端: 1.安装开发软件包yum -y groupinstall "Development Tools&q ...

  2. zabbix安装unixODBC配置完之后报错

    zabbix安装unixODBC配置完之后报错 libmysqlclient_16 not defined in file libmysqlclient_r.so.16 分析 我没有使用centos6 ...

  3. zabbix安装全过程

    在了解<zabbix硬件.软件需求>之后,在你心里应该有备选的机器.今天开始安装zabbix.zabbix需要LNMP或者LAMP环境.环境的搭建不在本章范围内. LNMP环境配置Linu ...

  4. Zabbix安装图解教程

    说明: 操作系统:CentOS IP地址:192.168.21.127 Web环境:Nginx+MySQL+PHP zabbix版本:Zabbix 2.2 LTS 备注:Linux下安装zabbix需 ...

  5. 详解zabbix安装部署(Server端篇)

    原文:http://blog.chinaunix.net/uid-25266990-id-3380929.html Linux下常用的系统监控软件有Nagios.Cacti.Zabbix.Monit等 ...

  6. Zabbix 安装及微信短信提醒

    Zabbix简介 Zabbix 近几年得到了各大互联网公司的认可,当然第一点归功与它强大的监控功能,第二点免费开源也得到了广大用户的青睐.Zabbix 能将操作系统中的绝大部分指标进行监控,比如(CP ...

  7. centos6.5下Zabbix系列之Zabbix安装搭建及汉化

    最近在研究zabbix,在整理完成之后就有了写一下总结博客的想法,在我研究zabbix的时候给我很大帮助的是it你好,博客地址http://itnihao.blog.51cto.com/他做的zabb ...

  8. zabbix安装及配置(rpm包安装mysql,php,apache,zabbix)

    zabbix安装及配置 一.安装mysql.php.apache.zabbix 安装环境: 操作系统:rhel6.3-x86-64  mysql:5.6.23   --官网下载rpm包安装php:5. ...

  9. centos6.5下Zabbix系列之Zabbix安装搭建及汉化 (转)

    最近在研究zabbix,在整理完成之后就有了写一下总结博客的想法,在我研究zabbix的时候给我很大帮助的是it你好,博客地址 http://itnihao.blog.51cto.com/他做的zab ...

  10. zabbix安装配置

    实验环境 主机名 操作系统版本 IP地址 安装软件 console CentOS 7.0 114.55.29.246 Httpd.Nginx.MySQL.Zabbix log1 CentOS 7.0 ...

随机推荐

  1. 将Eclipse中文注释字体变大方法

    今天下了最新的eclipse玩,结果发现注释变得灰常小,差点看瞎哥24K氪金狗眼 于是在网上找了找解决方法,结果都不对 最后自己试出来了... 方法:  Window --> Preferenc ...

  2. 第一次作业:C++ 函数重载

    函数重载 函数重载是在C语言的学习中未涉及的新概念.我们在编程时经常会遇到这样一个问题:我们编写完一个函数准备准备调用时,一旦需要传入不同的数据类型的参数时,一个函数无法实现,我们又必须重写另一个或者 ...

  3. 解决ubuntu的Idea启动No JDK found. Please validate either IDEA_JDK, JDK_HOME or JAVA_HOME environment variable points to valid JDK installation.

    直接在idea安装目录下运行idea.sh可以正常启动,但是使用ubuntu的dash搜索出来的idea报错,No JDK found. Please validate either IDEA_JDK ...

  4. [转载] iptables 防火墙设置

    http://hongwei.im/iptables-setting-for-ubuntu-1304/ Iptables是一个防火墙,所有的Ubuntu官方发行版(Ubuntu,Kubuntu,Xub ...

  5. TensorFlow指定使用GPU 多块gpu

    持续监控GPU使用情况命令: $ watch -n 10 nvidia-smi1一.指定使用某个显卡如果机器中有多块GPU,tensorflow会默认吃掉所有能用的显存, 如果实验室多人公用一台服务器 ...

  6. Navicat for MySQL 使用SSH方式链接远程数据库

    第一步:ssh部分: 端口号:22 用户名为:在xshell中用来登录服务器的账号密码 第二步: 端口:3306 账号密码:在MySQL中的登录账号密码

  7. Python--day40--主线程和子线程代码讲解

    1,最简单的线程例子: 2,多线程并发: import time from threading import Thread #多线程并发 def func(n): time.sleep(1) prin ...

  8. 慎用curl测网站速度

    curl的计时功能也许不够准确. curl -s -o /dev/null -w %{time_total} g.cn 耗时(秒) 0.1350.1340.1350.1350.1340.132 ab ...

  9. vue 使用webpack打包后路径报错以及 alias 的使用

    一.vue 使用webpack打包后路径报错(两步解决) 1. config文件夹 ==> index.js ==> 把assetsPublicPath的 '/ '改为 './' 2. b ...

  10. Linux 内核 usb_control_msg 接口

    usb_control_msg 函数就像 usb_bulk_msg 函数, 除了它允许一个驱动发送和结束 USB 控制信息: int usb_control_msg(struct usb_device ...