我们想在容器中使用带有 Elasticsearch 的 docker swarm。即在不同的 Docker 主机中以 swarm 形式运行的多个 Elasticsearch 实例。
但是,我们想使用大型子网,然后限制每个容器之间的访问。这可能吗?
例如:
Host 1: Host 2:
192.168.1.10 192.168.1.11
- Elasticsearch-node1<----------------------->Elasticsearch-node2
192.168.1.12 192.168.1.13
- Elasticsearch-node3<----------------------->Elasticsearch-node4
在上面的例子中,所有容器都使用 192.168.1.0/24 网络,但我们希望限制访问,以便节点 1 只能与节点 2 通信,而不能与节点 3 或节点 4 通信。我们如何实现这一点?
答案1
您可以使用以下方法实现同一覆盖网络上服务之间的分离Consul 连接,但这会增加系统中活动部件的数量。
不能将服务放入不同的覆盖网络的原因是什么?