Linux监控平台介绍
常见开源监控软件php
- cacti、nagios、zabbix、smokeping、open-falcon等等,其中nagios、zabbix流行度高
- cacti、smokeping偏向于基础监控,成图很是漂亮,适合监控网络设备
- cacti、nagios、zabbix服务端监控中心,须要php环境支持(用Apache的php,用nginx的php均可以),其中zabbix和cacti都须要mysql做为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而能够成图
- open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件,值得研究
- 后续以介绍zabbix为主
zabbix监控介绍
- C/S架构,基于C++开发,监控中心支持web界面配置和管理
- 单台server节点(即一台server),理论上 能够支持上万台客户端
- 目前zabbix软件,最新版本3.4,官方文档:https://www.zabbix.com/manuals
- 5个组件
- zabbix-server 监控中心,接收客户端上报信息,负责配置、统计、操做数据
- 数据存储 存放数据,好比mysql
- web界面 也叫web UI,在web界面下操做配置是zabbix简单易用的主要缘由(若是没有web界面,就没法在浏览器上配置它)
- zabbix-proxy 可选组件,它能够代替zabbix-server的功能,减轻server的压力(当机器量不少的时候,可使用zabbix-proxy)
- zabbix-agent 客户端软件(每一台客户端都须要安装agent),负责采集各个监控服务或项目的数据,并上报

安装zabbix
- 官网下载地址https://www.zabbix.com/download
- 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 zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql
- 会连带安装httpd和php
- 若是mysql以前没有安装的话,须要根据lamp那一章的mysql安装方法安装mysql
- vim /etc/my.cnf //须要增长配置
character_set_server = utf8mysql
- 重启mysqld服务后,进入mysql命令行,建立zabbix库
- create database zabbix character set utf8;
- 再建立用户
- grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'aming-zabbix';
- 导入数据
- cd /usr/share/doc/zabbix-server-mysql-3.2.7
- gzip -d create.sql.gz
- mysql -uroot -pxxx zabbix < create.sql
- systemctl start httpd; systemctl enable httpd
- vim /etc/zabbix/zabbix_server.conf //修改或增长
DBHost=127.0.0.1 //在DBName=zabbix上面增长ios
DBPassword=aming-zabbix //在DBuser下面增长nginx
- systemctl start zabbix-server
- systemctl enable zabbix-server
- netstat -lntp |grep zabbix //查看监听端口
- 浏览器访问http://ip/zabbix/ web界面下面配置zabbix
- 用户名Admin 密码zabbix
- 进入后台第一件事情就是修改密码
准备工做
两台机器,一台做为服务端(监控中心),另一台做为它的客户端,均安装zabbix。web
首先访问官网下载地址,选择zabbix3.2版本centOS7 64位,点击download,找到以下rpm包,复制连接sql

两台机器上都下载rpm包数据库

安装rpm包vim

安装zabbix服务端
查看/etc/yum.repos.d/目录,有zabbix.repo浏览器

安装zabbix一些包服务器

- zabbix-agent ,客户端软件
- zabbix-get ,服务端用的一个工具,得到客户端某些监控项目的数据
- zabbix-server-mysql ,这个是服务端跟mysql打交道相关的组件
- zabbix-web ,web界面
- zabbix-web-mysql ,web和mysql相关组件
安装mysql,根据lamp那一章的mysql安装方法安装mysql,也能够yum安装
启动mysql服务

编辑mysql的配置文件,增长内容以下,保存退出


重启mysql

登陆mysql,建立zabbix库,建立用户,退出

解压create.sql.gz压缩包

将create.sql文件导入到zabbix库里去

启动zabbix服务

查看nginx服务是否启动,如有先关掉,而后启动httpd服务


httpd服务监听了80端口

对zabbix、http等服务设置开机启动,取消nginx开机启动

查看监听端口,但并无zabbix监听的端口

先检查zabbix的错误日志


编辑zabbix的配置文件,搜索DBHost,增长内容以下,保存退出



从新启动zabbix服务

查看监听的端口

配置web界面
打开浏览器,输入192.168.133.130访问

点击 Next step,会出现一个提示

编辑php的配置文件,搜索/timezone,设置php的timezone时区


重启httpd服务

刷新浏览器界面,变成OK了,继续点击Next step

配置数据库相关信息,点击Next step

定义zabbix server主机名,点击Next step

继续点Next step

安装成功

登陆zabbix

登陆进zabbix以后,首先须要去更改密码,选择 Administration ,而后选择 Users,选择 Change password 修改密码和选择语言(支持中文),点击update便可

刷新一下,界面变成中文了

退出去,而后用新密码登陆,就进入zabbix的web界面了
安装zabbix客户端
下载和安装yum源,只须要安装zabbix-agent这一个包

编辑zabbix配置文件,搜索/server,修改指定服务端IP,搜索/Hostname,修改为可识别的主机名,保存退出




启动zabbix服务,查看进程和监听端口

zabbix监控架构搭建完成。
忘记Admin密码如何作
- 进入mysql命令行,选择zabbix库
- mysql -uroot -p zabbix
- update users set passwd=md5(‘newpasswd’) where alias=‘Admin’;
- 这样就更改了Admin用户的密码
若是忘记zabbix(web界面)管理员密码,可经过zabbix服务器的数据库进行密码更改!
先进入到mysql命令行,选择zabbix库

查看users表

修改密码,查看表的状况

设置完成后在浏览器就可使用新密码登陆zabbix