Zabbix 简介[1]
Zabbix
是由 Alexei Vladishev 开发的一种网络监视、管理系统,基于 Server-Client 架构。可用于监视各种网络服务、服务器和网络机器等状态。
Zabbix
使用 MySQL、PostgreSQL、SQLite、Oracle 或 IBM DB2 储存资料。Server 端基于 C语言、Web 前端则是基于 PHP 所制作的。Zabbix 可以使用多种方式监视。可以只使用 Simple Check 不需要安装 Client 端,亦可基于 SMTP 或 HTTP 等各种协定做死活监视。在客户端如 UNIX、Windows 中安装 Zabbix Agent 之后,可监视 CPU 负荷、网络使用状况、硬盘容量等各种状态。而就算没有安装 Agent 在监视对象中,Zabbix 也可以经由 SNMP、TCP、ICMP检查,以及利用 IPMI、SSH、telnet 对目标进行监视。另外,Zabbix 包含 XMPP 等各种 Item 警示功能。
Zabbix 功能和特性[2]
- 安装与配置简单
- 可视化web管理界面
- 免费开源
- 支持中文
- 自动发现
- 分布式监控
- 实时绘图
环境
- Kubernetes 版本 1.15.6
- Zabbix 版本 3.4.7 (镜像,在官方基础上修改,下文会具体介绍)
- Mariadb 版本 10.3.5
Zabbix Dockerfile 修改
zabbix-server-mysql
:Dockerfile 在官方基础上修改,添加 python支持
,用于支持python通知脚本环境
;时区修改为上海时区
;
1 | FROM zabbix/zabbix-server-mysql:alpine-3.4.7 |
zabbix-web-nginx-mysql
:Dockerfile 在官方基础上修改,添加中文字体,解决查看web监控时中文乱码
;时区修改为上海时区
;
msyh.ttf
字体,可以从下文已打好的镜像获取。
1 | FROM zabbix/zabbix-web-nginx-mysql:alpine-3.4.7 |
Zabbix K8S 部署
首先部署 Mariadb
PS:NFS 提供存储
$ vim mariadb-pv.yaml
1 | apiVersion: v1 |
$ vim mariadb-pvc.yaml
1 | apiVersion: v1 |
$ vim mariadb-deploy.yaml
1 | apiVersion: v1 |
1 | # 部署 Mariadb |
部署 Configmap 通知钉钉脚本
$ vim zabbix-dingding-conf-configmap.yaml
1 | apiVersion: v1 |
$ vim zabbix-dingding-script-configmap.yaml
1 | apiVersion: v1 |
1 | # 部署 |
部署 zabbix-server
$ vim zabbix-server-deploy.yaml
1 | apiVersion: v1 |
1 | # 部署 |
部署 zabbix-web
$ vim zabbix-web-deploy.yaml
1 | apiVersion: v1 |
1 | # 部署 |
部署 zabbix-agent
zabbix-agent 这里不在细讲,如果使用 Docker或者k8s 部署,可以使用官方镜像 zabbix/zabbix-agent:alpine-3.4.7
。也可直接下载官方安装包,部署在宿主机上,这里根据自己实际需要部署客户端。
Zabbix Dashboard
上面部署成功后,根据自己实际环境,设置外网访问k8s集群入口,Zabbix Dashboard 如下展示:
参考链接
---本文结束感谢您的阅读。微信扫描二维码,关注我的公众号---
本文链接: https://www.yp14.cn/2020/02/05/Kubernetes-中部署-Zabbix/
版权声明: 本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。转载请注明出处!