Linux 之 zabbix 安装配置及应用

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDS Agent(兼容OpenClaw),2核4GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介:

 Linux 之 zabbix 安装配置及应用

2016-12-30 11:39:11

标签:Linux zabbix 安装

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://20151213start.blog.51cto.com/9472657/1887603

Zabbix简介:

1.基于web的开源软件,开源监控系统状态也可以监控网络设备。

2.和nagios不同的是zabbix会把获取的数据保存在数据库中,所以zabbix需要有数据库支持 

3.Zabbix还可以自动发现主机和网络设备

4.支持邮件和短信告警

5.Zabbix大多配置都可以在web界面配置完成。

6.Zabbix cacti nagios 都是基于php 写出来的网站程序,所以要想运用这些软件,需要基于lamp 或lnmp(yum安装他们不支持nginx的配置文件而lamp 安装会黙认在apache 的配置文件下生成一个子配置文件,可以通个IP 直接来访问他们) 来使用。

官网http://www.zabbix.com/ 


安装Zabbix :

rpm -ivh http://www.lishiming.net/data/attachment/forum/month_1211/epel-release-6-7.noarch.rpm #安装yum 源epel。楼主的是LAMP 环境。 这一步操作省了,下一步操作也省了。


安装rpm包的lamp环境 yum install -y  httpd mysql mysql-libs php php-mysql mysql-server php-bcmath php-gd php-mbstring



服务端Zabbix 安装:

客户端也要安装zabbix20-agent,版本要保持一致。


[root@OBird ~]# yum install  zabbix20 zabbix20-agent zabbix20-server  zabbix20-server-mysql zabbix20-web zabbix20-web-mysql net-snmp-devel


[root@OBird ~]# /etc/init.d/zabbix-server start; /etc/init.d/zabbix-agent start

Starting Zabbix server:                                    [  OK  ]

Starting Zabbix agent:                                     [  OK  ]


[root@OBird ~]# netstat -lnp #查看端口有10050 10051,楼主发现10051 zabbix-server没有启来


[root@OBird ~]# less /var/log/zabbix/zabbix_server.log  #查看zabbix 日志,发现是数据库问题

 

wKiom1hkoTXy7MiyAAO5ZCfRJ5k254.jpg

'/var/lib/mysql/mysql.sock' (2)

  4510:20161229:102804.301 Database is down. Reconnecting in 10 seconds.

  4510:20161229:102814.302 [Z3001] connection to database 'zabbix' failed: [2002] Can't connect to local MySQL server through socket 


[root@OBird ~]# /etc/init.d/httpd start; /etc/init.d/mysqld start  #启动httpd & mysqld

Starting httpd:                                            [  OK  ]

Starting mysqld:                                           [  OK  ]


[root@OBird ~]# mysql -uroot -pzaq12wsx #进入数据库

mysql> create database zabbix;

ERROR 2006 (HY000): MySQL server has gone away

No connection. Trying to reconnect...

Connection id:    43

Current database: *** NONE ***


Query OK, 1 row affected (0.00 sec)


mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| cacti              |

| discuz             |

| mysql              |

| test               |

zabbix             |

+--------------------+

6 rows in set (0.05 sec)


mysql> show variables like '%char%';  #查看实例字符集

ERROR 2006 (HY000): MySQL server has gone away

No connection. Trying to reconnect...

Connection id:    55

Current database: zabbix


+--------------------------+----------------------------+

| Variable_name            | Value                      |

+--------------------------+----------------------------+

character_set_client     | latin1                     |

| character_set_connection | latin1                     |

| character_set_database   | latin1                     |

| character_set_filesystem | binary                     |

| character_set_results    | latin1                     |

| character_set_server     | latin1                     |

| character_set_system     | utf8                       |

| character_sets_dir       | /usr/share/mysql/charsets/ |

+--------------------------+----------------------------+

8 rows in set (0.00 sec)


mysql> SET character_set_client = utf8 ;更改实例的字符集,不知道有没有问题,先这样做了再说

ERROR 2006 (HY000): MySQL server has gone away

No connection. Trying to reconnect...

Connection id:    13

Current database: *** NONE ***


Query OK, 0 rows affected (0.00 sec)


mysql> SET NAMES 'utf8';

ERROR 2006 (HY000): MySQL server has gone away

No connection. Trying to reconnect...

Connection id:    8

Current database: *** NONE ***


Query OK, 0 rows affected (0.00 sec)


mysql> show variables like '%char%';#再次查看

+--------------------------+----------------------------+

| Variable_name            | Value                      |

+--------------------------+----------------------------+

character_set_client     | utf8                       |

| character_set_connection | utf8                       |

| character_set_database   | latin1                     |

| character_set_filesystem | binary                     |

| character_set_results    | utf8                       |

| character_set_server     | latin1                     |

| character_set_system     | utf8                       |

| character_sets_dir       | /usr/share/mysql/charsets/ |

+--------------------------+----------------------------+

8 rows in set (0.00 sec)

 

导入三个数据库:


[root@OBird ~]# mysql -uroot -pzaq12wsx zabbix < /usr/share/zabbix-mysql/schema.sql

[root@OBird ~]# mysql -uroot -pzaq12wsx zabbix < /usr/share/zabbix-mysql/images.sql

[root@OBird ~]# mysql -uroot -pzaq12wsx zabbix < /usr/share/zabbix-mysql/data.sql


再次启动zabbix-server 还是没有启动,日志报错和上面的一样。


[root@OBird ~]# mysql -uroot -pzaq12wsx

mysql>grant all on *.* to 'zabbix'@'localhost' identified by 'zabbix'; #创建用户&密码及授权

Query OK, 0 rows affected (0.00 sec)


[root@OBird ~]# vim /etc/zabbix/zabbix_server.conf #编辑写入zabbix 用户密码。

DBPassword=zabbix


[root@OBird ~]# ls /tmp/mysql.sock  # mysql.sock 在tmp 这个文件夹下

/tmp/mysql.sock


[root@OBird ~]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock #做一个软链接


[root@OBird ~]# service mysqld restart  #重启数据库

Stopping mysqld:                                           [  OK  ]

Starting mysqld:                                           [  OK  ]

[root@OBird ~]# /etc/init.d/zabbix-server restart #重启zabbix-server 服务

Shutting down Zabbix server:                               [  OK  ]

Starting Zabbix server:                                    [  OK  ]

查询确认Zabbix 服务已经启动:

wKioL1hkoxLxBEytAAC7jODOiaY747.jpg


网页端 Zabbix 安装:

http://10.72.4.43/zabbix/

wKioL1hkpCLDpU3jAAIbFKQDXyA291.jpg

wKioL1hkpOGh3MdgAAJWw3QSSUY236.jpg

以下三项测试不通过:


PHP option post_max_size 8M 16M Fail




PHP option max_execution_time 30 300 Fail
PHP option max_input_time 60 300 Fail


[root@OBird ~]# vim /etc/php.ini  #编辑php.ini 文件   


post_max_size = 16M #8M->16M

max_execution_time = 300 # 30 -> 300

ax_input_time = 300 # 60 ->300


[root@OBird ~]# service httpd restart   


刷 新 :http://10.72.4.43/zabbix/  ,全部通过,直接下一步,下一步直至安装完成。

 

wKioL1hkpmCx3PBNAAIg2VdQwV4724.jpg

wKioL1hkqEyS_MTTAAJVf0oE8x0659.jpg

wKioL1hkqSbx9H5EAADwma21QbY789.jpg

wKiom1hkqZvw28zyAAEThAv0UKk808.jpg

wKioL1hkqZvSLct3AAC4BMFGzzo325.jpg

wKiom1hkqZyxX334AAIDtNUTbbA533.jpg

Zabbix 黙认管理员帐号:  admin ps:zabbix  .至此Zabbix 服务端安装完成。


wKioL1hkrCKCIy7yAAGo8NT_0Hk449.jpg

----------------------------------------分割线----------------------------------------


安装接入监控的客户端主机:客户端机的环境是 LNMP.


[root@LNMP ~]# yum install zabbix20-agent


[root@LNMP ~]# vim /etc/zabbix_agentd.conf  #编辑配置文件,更改为以下

Server=10.72.4.43          #服务端IP

ServerActive=0.0.0.0:10050 #监听端口

Hostname=Zabbix_liven_linux  #自定义的主机名


[root@LNMP ~]# /etc/init.d/zabbix-agent start #启动zabbix-agent 服务

Starting Zabbix agent:                                     [  OK  ]


[root@OBird ~]# zabbix_get -s 10.72.4.38 -p10050 -k "system.hostname"

LNMP

#在服务端检测客户端主机名,检测无误。说明两机之间通信无误。


wKioL1hku_Ci6dRcAAIfetzdeXw921.jpg

添加监控模版:

wKiom1hkvMvDqjiTAAHOsNa2uw8896.jpg

服务端监控数据查看:

wKiom1hkvmSQQ1DvAAGoSuGovCg608.jpg

创建自定义模版:

Zabbix自带了很多模板,模板中有很多监控项目,比如CPU、网卡、内存、进程等等。使用系统自带模板有点太多了,所以我们可以自定义模板。点configuration 选择 templates,点右上角的create template

Template name和Visible name  自定义,Groups 选择templates, 点save

然后我们去挑选一些项目拷贝到该模板下:比如我们找到Template OS Linux 点一下items,选择想要的项目,然后在下面选择copy selected to … 然后点go 

Group 选择templates, 找到刚才我们自定义的templates,点copy

点configuration 选择 templates可以看到新建的templates中已经有刚刚我们copy的items了

我们可以使用和上面相同的方法自定义拷贝Triggers(触发器 ),它用来设置告警的阀值,也可以自定义编辑它。

wKiom1hkv3_T9Ny7AAE_5kKgrtA174.jpg

wKiom1hkv8ejGja6AAGlv_zW4YM212.jpg

wKiom1hkwDrRbBhaAAFm9oEqAu4330.jpg

wKioL1hkwQex96_TAAG3qsTbjMk783.jpg

wKiom1hkwQig9jkxAAEQHCtTBpU750.jpg

----------------------------------------分割线----------------------------------------


[root@OBird ~]# /etc/init.d/postfix restart  #启动postfix 服务

Shutting down postfix:                                     [  OK  ]

Starting postfix:                                          [  OK  ]


[root@OBird ~]# mail -s "2016-12-30" 111111111@qq.com < /etc/inittab  #发邮件

[root@OBird ~]# mailq   #查看邮件有没有发出去

Mail queue is empty

#楼主是用QQ 邮箱测试的,是可以收到邮件的。如下图

wKiom1hlyC7ykz_NAAF7OsWwOiw878.jpg

在zabbix-server 端来编写发邮件脚本


[root@OBird ~]# mkdir -p /home/zabbix/bin

[root@OBird ~]# vim /home/zabbix/bin/bj.sh

#!/bin/bash

echo "$3" |/bin/mail -s "$2" $1 # $3 是邮件内容 ,$2 是主题 $1 是收件人


[root@OBird ~]# chmod +x /home/zabbix/bin/bj.sh  #加入可执行的权权


[root@OBird ~]# vim /etc/zabbix/zabbix_server.conf #更改邮件脚本路径,

#AlertScriptsPath=/var/lib/zabbixsrv/alertscripts

AlertScriptsPath=/home/zabbix/bin


#ExternalScripts=/var/lib/zabbixsrv/externalscripts

ExternalScripts=/home/zabbix/bin


创建mediea types: “Administration" -->”Media types",点击右上角“Create Media Type"其中Description填"bj” 或其它自定义名称,Type选择"Script",Script填”bj.sh”然后点”Save”.  

wKioL1hlzG7yP05YAAGyYu81F3w444.jpg

wKiom1hlzHnzsqDzAADrdzU9HWY910.jpg

wKiom1hlzNDhZWsgAAF9YfiIzLU428.jpg

创建user: “Adimistration” --> “Users”在右上角,选择”Users”,点击”Create User”, alias: test1,自定义name和lastname password:zaq12wsx;group 选择guest,回到上面点一下media,type 选择baojing,send to 写要发送邮件的邮箱,点add, 最后点save

创建action: “configuration” --> actions,右上角“Create Actions”, Name自定义,我这里写”baojing”,其他默认,然后点右侧的“Operations”下的“New”按钮,“Operation Type”选择“Send message”,“Send Message to”选择一个或多个要发送消息的用户组,Send to Users选择我们之前新增的test1, “Send only to”选择bj , 点一下add

最后点save

wKiom1hlz--yyj8mAAFkGJbWwIs376.jpg

wKiom1hlz_CROcF5AAFcFrsOBA4846.jpg

wKiom1hl0FXgU46gAAFBuHlZp8I379.jpg


wKioL1hl0R2w_82gAAJPXAsqsDU944.jpg


创建action: “configuration” --> actions,右上角“Create Actions”, Name自定义,我这里写”baojing”,其他默认,然后点右侧的“Operations”下的“New”按钮,“Operation Type”选择“Send message”,“Send Message to”选择一个或多个要发送消息的用户组,Send to Users选择我们之前新增的test1, “Send only to”选择baojing , 点一下add

最后点save

wKioL1hl1RnD2opqAAG9kmcr50Q932.jpg

wKioL1hl1Yix3DD9AAFvthr3LHg208.jpg

wKiom1hl1kKTsgSRAAElGdGBr8I013.jpg

wKioL1hl1rPjlZXTAAHULcRbE-8661.jpg

本文出自 “CBO#Boy_Linux之路” 博客,请务必保留此出处http://20151213start.blog.51cto.com/9472657/1887603

本文转自不要超过24个字符博客51CTO博客,原文链接http://blog.51cto.com/cstsncv/1887841如需转载请自行联系原作者


cstsncv

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
9月前
|
Ubuntu Linux 网络安全
Linux服务器之Ubuntu的安装与配置
Ubuntu Desktop是目前最成功、最流行的图形界面的Linux发行版;而Ubuntu Server也在服务器端市场占据了较大的份额。今天为大家详细介绍了Ubuntu Server的安装与配置,希望对你能有所帮助。关于VMware、VirtualBox等虚拟化软件的使用,朱哥还会在后续的文章中为大家详细介绍,敬请关注!
|
7月前
|
存储 Linux 开发工具
Linux环境下使用Buildroot配置软件包
使用Buildroot可以大大简化嵌入式Linux系统的开发和维护工作,但它需要对Linux系统和交叉编译有深入的理解。通过上述步骤,可以有效地配置和定制软件包,为特定的嵌入式应用构建高效、稳定的系统。
788 11
|
安全 Linux 开发工具
【Linux】vim使用与配置教程
Vim是一款功能强大的文本编辑器,广泛应用于Linux环境,是开发者和系统管理员的必备工具。本文介绍了Vim的基本操作与简单配置,涵盖命令模式、插入模式和底行模式的使用方法,以及光标定位、复制粘贴、搜索替换等常用技巧。同时,文章还提供了实用的分屏操作和代码注释方法,并分享了通过`.vimrc`文件进行个性化配置(如显示行号、语法高亮、自动缩进等)的技巧,帮助用户提升文本编辑效率。掌握这些内容,能让Vim更好地服务于日常工作与开发需求。
1036 3
|
10月前
|
安全 应用服务中间件 网络安全
在Linux环境部署Flask应用并启用SSL/TLS安全协议
至此,你的Flask应用应该能够通过安全的HTTPS协议提供服务了。记得定期更新SSL证书,Certbot可以帮你自动更新证书。可以设定cronjob以实现这一点。
693 10
|
10月前
|
Java Linux 网络安全
Linux云端服务器上部署Spring Boot应用的教程。
此流程涉及Linux命令行操作、系统服务管理及网络安全知识,需要管理员权限以进行配置和服务管理。务必在一个测试环境中验证所有步骤,确保一切配置正确无误后,再将应用部署到生产环境中。也可以使用如Ansible、Chef等配置管理工具来自动化部署过程,提升效率和可靠性。
909 13
|
9月前
|
存储 数据采集 监控
ubuntu(linux)系统主要应用于哪些工业场景中?研维三防ubuntu系统的手持工业三防平板电脑在哪些行业中有实际应用
Ubuntu 系统凭借其独特的优势,在众多工业场景中得到了广泛应用,为工业数字化、智能化发展提供了有力支持。而研维三防基于 Ubuntu 定制系统的手持工业三防平板电脑,更是将 Ubuntu 系统的优势与工业级的性能、坚固耐用性完美结合,在电力、物流、制造等多个行业中展现出强大的应用价值,助力企业提高生产效率、优化管理流程、提升产品质量,成为推动工业现代化发展的重要力量。随着技术的不断进步与创新,相信 Ubuntu 系统以及研维三防这类工业级设备将在更多的工业领域中发挥更大的作用,为工业发展带来更多的机遇与变革。
|
10月前
|
Kubernetes Linux 网络安全
Rocky Linux 8.9配置Kubernetes集群详解,适用于CentOS环境
初始化成功后,记录下显示的 `kubeadm join`命令。
666 0
|
12月前
|
关系型数据库 MySQL Java
安装和配置JDK、Tomcat、MySQL环境,以及如何在Linux下更改后端端口。
遵循这些步骤,你可以顺利完成JDK、Tomcat、MySQL环境的安装和配置,并在Linux下更改后端端口。祝你顺利!
628 11
|
10月前
|
存储 安全 Linux
Linux服务器上安装配置GitLab的步骤。
按照以上步骤,一个基础的GitLab服务应该运行并可以使用。记得定期检查GitLab官方文档,因为GitLab的安装和配置步骤可能随着新版本而变化。
911 0
|
Java Linux 应用服务中间件
在Rocky Linux 9上安装JDK并配置环境变量!
本教程介绍在Rocky Linux 9上安装JDK并配置环境变量的完整步骤。首先更新系统,清理旧版本JDK相关包及残留文件,确保环境干净。接着搜索并安装所需版本的JDK(如OpenJDK 17),验证安装是否成功。然后查找JDK安装路径,配置全局环境变量`JAVA_HOME`和`PATH`,最后验证环境变量设置。按照此流程操作,可顺利完成Java开发环境搭建,支持多版本切换(如JDK 8/11/17)。生产环境请谨慎操作,避免影响现有服务。
1883 21