前言
随着业务项目的逐渐增加,一个项目的可能就需要好几个服务器.如果有好几个项目一起管理的话,运维手上的服务器少则十几个多则上百个很正常.运维不可能按照以往处理单服务器的方式解决问题,需要有个高效并且好用的服务器管家来协助他们处理服务器问题,运维的要求很简单,比如监控服务器性能并即时告警.这样的运维监控系统,既可以缓解运维管理压力,又大大减低运维门槛.
市场上流行运维监控系统有很多,这里简单讲解下Zabbix基础知识.
基本信息
架构
zabbix使用的是master/agent方式.我们将zabbix-agent部署在节点主机上,有agent负责收集相关的数据.zabbix-server作为中心服务器,负责接收并监控节点主机的信息并做及时处理.
组件
- zabbix agent:部署在节点主机上,负责收集节点主机信息,并发送给zabbix-server.
- zabbix server:负责接收数据,监控并处理.
- zabbix web:可视化管理界面,查看监控数据和配置告警等等.
工作方式
zabbix工作分为主动模式和被动模式.
- 主动模式:agent负责收集数据,将收集的信息主动发送给server端,称之为主动模式.
- 被动模式:agent只负责收集数据,等待server端来拉取数据,称之为被动模式.
特别的,主动模式和被动模式可以同时开启,两者并不冲突.配置在agent配置文件上.
环境部署
server端部署
测试环境下,Server端选择使用docker方式部署zabbix.这里参考网上的文档使用docker编排工具编译.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
| version: '3' services: mysql: image: swr.cn-north-1.myhuaweicloud.com/rj-bai/zabbix-mysql:5.7 environment: MYSQL_USER: zabbix MYSQL_DATABASE: zabbix MYSQL_PASSWORD: zabbix MYSQL_ROOT_PASSWORD: Sowhat? volumes: - /data/mysql/zabbix:/var/lib/mysql ports: - 3306:3306 restart: always networks: - zabbix zabbix-java-gateway: image: swr.cn-north-1.myhuaweicloud.com/rj-bai/zabbix-java-gateway:4.0.1 ports: - 10052:10052 restart: always networks: - zabbix zabbix-server: image: swr.cn-north-1.myhuaweicloud.com/rj-bai/zabbix-server:4.0.1 environment: ZBX_JAVAGATEWAY: zabbix-java-gateway ZBX_JAVAGATEWAY_ENABLE: "true" DB_SERVER_HOST: mysql MYSQL_DATABASE: zabbix MYSQL_USER: zabbix MYSQL_PASSWORD: zabbix MYSQL_ROOT_PASSWORD: Sowhat? links: - mysql ports: - 10051:10051 depends_on: - mysql restart: always networks: - zabbix zabbix-web: image: swr.cn-north-1.myhuaweicloud.com/rj-bai/zabbix-web:4.0.1 environment: PHP_TZ: Asia/Shanghai DB_SERVER_HOST: mysql MYSQL_DATABASE: zabbix MYSQL_USER: zabbix MYSQL_PASSWORD: zabbix MYSQL_ROOT_PASSWORD: Sowhat? links: - mysql ports: - 80:80 depends_on: - zabbix-server - mysql restart: always networks: - zabbix networks: zabbix: driver: bridge
|
部署后的容器信息如下:
agent端部署
1 2
| rpm -i https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm yum -y install zabbix-agent-4.0.1
|
安装后的配置文件如下:
参考资料