一 前期规划
1.1 Zabbix架构图
1.2 其他规划
组件 | 类型 | 版本 | 备注 |
---|---|---|---|
Zabbix Web | zabbix-web-apache-mysql镜像 | wordpress:latest | 也可采用zabbix-web-nginx-mysql镜像 |
数据库 | MySQL数据库镜像 | mysql:5.7 | 也可采用MariaDB |
zabbix-server-mysql镜像 | |||
node01 | zabbix/zabbix-agent | 被监控端 |
Docker已安装,参考《002.Docker版本及安装》。
Docker Compose已安装,参考《009.Docker Compose基础使用》。
二 正式构建Zabbix Server
2.1 创建目录
代码语言:javascript复制 1 root@docker01:~# mkdir my_zabbix
2 root@docker01:~# mkdir /zabbix_mysql_data
2.2 创建Docker Compose
代码语言:javascript复制 1 root@docker01:~# cd my_zabbix/
2 root@docker01:~/my_zabbix# vi docker-compose.yml
3 version: '3'
4 services:
5 zabbix-mysql:
6 image: mysql:5.7
7 container_name: zabbix-mysql
8 ports:
9 - '3306:3306'
10 environment:
11 MYSQL_ROOT_PASSWORD: rootpassword
12 MYSQL_DATABASE: zabbix
13 MYSQL_USER: zabbix
14 MYSQL_PASSWORD: zabbixpassword
15 volumes:
16 - /zabbix_mysql_data:/var/lib/mysql
17
18 zabbix-web-apache-mysql:
19 image: zabbix/zabbix-web-apache-mysql
20 container_name: zabbix-web-apache-mysql
21 environment:
22 DB_SERVER_HOST: zabbix-mysql
23 MYSQL_DATABASE: zabbix
24 MYSQL_USER: zabbix
25 MYSQL_PASSWORD: zabbixpassword
26 MYSQL_ROOT_PASSWORD: rootpassword
27 ZBX_SERVER_HOST: zabbix-server-mysql
28 PHP_TZ: Asia/Shanghai
29 ports:
30 - '80:80'
31 - '443:443'
32 links:
33 - zabbix-mysql
34 - zabbix-server-mysql
35 depends_on:
36 - zabbix-mysql
37 - zabbix-server
38
39 zabbix-server:
40 image: zabbix/zabbix-server-mysql
41 container_name: zabbix-server-mysql
42 network_mode: host
43 environment:
44 DB_SERVER_HOST: 127.0.0.1
45 MYSQL_DATABASE: zabbix
46 MYSQL_USER: zabbix
47 MYSQL_PASSWORD: zabbixpassword
48 MYSQL_ROOT_PASSWORD: rootpassword
49 ports:
50 - '10051:10051'
51 links:
52 - zabbix-mysql
53 depends_on:
54 - zabbix-mysql
55
56 zabbix-agent:
57 image: zabbix/zabbix-agent
58 container_name: zabbix-server-agent
59 network_mode: host
60 environment:
61 ZBX_HOSTNAME: zabbix server
62 ZBX_SERVER_HOST: 127.0.0.1
63 ports:
64 - '10050:10050'
2.3 开始构建
代码语言:javascript复制 1 root@docker01:~# cd my_zabbix/
2 root@docker01:~/my_zabbix# docker-compose up -d
2.4 确认验证
浏览器访问http://172.24.8.111
如上所示即可正常登录,更多Zabbix使用方法请参考官方文档。
三 构建Zabbix Agent
3.1 安装Docker
需要被监控客户端节点安装Docker,参考《002.Docker版本及安装》。
3.2 安装Docker Compose
在需要被监控客户端节点安装Docker Compose,参考《009.Docker Compose基础使用》。
3.3 创建Docker Compose
代码语言:javascript复制 1 root@node01:~# mkdir my_agent/
2 root@node01:~# cd my_zabbix/
3 root@node01:~/my_zabbix# vi docker-compose.yml
4 version: '3'
5 services:
6 zabbix-agent:
7 image: zabbix/zabbix-agent
8 container_name: zabbix-server-agent
9 network_mode: host
10 environment:
11 ZBX_HOSTNAME: zabbix server
12 ZBX_SERVER_HOST: 127.0.0.1
13 ports:
14 - '10050:10050'
3.4 开始构建
代码语言:javascript复制 1 root@node01:~# docker-compose up -d
四 添加监控节点
4.1 添加主机
Configuration---->Host---->Creat Host
添加需要监控的节点,更多Zabbix使用方法请参考官方文档。
提示:docker相关知识参考本博客其他文档。