本文共 3217 字,大约阅读时间需要 10 分钟。
常见开源监控软件
cacti、nagios、zabbix、smokeping、open-falcon等等 cacti、smokeping偏向于基础监控,成图非常漂亮 cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图 open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究 后续以介绍zabbix为主C/S架构,基于C++开发,监控中心支持web界面配置和管理
单server节点可以支持上万台客户端 最新版本3.4,官方文档https://www.zabbix.com/manuals 5个组件 zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操作数据 数据存储 存放数据,比如mysql web界面 也叫web UI,在web界面下操作配置是zabbix简单易用的主要原因zabbix-proxy 可选组件,它可以代替zabbix-server的功能,减轻server的压力 zabbix-agent 客户端软件,负责采集各个监控服务或项目的数据,并上报官网下载地址 www.zabbix.com/download
wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm两台机器都要装上然后开始安装rpm包rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm 然后开始yum安装zabbixyum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql 客户端只安装yum install -y zabbix-agent会连带安装httpd和php 如果mysql之前没有安装的话,需要根据lamp那一章的mysql安装方法安装mysql然后查看mysql是否启动,如果没有启动,将mysql启动起来。vim /etc/my.cnf //需要增加配置character_set_server = utf8(增加一个中文字符集,如果不加,在我们将web设置成中文时会出现显示错误)然后重启mysql重启mysqld服务后,进入mysql命令行,创建zabbix库,进入mysql库后首先定义字符集create database zabbix character set utf8;再创建用户grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by '19860127';然后退出导入原始数据。cd /usr/share/doc/zabbix-server-mysql-(后面需要用Tab键补全)[root@linletao-001 zabbix-server-mysql-3.2.11]# lsAUTHORS ChangeLog COPYING create.sql.gz NEWS README然后解压里面的create.sql.gz 这个压缩包gzip -d create.sql.gz然后生成以下文件AUTHORS ChangeLog COPYING create.sql NEWS README然后将create.sql导入zabbixmysql -uroot -pxxx zabbix < create.sql然后启动zabbix和httpd但是zabbix并没有监听端口,而程序还在进行
netstat -lnp |grep zabbix没有任何信息我们需要去排查一下,查看日志/var/log/zabbix/zabbix_server.logCan't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock提示不能通过套接字连接mysql。这时,我们要据需修改配置文件vim /etc/zabbix/zabbix_server.conf在里面增加以下的配置DBHost=127.0.0.1(这个要和我们前面在mysql的授权中的IP一致,在Option: DBName上面增加)DBPassword=aming-zabbix //在DBuser下面增加(在授权的时候填的密码)配置完成后从新重启zabbix,就会发现它同时启动了很多的子进程。也成功的监听了端口,10051tcp 0 0 0.0.0.0:10051 0.0.0.0: LISTEN 9116/zabbix_server tcp6 0 0 :::10051 ::: LISTEN 9116/zabbix_server然后配置web中心,在浏览器中输入IP地址,后面接/zabbix/
进入页面后点击下一步,我们发现它的时区没有配置成功,所以我们还要去再配置一下php.ini/etc/php.ini然后找到date.timezone,完成如下配置,记住,要将前面的;删掉。date.timezone = Asia/Shanghai定义完成后,重启httpd服务这样就将时区配置完成,并且显示ok,然后下一步,填写mysql相关的信息 这里需要在注意的是,数据口端口默认是3306,如果不是,要将端口填写上去。然后下一步,填写一个名字。最后显示然后登陆zabbix,账号为Admin,密码是zabbix,登陆完后首先要更改密码找到Administation,然后选择user,点击changepasswd,更改密码。下面的Language可以改语言,选择中文,然后点击updata,刷新,就可以显示中文了。Zabbix客户端安装
在客户端上也需要下载zabbix的yum源 wget repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm yum install -y zabbix-agent安装好以后去编辑配置文件vim /etc/zabbix/zabbix_agentd.conf这里我们需要指定服务端的ip,搜索server,将以前里面的server=127.0.0.1改为server=监控中心的ip还需要更写一个ServerActive=监控中心的ip。写这两的原因是一个是主动模式,一个是被动模式。这两个都要写。还有一个需要写的地方是,Hostname= 这个是写监控的主机名字,这个要写系统可以识别的名字。然后启动客户端systemctl start zabbix-agent他监听的端口为10050忘记Admin密码如何做
进入mysql命令行,选择zabbix库mysql -uroot -p zabbixupdate users set passwd=md5(‘新密码’) where alias=‘Admin’;转载于:https://blog.51cto.com/13067688/2120098