博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux监控平台搭建(Linux监控介绍、zabbix介绍、安装zabbix、忘记Admin密码)
阅读量:6634 次
发布时间:2019-06-25

本文共 10412 字,大约阅读时间需要 34 分钟。

  hot3.png

Linux监控平台介绍

常见开源监控软件:cacti、nagios、zabbix、smokeping、open-falcon等

  • cacti、smokeping偏向于基础监控,成图非常漂亮
  • cacti、nagios、zabbix服务端监控中心,需要php环境支持,其中zabbix和cacti都需要mysql作为数据存储,nagios不用存储历史数据,注重服务或者监控项的状态,zabbix会获取服务或者监控项目的数据,会把数据记录到数据库里,从而可以成图
  • open-falcon为小米公司开发,开源后受到诸多大公司和运维工程师的追捧,适合大企业,滴滴、360、新浪微博、京东等大公司在使用这款监控软件

zabbix监控介绍

Zabbix 是一个高度集成的网络监控解决方案,可以提供 企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收费的技术支持赢利。

Zabbix 通过 C/S 模式采集数据,通过 B/S 模式在 web 端展示和配置:

  • 被监控端: 主机通过安装 agent 方式采集数据,网络设备通过 SNMP 方式采集数据
  • Server 端: 通过收集 SNMP 和 agent 发送的数据,写入数据库再通过 php+apache 在 web 前端展示。

Zabbix 运行条件:

  • Server: Zabbix Server 需 运 行在 LAMP/LNMP,对硬件要求低。
  • Agent: 目前已有的 agent 基本支持市面常见的 OS,包含 Linux、HPUX、Solaris、Sun、windows。
  • SNMP: 支持各类常见的网络设备。

监控过程逻辑如图示:

监控流程图:

安装zabbix

准备工作,两台机器一个做服务端,另外一个做客户端;

yolks3服务端 :192.168.248.129 yolks2客户端 :192.168.248.130

1.在/usr/local/src/目录下载zabbix包

wget https://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

2.rpm安装:获得yum源

rpm -ivh zabbix-release-3.2-1.el7.noarch.rpm

3.yum安装

yum install -y zabbix-agent zabbix-get zabbix-server-mysql zabbix-web zabbix-web-mysql

4.设置字符集

编辑配置文件/etc/my.cnf 增加配置

character_set_server = utf8

如下图所示:

5.重启mysql数据库并且登录mysql创建zabbix数据库

创建数据库zabbix并且设定编码格式

create database zabbix character set utf8;

创建用户

grant all on zabbix.* to 'zabbix'@'127.0.0.1' identified by 'yolks-zabbix';

退出

quit

6.进入zabbix目录

cd /usr/share/doc/zabbix-server-mysql-3.2.11/

7.解压出creat.sql并且导入到zabbix数据库中

解压:

gzip -d create.sql.gz

导入zabbix数据库

mysql -uroot -p'mysql123' zabbix < create.sql

8.启动zabbix服务

systemctl start zabbix-server

9.检查80端口是否关闭

如果开启则关闭,比如nginx

/etc/init.d/nginx stop

否则直接启动httpd服务

systemctl start httpd

查看80端口

netstat -lntp |grep 80tcp6       0      0 :::80                   :::*                    LISTEN      1824/httpd

10.设置httpd和zabbix开机启动

systemctl enable httpd #设置httpd开机自启systemctl enable zabbix-server #设置zabbix-server开机自启systemctl disable nginx #禁用chkconfig nginx off #关闭自启

11.检查zabbix进程及端口号,此处我们查看发现有点小问题

查看进程

ps aux|grep zabbixzabbix     1779  0.0  0.1 254628  3496 ?        S    22:00   0:00 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.confroot       1946  0.0  0.0 112720   984 pts/0    R+   22:10   0:00 grep --color=auto zabbix

查看端口

netstat -lntp |grep zabbiz

端口没有,查看日志:/var/log/zabbix/zabbix_server.log

通过错误显示不能正确连接mysql,我们修改配置文件:/etc/zabbix/zabbix_server.conf

检查下面配置及参数是否正确

ps:配置中的host需要和授权mysql账户时的host一致

然后重启zabbix,查看进程及端口号10051:

[root@yolks3 zabbix-server-mysql-3.2.11]# netstat -lntp |grep zabbixtcp        0      0 0.0.0.0:10051           0.0.0.0:*               LISTEN      1971/zabbix_server  tcp6       0      0 :::10051                :::*                    LISTEN      1971/zabbix_server  [root@yolks3 zabbix-server-mysql-3.2.11]# ps aux|grep zabbixzabbix     1971  0.5  0.2 254808  4180 ?        S    22:25   0:00 /usr/sbin/zabbix_server -c /etc/zabbix/zabbix_server.confzabbix     1974  0.0  0.1 254808  2512 ?        S    22:25   0:00 /usr/sbin/zabbix_server: configuration syncer [waiting 60 sec for processes]zabbix     1975  0.0  0.1 254808  2728 ?        S    22:25   0:00 /usr/sbin/zabbix_server: db watchdog [synced alerts config in 0.041999 sec, idle 60 sec]zabbix     1976  0.1  0.2 361748  5252 ?        S    22:25   0:00 /usr/sbin/zabbix_server: poller #1 [got 0 values in 0.000005 sec, idle 5 sec]zabbix     1977  0.1  0.2 361748  5252 ?        S    22:25   0:00 /usr/sbin/zabbix_server: poller #2 [got 0 values in 0.000007 sec, idle 5 sec]zabbix     1978  0.1  0.2 361748  5252 ?        S    22:25   0:00 /usr/sbin/zabbix_server: poller #3 [got 0 values in 0.000007 sec, idle 5 sec]zabbix     1979  0.1  0.2 361748  5252 ?        S    22:25   0:00 /usr/sbin/zabbix_server: poller #4 [got 0 values in 0.000006 sec, idle 5 sec]zabbix     1980  0.1  0.2 361748  5252 ?        S    22:25   0:00 /usr/sbin/zabbix_server: poller #5 [got 0 values in 0.000007 sec, idle 5 sec]zabbix     1981  0.1  0.2 361748  5252 ?        S    22:25   0:00 /usr/sbin/zabbix_server: unreachable poller #1 [got 0 values in 0.000005 sec, idle 5 sec]zabbix     1982  0.0  0.1 254808  3620 ?        S    22:25   0:00 /usr/sbin/zabbix_server: trapper #1 [processed data in 0.000000 sec, waiting for connection]zabbix     1983  0.0  0.1 254808  3620 ?        S    22:25   0:00 /usr/sbin/zabbix_server: trapper #2 [processed data in 0.000000 sec, waiting for connection]zabbix     1984  0.0  0.1 254808  3620 ?        S    22:25   0:00 /usr/sbin/zabbix_server: trapper #3 [processed data in 0.000000 sec, waiting for connection]zabbix     1985  0.0  0.1 254808  3620 ?        S    22:25   0:00 /usr/sbin/zabbix_server: trapper #4 [processed data in 0.000000 sec, waiting for connection]zabbix     1986  0.0  0.1 254808  3620 ?        S    22:25   0:00 /usr/sbin/zabbix_server: trapper #5 [processed data in 0.000000 sec, waiting for connection]zabbix     1987  0.0  0.1 257384  2684 ?        S    22:25   0:00 /usr/sbin/zabbix_server: icmp pinger #1 [got 0 values in 0.000007 sec, idle 5 sec]zabbix     1988  0.0  0.1 254808  2732 ?        S    22:25   0:00 /usr/sbin/zabbix_server: alerter [sent alerts: 0 success, 0 fail in 0.001175 sec, idle 30 sec]zabbix     1989  0.0  0.1 254808  2508 ?        S    22:25   0:00 /usr/sbin/zabbix_server: housekeeper [startup idle for 30 minutes]zabbix     1990  0.0  0.1 254888  2992 ?        S    22:25   0:00 /usr/sbin/zabbix_server: timer #1 [processed 0 triggers, 0 events in 0.000107 sec, 0 maintenances in 0.002763 sec, idle 30 sec]zabbix     1991  0.0  0.1 254808  2900 ?        S    22:25   0:00 /usr/sbin/zabbix_server: http poller #1 [got 0 values in 0.001031 sec, idle 5 sec]zabbix     1998  0.1  0.2 359276  5192 ?        S    22:25   0:00 /usr/sbin/zabbix_server: discoverer #1 [processed 0 rules in 0.001209 sec, idle 60 sec]zabbix     1999  0.0  0.1 254808  2888 ?        S    22:25   0:00 /usr/sbin/zabbix_server: history syncer #1 [synced 0 items in 0.000002 sec, idle 1 sec]zabbix     2001  0.0  0.1 254808  2888 ?        S    22:25   0:00 /usr/sbin/zabbix_server: history syncer #2 [synced 0 items in 0.000002 sec, idle 1 sec]zabbix     2002  0.0  0.1 254808  2888 ?        S    22:25   0:00 /usr/sbin/zabbix_server: history syncer #3 [synced 0 items in 0.000001 sec, idle 1 sec]zabbix     2005  0.0  0.1 254808  2888 ?        S    22:25   0:00 /usr/sbin/zabbix_server: history syncer #4 [synced 0 items in 0.000002 sec, idle 1 sec]zabbix     2006  0.0  0.2 254808  3820 ?        S    22:25   0:00 /usr/sbin/zabbix_server: escalator #1 [processed 0 escalations in 0.001439 sec, idle 3 sec]zabbix     2009  0.0  0.2 254808  3820 ?        S    22:25   0:00 /usr/sbin/zabbix_server: proxy poller #1 [exchanged data with 0 proxies in 0.000005 sec, idle 5 sec]zabbix     2010  0.0  0.1 254808  2656 ?        S    22:25   0:00 /usr/sbin/zabbix_server: self-monitoring [processed data in 0.000010 sec, idle 1 sec]zabbix     2011  0.0  0.1 254808  2876 ?        S    22:25   0:00 /usr/sbin/zabbix_server: task manager [processed 0 task(s) in 0.000510 sec, idle 5 sec]root       2024  0.0  0.0 112720   984 pts/0    R+   22:26   0:00 grep --color=auto zabbix

12.配置web端

windows浏览器输入服务器ip,看到如下图所示界面

点击下一步,检查看有没有fail选项:

提示没有设置时区,修改php配置文件/etc/php.ini,搜索timezone

date.timezone = Asia/Shanghai

如下图所示:

然后重新启动httpd

systemctl restart httpd

再次刷新windows浏览器,已经ok,点击下一步:

进行配置mysql数据库,填写对应信息,点击下一步:

填写name,即主机名,自定义填写即可,下一步:

显示全部配置信息,下一步:

提示成功安装,点击finish

跳转登录界面,可以登录了:使用默认账户密码:admin/zabbix

默认密码不太安全,我们去修改密码

点击admin

点击change password

设置新密码并且更改语言为中文,点击update按钮

修改完刷新页面,即可看到界面已经修改为中文

13.配置客户端

同步骤1,下载zabbix包,rpm命令安装

1)yum安装客户端

yum install -y zabbix-agent

2)修改客户端配置文件:/etc/zabbix/zabbix_agentd.conf

  • Server=127.0.0.1修改为Server=192.168.248.130 //定义服务端的ip(被动模式)
  • ServerActive=127.0.0.1修改为ServerActive=192.168.248.130 //定义服务端的ip(主动模式)
  • Hostname=Zabbix server修改为Hostname=yolks //这是自定义的主机名,一会还需要在web界面下设置同样的主机名

3)启动客户端zabbix

systemctl start zabbix-agent

4)检查服务和端口号

[root@yolks2 src]# netstat -lntp|grep nginxtcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      830/nginx: master p tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      830/nginx: master p[root@yolks2 src]# ps aux |grep zabbixzabbix     1510  0.0  0.0  80704  1288 ?        S    23:04   0:00 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.confzabbix     1511  0.0  0.0  80704  1332 ?        S    23:04   0:00 /usr/sbin/zabbix_agentd: collector [idle 1 sec]zabbix     1512  0.0  0.0  80704  1848 ?        S    23:04   0:00 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection]zabbix     1513  0.0  0.0  80704  1848 ?        S    23:04   0:00 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection]zabbix     1514  0.0  0.0  80704  1848 ?        S    23:04   0:00 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection]zabbix     1515  0.0  0.1  80836  2220 ?        S    23:04   0:00 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec]root       1517  0.0  0.0 112720   984 pts/0    R+   23:04   0:00 grep --color=auto zabbix

忘记Admin密码如何做

进入服务端mysql的zabbix库,查看users表

mysql> select * from users;+--------+-------+--------+---------------+----------------------------------+-----+-----------+------------+-------+---------+------+---------+----------------+------------+---------------+---------------+| userid | alias | name   | surname       | passwd                           | url | autologin | autologout | lang  | refresh | type | theme   | attempt_failed | attempt_ip | attempt_clock | rows_per_page |+--------+-------+--------+---------------+----------------------------------+-----+-----------+------------+-------+---------+------+---------+----------------+------------+---------------+---------------+|      1 | Admin | Zabbix | Administrator | 41a39905a68d2a32fbe318500acd205c |     |         1 |          0 | zh_CN |      30 |    3 | default |              0 |            |             0 |            50 ||      2 | guest |        |               | d41d8cd98f00b204e9800998ecf8427e |     |         0 |        900 | en_GB |      30 |    1 | default |              0 |            |             0 |            50 |+--------+-------+--------+---------------+----------------------------------+-----+-----------+------------+-------+---------+------+---------+----------------+------------+---------------+---------------+2 rows in set (0.00 sec)

修改密码使用update语句修改即可

update users set passwd = md5('newpasswd') where alias = 'Admin';

转载于:https://my.oschina.net/yolks/blog/2046448

你可能感兴趣的文章
T-SQL操作表结构
查看>>
假期总结四
查看>>
Qt编写安防视频监控系统7-全屏切换
查看>>
java封装小实例
查看>>
[NOI 2018] 归程
查看>>
[CF845G]Shortest Path Problem?
查看>>
Angularjs Scope 原型链
查看>>
Ubuntu 使用163镜像(12.10)
查看>>
模型层
查看>>
MySQL数据库的查询缓冲机制
查看>>
fputcsv 和 fgetcsv
查看>>
JavaScript
查看>>
工厂模式和抽象工厂模式区别
查看>>
学习Java第一卷--态度的转变
查看>>
集合框架2
查看>>
登录服务器windows2008出现:远程桌面服务当前正忙,因此无法完成您尝试执行的任务。请在几分钟后重试。其他用户应该仍然能够登录...
查看>>
多维数组时间排序
查看>>
CVS && HTML && XML && JSON
查看>>
js如何判断客户端是iOS还是Android等移动终端
查看>>
SSM框架中使用文件上传的示例
查看>>