【问题标题】:Error in configuring multiple networks using weave network driver plugin for docker使用 docker 的 weave 网络驱动程序插件配置多个网络时出错
【发布时间】:2016-05-02 17:26:27
【问题描述】:

我正在阅读一篇文章 weave net driver 并且正在尝试使用它。我能够使用默认的weavemesh 驱动程序在单个主机上进行容器到容器的通信。当我尝试使用weave 网络驱动程序插件创建多个网络时,问题就出现了。我收到以下错误。

[ankit@local-machine]$ docker network create -d weave netA
Error response from daemon: failed to parse pool request for address space "GlobalDefault" pool "" subpool "": cannot find address space GlobalDefault (most likely the backing datastore is not configured)

现在,正如我从 Getting Started with Docker Multi-host Networking 的 docker 文档中了解到的那样,它需要配置一个键值存储。我想知道我的理解是否正确?有没有办法在weave网络上创建多个网络来实现网络隔离。我希望能够将一个容器的网络流量与在同一个盒子上运行的另一个容器隔离开来。

最近有一个新的weave 1.4 plugindocker networking without cluster store plugin 公告说它支持没有外部集群存储的docker网络。它是如何工作的。它是否可以用于在weave 上创建多个网络还不是很清楚。

【问题讨论】:

    标签: networking docker weave


    【解决方案1】:

    This issue问:

    您是否使用 --cluster-store 启动了 docker 守护进程?

    使用--cluster-store--cluster-advertise 启动docker 时,您需要传递对等IP 来编织启动路由器$peers

    文档提到:

    Weave 插件实际上为 Docker 提供了两个网络驱动程序

    • 一个名为weavemesh 可以在没有集群存储的情况下运行,并且
    • 一个名为weave,只能与一个(如Docker的覆盖驱动程序)一起使用。

    因此需要先Set up a key-value store

    如果你使用的是weave插件,你的理解是正确的。

    PR 1738 具有更多关于新 weave 1.4+ 的功能,无需使用 weavemesh 驱动程序的密钥库。 Its doc does mention:

    如果您确实使用weavemesh 驱动程序创建了其他网络,则附加到它们的容器将能够与附加到编织的容器进行通信;这些网络之间没有隔离。

    PR 1742 仍然打开“允许用户为每个 docker 主机指定子网范围”。

    【讨论】:

    • 我在weave 1.4 plugin 的问题中添加了更多信息。是否可以在不使用集群存储的情况下通过weave实现多个网络创建?
    • @AnkitKumar 没有集群存储意味着 weavemesh,not weave
    • 是的,明白了..只需阅读weave 1.4.0 plugin的发行说明
    • @AnkitKumar 您使用的是 weave 1.4+ 还是 weave 1.3 或之前的版本?
    • 我正在使用 weave 1.4+
    猜你喜欢
    • 2017-03-01
    • 1970-01-01
    • 2020-05-15
    • 1970-01-01
    • 2014-05-07
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多