063、如何使用weave网络(2019-04-03 周三)

 
weave是Weaveworks开发的容器网络解决方案。weave创建的虚拟网络可以将部署在多个host上的容器连接起来。
 
对于容器来说,weave就像一个巨大的以太网交换机,所有容器都被接入这个交换机,容器可以直接通信,无需NAT和端口映射。
 
除此之外,weave的DNS模块使容器可以通过hostname访问
 
实验环境
 
weave不依赖分布式数据库(etcd或者consul)存储交换网络信息。每个主机上只需运行weave组件就能建立起跨host容器网络。
 
#    1、下载安装weave
 
root@host1:~# curl -L git.io/weave -o /usr/local/bin/weave
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
100   595    0   595    0     0    213      0 --:--:--  0:00:02 --:--:--  581k
100 52227  100 52227    0     0  11236      0  0:00:04  0:00:04 --:--:-- 58616
root@host1:~# chmod a+x /usr/local/bin/weave
 
#    2、运行weave
 
root@host1:~# weave launch
2.5.1: Pulling from weaveworks/weave
a073c86ecf9e: Pull complete
950f028f729b: Pull complete
d1298aa928c2: Pull complete
1d157c01c74e: Pull complete
c458f7a37ca6: Pull complete
Digest: sha256:a170dd93fa7e678cc37919ffd65601d1015da6c3f10878534ac237381ea0db19
Status: Downloaded newer image for weaveworks/weave:2.5.1
latest: Pulling from weaveworks/weavedb
9b0681f946a1: Pull complete
Digest: sha256:c280cf4e7208f4ca0d2514539e0f476dd12db70beacdc368793b7736de023d8d
Status: Downloaded newer image for weaveworks/weavedb:latest
Unable to find image 'weaveworks/weaveexec:2.5.1' locally
2.5.1: Pulling from weaveworks/weaveexec
a073c86ecf9e: Already exists
950f028f729b: Already exists
d1298aa928c2: Already exists
1d157c01c74e: Already exists
c458f7a37ca6: Already exists
49a09e96fcfc: Pull complete
6d57eb599283: Pull complete
259765bea433: Pull complete
c11f30d06b58: Pull complete
Digest: sha256:ad53aaabf648548ec26cceac3ab49394778322e1623f0d184a2b74ad06338087
Status: Downloaded newer image for weaveworks/weaveexec:2.5.1
7e8598656934a6655d16c34eeb1df238acf76692f7f5f530101ac5c722a78f43
 
#    3、查看weave运行状态,容器和网络
 
root@host1:~# docker ps -a
CONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS              PORTS               NAMES
7e8598656934        weaveworks/weave:2.5.1       "/home/weave/weaver …"   27 seconds ago      Up 26 seconds                           weave
65fab63189a6        weaveworks/weaveexec:2.5.1   "data-only"              27 seconds ago      Created                                 weavevolumes-2.5.1
a4d5d7b88819        weaveworks/weavedb:latest    "data-only"              28 seconds ago      Created                                 weavedb
 
root@host1:~# docker network ls
NETWORK ID          NAME                DRIVER              SCOPE
59984053007a        bridge              bridge              local
bb03f7574aa2        host                host                local
d60df792c936        mac_net1            macvlan             local
884e50ddfb92        mac_net10           macvlan             local
c402380a197d        mac_net20           macvlan             local
11e39328a6d1        none                null                local
e364db005326        weave               weavemesh           local
root@host1:~# docker network inspect weave
[
    {
        "Name": "weave",
        "Id": "e364db00532678e57f983e286f31ccc10a9fdb152b7b87dafcf48e7675dff3fc",
        "Created": "2019-04-03T08:35:57.945367052+08:00",
        "Scope": "local",
        "Driver": "weavemesh",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "weavemesh",
            "Options": null,
            "Config": [
                {
                    "Subnet": "10.32.0.0/12"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {},
        "Options": {
            "works.weave.multicast": "true"
        },
        "Labels": {}
    }
]
 
 
posted @ 2019-04-03 08:45  三角形  阅读(448)  评论(0编辑  收藏  举报