设为首页 收藏本站
查看: 915|回复: 0

[经验分享] Zabbix监控介绍&配置zabbix架构

[复制链接]

尚未签到

发表于 2019-1-17 14:15:32 | 显示全部楼层 |阅读模式
  [toc]
#

Linux监控平台介绍
  常见的有 cacti、nagios、zabbix、smokeping、open-falcon等等。
  cacti、smokeping偏向于基础监控,成图非常漂亮。
  cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,这几款监控软件均有web操作界面。
  nagios不用存储历史数据,注重服务或者监控项的状态。

zabbix优势:

  zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图,可以增加配置节点,增加具体的监控节点,可以配置报警阈值等,所以为什么如此流行其原因就在此,尤其是我们可以很方面的使用鼠标就可以完成一系列的操作,定义规则等。

  open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究。

二、 zabbix 监控介绍:

  C/S架构(被监控的server需要安装监控软件,既可以主动连接客户端,也可以被动的让客户端推送自己的状态),基于C++开发,监控中心支持web界面配置和管理。
  单server节点可以支持上万台客户端(可支持同时上万台的server监控,并发量高,如果超过一定的量,性能可能会降低,但是我们可以增加Proxy代理点来充当监控服务器来减轻压力)



  • 最新版本3.4,官方文档https://www.zabbix.com/manuals

5个组件


  •   [ ] zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据。

  •   [ ] 数据存储 存放数据,比如mysql。

  •   [ ] web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因。

  •   [ ] zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力。

  • [ ] zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报。

zabbix监控流程图


三、Zabbix监控安装与部署

3.1 下载所需的zabbix的yum源
  官方下载地址:
https://www.zabbix.com/download




下载yum扩展源并安装

[root@xavi ~]# wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
[root@xavi ~]# rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
查看

[root@xavi ~]# cat /etc/yum.repos.d/ 按两次tab键
CentOS7-Base-163.repo  CentOS-Debuginfo.repo  CentOS-Media.repo      CentOS-Vault.repo      epel-testing.repo
CentOS-CR.repo         CentOS-fasttrack.repo  CentOS-Sources.repo    epel.repo              zabbix.repo

  • 查看安装文件

[root@xavi ~]# cat /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - $basearch
baseurl=http://repo.zabbix.com/zabbix/3.2/rhel/7/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - $basearch
baseurl=http://repo.zabbix.com/non-supported/rhel/7/$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
安装相关安装包,会连带安装httpd和php

[root@xavi ~]# yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql
安装mysql(两种方法,①yum安装 ②编译mysql安装):

# yum install -y mysql mysql-server mysql-devel
# systemctl start mysqld
# ps aux | grep mysql //若未启动,可开启

mysql启动报错,查看日志

# systemctl start mysql 报错
# less /data/mysql/xavilinux.err 查看错误日志
# ls -l /data/mysql/ 查看MySQL下的文件权限
# chown -R mysql:mysql /data/mysql/
复制后再次启动
3.2 编辑mysql配置文件

[root@xavi ~]# vim /etc/my.cnf
character_set_server = utf8
如果不添加此值,后期zabbix的web界面改成中文后会出现问题。
重启mysqld服务

[root@xavi ~]# /etc/init.d/mysqld start
Starting MySQL... SUCCESS!
进入mysql命令行,创建zabbix库和用户
  (这个就类似于之前创建wordpress,discuz站点一样的,其实zabbix也是一个php写的web监控站点)

[root@xavi ~]# mysql -uroot -pxavilinux
mysql> create database zabbix character set utf8;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'xavi-zabbix';
Query OK, 0 rows affected (0.00 sec)
导入zabbix数据库

[root@xavi ~]# cd /usr/share/doc/zabbix-server-mysql-3.2.11/
[root@xavi zabbix-server-mysql-3.2.11]# ls
AUTHORS  ChangeLog  COPYING  create.sql.gz  NEWS  README
[root@xavi zabbix-server-mysql-3.2.11]# gzip -d create.sql.gz //解压
[root@xavi zabbix-server-mysql-3.2.11]# ls
AUTHORS  ChangeLog  COPYING  create.sql  NEWS  README
[root@xavi zabbix-server-mysql-3.2.11]# mysql -uroot -pxavilinux zabbix < create.sql
//导入数据库
Warning: Using a password on the command line interface can be insecure.
3.3 启动zabbix-server,和httpd服务
  如果之前有配置nginx,或者tomcat(配置了80端口)服务一定要先停掉。不然启动httpd会报错

[root@xavi ~]# systemctl start zabbix-server
[root@xavi ~]# systemctl start httpd
Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.
通过端口查找,发现被java(tomcat)占用了80端口

[root@xavi ~]# lsof -i:80
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    2594 root   49u  IPv6  26769      0t0  TCP *:http (LISTEN)
  关闭tomcat

[root@xavi ~]# /usr/local/tomcat/bin/shutdown.sh
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JRE_HOME:        /usr/local/jdk1.8
Using CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar
[root@xavi ~]# lsof -i:80
[root@xavi ~]#  systemctl start httpd


配置开机启动:

[root@xavi ~]# systemctl enable httpd
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[root@xavi ~]# systemctl enable zabbix-server
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-server.service to /usr/lib/systemd/system/zabbix-server.service.
3.4 查看zabbix的日志,发现虽启动zabbix但未连接mysql

[root@xavi ~]# ps aux |grep zabbix
zabbix    10131  0.0  0.1 258216  3472 ?        S    15:44   0:00 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
root      11441  0.0  0.0 112684   976 pts/0    S+   17:21   0:00 grep --color=auto zabbix
[root@xavi ~]# less /var/log/zabbix/zabbix_server.log


5. 重新编辑配置zabbix:

[root@xavi ~]# vim /etc/zabbix/zabbix_server.conf
//修改或增加
DBHost=127.0.0.1    //在DBName=zabbix上面增加
(在此写的是本地的mysql,但是线上的环境一般都有指定的mysql地址)
DBUser=zabbix
DBPassword=xavi-zabbix     //在DBuser下面增加,要和之前mysql配置的用户密码一致
再次重启zabbix

# systemctl restart zabbix-server
[root@xavi ~]# !ps
ps aux |grep zabbix
zabbix    11552  0.0  0.2 258396  4144 ?        S    17:30   0:00 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
zabbix    11554  0.0  0.1 258396  2492 ?        S    17:30   0:00 /usr/sbin/zabbix_server: configuration syncer [waiting 60 sec for processes]
zabbix    11555  0.0  0.1 258396  2696 ?        S    17:30   0:00 /usr/sbin/zabbix_server: db watchdog [synced alerts config in 0.012630 sec, idle 60 sec]
zabbix    11556  0.0  0.2 365328  5192 ?        S    17:30   0:00 /usr/sbin/zabbix_server: poller #1 [got 0 values in 0.000009 sec, idle 5 sec]
zabbix    11557  0.0  0.2 365328  5192 ?        S    17:30   0:00 /usr/sbin/zabbix_server: poller #2 [got 0 values in 0.000007 sec, idle 5 sec]
zabbix    11558  0.0  0.2 365328  5192 ?        S    17:30   0:00 /usr/sbin/zabbix_server: poller #3 [got 0 values in 0.000014 sec, idle 5 sec]
zabbix    11559  0.0  0.2 365328  5192 ?        S    17:30   0:00 /usr/sbin/zabbix_server: poller #4 [got 0 values in 0.000007 sec, idle 5 sec]
zabbix    11560  0.0  0.2 365328  5192 ?        S    17:30   0:00 /usr/sbin/zabbix_server: poller #5 [got 0 values in 0.000010 sec, idle 5 sec]
zabbix    11561  0.0  0.2 365328  5192 ?        S    17:30   0:00 /usr/sbin/zabbix_server: unreachable poller #1 [got 0 values in 0.000013 sec, idle 5 sec]
zabbix    11562  0.0  0.1 258396  3596 ?        S    17:30   0:00 /usr/sbin/zabbix_server: trapper #1 [processed data in 0.000000 sec, waiting for connection]
zabbix    11563  0.0  0.1 258396  3596 ?        S    17:30   0:00 /usr/sbin/zabbix_server: trapper #2 [processed data in 0.000000 sec, waiting for connection]
  我们会看到有很多的zabbix子进程。
  监听的端口为:10051


3.5 安装配置zabbix web界面
  在浏览器输入
http://192.168.72.130/zabbix/



第二页在 Check of pre-requisites如果发现错误就必须设置一下,提示php的timezone没有设置。

vim /etc/php.ini    //搜索timezone配置即可
date.timezone = Asia/Shanghai


重启一下,让配置生效:

systemctl restart httpd





3.6 第一次登入界面,初始用户名Admin 密码zabbix


修改原始密码




退出后,重新登入


四、zabbix客户端安装配置

4.1 下载安装

下载指定版本:

wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
安装zabbix的yum扩展源:

rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
client端仅仅只需要安装服务:
  yum install -y zabbix-agent

4.2 配置zabbix

[root@xavi-002 ~]# vim /etc/zabbix/zabbix_agentd.conf
//增加如下配置:
Server=127.0.0.1 修改为 Server=192.168.72.130 //定义监控服务端的ip(被动模式)
ServerActive=127.0.0.1 修改为 ServerActive=192.168.72.130 //定义监控服务端的ip(主动模式:客户端主动上报自己的状态给server端)
Hostname=Zabbix server修改为Hostname=xavi-002 //这是自定义的主机名,一个是让自己容易分别监控的是哪台主机,第二个是服务器可以识别


4.3 启动服务并查看zabbix进程以及端口

[root@xavi-002 ~]# vim /etc/zabbix/zabbix_agentd.conf
[root@xavi-002 ~]# systemctl start zabbix-agent
[root@xavi-002 ~]# ps aux |grep zabbix
zabbix     8617  0.0  0.1  82732  1304 ?        S    19:51   0:00 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf
zabbix     8618  0.0  0.1  82732  1320 ?        S    19:51   0:00 /usr/sbin/zabbix_agentd: collector [idle 1 sec]
zabbix     8619  0.0  0.1  82732  1860 ?        S    19:51   0:00 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]
zabbix     8620  0.0  0.1  82732  1860 ?        S    19:51   0:00 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]
zabbix     8621  0.0  0.1  82732  1860 ?        S    19:51   0:00 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]
zabbix     8622  0.0  0.2  82864  2240 ?        S    19:51   0:00 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]
root       8625  0.0  0.0 112664   972 pts/0    R+   19:51   0:00 grep --color=auto zabbix
[root@xavi-002 ~]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name   
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      1416/dnsmasq        
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      948/sshd            
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      941/cupsd           
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1415/master         
tcp        0      0 0.0.0.0:10050           0.0.0.0:*               LISTEN      8617/zabbix_agentd  
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::22                   :::*                    LISTEN      948/sshd            
tcp6       0      0 ::1:631                 :::*                    LISTEN      941/cupsd           
tcp6       0      0 ::1:25                  :::*                    LISTEN      1415/master         
tcp6       0      0 :::10050                :::*                    LISTEN      8617/zabbix_agentd  
五、Zabbix忘记Admin密码如何做






  • 这样就可以登入新密码了





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-664495-1-1.html 上篇帖子: Zabbix安装故障总结 下篇帖子: 优化zabbix报警信息
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表