node1 node2 node3 在node1node2node3中创建dockerswarm集群且互相可 创建overlay网卡ip地址段为:15.15.200.0/24 使用 overlay网络,在node1上运行zabbix-server和UI界面,在所有节点上安装zabbix-agent模式为globa访问node1的40000端口可以打开zabbix的Ul界面,host中看到三台主机
时间: 2023-08-31 15:33:26 浏览: 138
Docker overlay 网络搭建的方法
以下是在node1、node2、node3上创建Docker Swarm集群的步骤:
1. 在每个节点上安装Docker和Docker Swarm,具体安装步骤可以参考Docker官方文档。
2. 在其中一个节点上初始化Swarm:
```
docker swarm init --advertise-addr <node1_ip_address>
```
这里的`<node1_ip_address>`是node1节点的IP地址。
3. 在其他节点上加入Swarm:
```
docker swarm join --token <token> <node1_ip_address>:<port>
```
这里的`<token>`是在第2步中生成的加入Swarm所需的token,`<node1_ip_address>`和`<port>`是node1节点的IP地址和Swarm监听的端口。
4. 在Swarm中创建overlay网络:
```
docker network create --driver overlay --subnet 15.15.200.0/24 zabbix-net
```
这里创建一个名为`zabbix-net`的overlay网络,IP地址段为`15.15.200.0/24`。
5. 在node1节点上运行Zabbix Server和Zabbix UI界面:
```
docker service create --name zabbix-server \
--network zabbix-net \
--replicas 1 \
-e DB_SERVER_HOST="mysql-server" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_DATABASE="zabbix" \
-p 10051:10051 \
zabbix/zabbix-server-mysql:latest
docker service create --name zabbix-web \
--network zabbix-net \
--replicas 1 \
-e DB_SERVER_HOST="mysql-server" \
-e MYSQL_USER="zabbix" \
-e MYSQL_PASSWORD="zabbix_pwd" \
-e MYSQL_DATABASE="zabbix" \
-e ZBX_SERVER_HOST="zabbix-server" \
-e PHP_TZ="Asia/Shanghai" \
-p 40000:80 \
zabbix/zabbix-web-nginx-mysql:latest
```
这里使用的是`zabbix/zabbix-server-mysql`和`zabbix/zabbix-web-nginx-mysql`镜像,可以根据具体需求使用不同的镜像。
6. 在所有节点上安装Zabbix Agent:
```
docker service create --name zabbix-agent \
--network zabbix-net \
--replicas global \
-e ZBX_HOSTNAME="{{.Node.Hostname}}" \
-e ZBX_SERVER_HOST="zabbix-server" \
zabbix/zabbix-agent:latest
```
这里使用的是`zabbix/zabbix-agent`镜像,使用`global`模式可以在集群中的所有节点上运行Zabbix Agent。
7. 使用浏览器访问`http://node1_ip_address:40000`即可打开Zabbix UI界面,可以在Hosts中看到Swarm中的所有节点。
注意:以上命令中的`mysql-server`和`zabbix-server`是在Swarm中运行的MySQL和Zabbix Server服务的名称,需要根据实际情况进行修改。另外,如果使用的是其他的镜像,则需要根据镜像中的文档进行相应的配置。
阅读全文