zoukankan      html  css  js  c++  java
  • 容器网络(八)如何使用 Weave 网络?【58】

    (十六)如何使用 Weave 网络?

    ​ weave 是 Weaveworks 开发的容器网络解决方案。weave 创建的虚拟网络可以将部署在多个主机上的容器连接起来。对容器来说,weave 就像一个巨大的以太网交换机,所有容器都被接入这个交换机,容器可以直接通信,无需 NAT 和端口映射。除此之外,weave 的 DNS 模块使容器可以通过 hostname 访问。

    (1)实验环境描述

    ​ weave 不依赖分布式数据库(例如 etcd 和 consul)交换网络信息,每个主机上只需运行 weave 组件就能建立起跨主机容器网络。我们会在 host1 和 host2 上部署 weave 并实践 weave 的各项特性。 (部署在host1和host2)

    (2)安装部署 weave

    weave 安装非常简单,在 host1 和 host2 上执行如下命令:

    curl -L git.io/weave -o /usr/local/bin/weave
    chmod a+x /usr/local/bin/weave
    
    

    (3)在 host1 中启动 weave

    在 host1 中执行 weave launch 命令,启动 weave 相关服务。weave 的所有组件都是以容器方式运行的,weave 会从 docker hub 下载最新的 image 并启动容器。

    root@host1:~# docker ps -a
    CONTAINER ID        IMAGE                        COMMAND                  CREATED              STATUS                           PORTS                    NAMES
    57cd0862223a        weaveworks/weave:2.7.0       "/home/weave/weaver …"   About a minute ago   Up About a minute                                         weave
    c9e8ae0a84c5        weaveworks/weaveexec:2.7.0   "data-only"              About a minute ago   Created                                                   weavevolumes-2.7.0
    16f3acb5ac48        weaveworks/weavedb:latest    "data-only"              About a minute ago   Created                                                   weavedb
    
    

    weave 运行了三个容器:

    weave 是主程序,负责建立 weave 网络,收发数据 ,提供 DNS 服务等。

    weaveplugin 是 libnetwork CNM driver,实现 Docker 网络。

    weaveproxy 提供 Docker 命令的代理服务,当用户运行 Docker CLI 创建容器时,它会自动将容器添加到 weave 网络。

    weave 会创建一个新的 Docker 网络 weave

    root@host2:~# docker network ls | grep weave
    238a4450cfaf        weave               weavemesh           local
    root@host2:~# 
    
    

    driver 为 weavemesh,IP 范围 10.32.0.0/12

    root@host2:~# docker network inspect weave 
    [
        {
            "Name": "weave",
            "Id": "238a4450cfaffded7602aa646d39c09035ce3a383844cfd4cfe5cc98fcaca7e2",
            "Created": "2020-11-11T02:57:15.631745554Z",
            "Scope": "local",
            "Driver": "weavemesh",
            "EnableIPv6": false,
            "IPAM": {
                "Driver": "weavemesh",
                "Options": null,
                "Config": [
                    {
                        "Subnet": "10.32.0.0/12"
                    }
                ]
            },
    
    
  • 相关阅读:
    HDFS工作流程
    HADOOP 安全模式
    Hadoop环境的搭建
    面向对象-绑定与非绑定方法
    面向对象-封装
    面向对象-继承与派生
    面向对象-多态与多态性
    面向对象-绑定方法
    LOL游戏基本代码
    1 面向对象的程序设计
  • 原文地址:https://www.cnblogs.com/cuiyongchao007/p/14143578.html
Copyright © 2011-2022 走看看