解决Dock的网络问题

【e良师益友网】Docker 是一个开源的应用容器引擎,它可以让开发者将自己的应用以及应用所依赖的内容打包到一个可移植的容器中,然后将该容器发布到任何流行的 Linux 机器上,也可以实现虚拟化。Docker 彻底释放了虚拟化的威力,它让应用的分发、部署和管理都变得前所未有的高效和轻松,凭借着自己出众的能力,Docker现在已经成为目前IT界创业者和创 新者的宠儿。那么Docker是否已经足够完美了呢?答案当然是否定的,对于管理者和开发人员来说网络依然是Docker的一个痛点,如何管理 Docker容器之间的交互和网络一直都充满了挑战。

为了解决网络的问题,有很多公司都开发了各自的产品以帮助开发者更方便地使用 Docker。Serdar Yegulalp最近在InfoWorld上分享了一篇文章,介绍了这些项目中最重要的5个,包括Weave、Kubernetes、CoreOS, Flannel、Pipework以及SocketPlane,同时他认为这其中的部分项目将来可能会成为Docker的组成部分。下面就让我们来了解一 下这5个项目。

Weave是 由Zett.io公司开发的,它能够创建一个虚拟网络来连接部署在多台主机上的Docker容器。通过Weave所有的 容器就像被接入了同一个网络交换机,那些使用网络的应用程序不必去配置端口映射和链接等信息。外部设备能够访问Weave网络上的应用程序容器所提供的服 务,同时已有的内部系统也能够暴露到应用程序容器上。Weave能够穿透防火墙并运行在部分连接的网络上。另外,Weave的通信支持加密,所以用户可以 从一个不受信任的网络连接到主机。如果你想了解更多与Weave相关的信息,或者查看相关源码,那么可以点击这里。

Kubernetes是 由Google推出的针对容器管理和编排的开源项目,它让用户能够在跨容器主机集群的情况下轻松地管理、监 测、控制容器化应用部署。Kubernete有一个特殊的与SDN非常相似的网络化概念:通过一个服务代理创建一个可以分配给任意数目容器的IP地址,前 端的应用程序或使用该服务的用户仅通过这一IP地址调用服务,不需要关心其他的细节。这种代理方案有点SDN的味道,但是它并不是构建在典型的SDN的第 2-3层机制之上。如果对此感兴趣可以阅读一下Craig Matsumoto在sdncentral上发表的这篇文章,或者点此查看源码。

Flannel之前的名字是Rudder, 它是由CoreOS团队针对Kubernetes设计的一个覆盖网络工具,其目的在于帮助每一个使用 Kuberentes 的 CoreOS 主机拥有一个完整的子网。Kubernetes 会为每一个 POD 分配一个独立的 IP 地址,这样便于同一个 POD 中的Containers 彼此连接,而之前的 CoreOS 并不具备这种能力。为了解决这一问题,Flannel 通过在集群中创建一个覆盖网络为主机设定一个子网。点此查看该项目的源码。

Pipework是由Docker的一个工程师设计的解决方案,它让容器能够在“任意复杂的场景”下进行连接。Pipework是Docker的一个网络功能增强插件,它使用了cgroups和namespacpace。点此查看该项目的源码。

SocketPlane目 前仅停留在将“SDN带给Docker”的口号上,基本上没有实质性的工作。该项目的想法是使用和部署 Docker一样的devops工具管理容器的虚拟化网络,同时为Docker构建一个相当于OpenDaylight/Open vSwitch的产品。听起来非常有前途,但是在2015年一季度之前我们无法看到任何产品。

对于以上项目,Serdar Yegulalp在自己的文章中也发表了针对性的观点,他认为Weave是最好的起点,因为它通过一种直截了当的方法解决了当前大部分的问题。 Kubernetes也是一个比较好的起点,但是真要用起来可能并不是那么简单。而Flannel则最好是和CoreOS一起使用,同时它依赖于 Kubernetes。对于Pipework,Serdar Yegulalp认为它是一个临时的设计方案,很有可能会被抛弃。最后的SocketPlane则基本上是看看就行了,不要期望太高。推荐登录e良师益友 网学习教程

时间: 2024-10-02 09:04:42

解决Dock的网络问题的相关文章

解决虚拟机 centos 网络服务启动

现象: 1. 通过 ip addr 显示 eno16777736 适配器为 DOWN 状态 2. service status network 显示以下日志: .... 11月 05 15:30:10 localhost.localdomain systemd[1]: network.service: control process exited, code=exited status=111月 05 15:30:10 localhost.localdomain systemd[1]: Fail

解决遇到Linux网络配置,从熟悉网络配置文件入手

如果接触过Linux,网络配置是一个比较棘手的问题.但是Linux是文件为基础来构建的系统,包括我们windows中设备,Linux也视为文件.所以只要我们明白文件的作用.就能对Linux更加的熟悉,网络配置也是.所以为了熟悉和解决遇到Linux网络配置,首先从网络配置文件入手.这里面整理和汇集较多资料,从多角度,多篇文章,希望能耐心看完.一.简要概述DNS配置文件[[email protected] etc]# cat /etc/resolv.conf nameserver 210.36.16

怎么解决win8无线网络受限问题

Win8无线网络连接受限的解决办法: 通常Win8网络受限主要是由于电脑没有获取到有效的IP地址,从而导致出现受限制提示,而IP地址都是电脑自动获取,如果获取失败的话,不妨自己设置IP即可. 方法是在保证网络没有问题的情况下,我们可以首先尝试给Win8电脑设置一个固定IP,Win8设置IP地址方法很简单. 通常如果网络没问题,我们通过设置Win8 IP是可以解决问题的,如果问题依旧,我们再尝试一下方法解决. 1.在Win8传统桌面状态下,同时按住Win+X组合快捷键,打开Win8系统设置菜单,然

公司上网速度极慢(断网)解决思路_网络TS

20171107 下午5点接到下属单位反馈,上网速度很慢 前因:修改了专线的路由 现象:公司所有电脑的QQ.微信都可以上,但是网页打开速度超级慢,需要等3-5分钟 他把原来核心交换机的配置文件恢复到了之前的备份还是不行 我这里听了详细,判断可能是DNS出了问题,ping DNS 服务器正常 把DNS改成8.8.8.8 或者114.114.114.144还是不行 可能是网络问题 网络架构是:外网-防火墙-AC-核心交换机-汇聚交换机-接入层 解决步骤: 1:nslookup 解析出百度的IP地址,

解决“无任何网络提供程序接受指定的网络路径”问题的几个方法

提示“无任何网络提供程序接受指定的网络路径”,排除网络故障,找到以下几种解决方法: 1.服务停止:一般有workstation,server,computer browser这三个服务,检查是否停止,设为自动然后启动即可.2.workstation.server服务无法系统,找到与自己系统相同的系统,进入SYSTEM32/DRIVERS文件夹,找到RDBSS.SYS和MRXSMB.SYS文件.拷备到自己系统的对应位置就可以了.启动WORKSTATION服务.3.卸载网卡,重新安装.4.网络连接属

解决Windows下网络原因Composer安装失败问题的方法

由于Composer镜像都在国外,所以直接在官网下载Windows Installer后安装很多情况下是无法成功安装的. 解决办法: 1,将php添加到系统环境变量,并开启openssl扩展. 2,点击官网下载页,下拉到Manual Download,任意选择一个下载(建议最新版) 3,下载后是一个 composer.phar文件 放到php安装目录下,并新建一个composer.bat文件,写入如下内容并保存: @ECHO OFF php "%~dp0composer.phar" %

RabbitMQ 远程 IP 访问 解决办法 -摘自网络

刚刚安装的RabbitMQ-Server-3.3.5,并且也已经开启了Web管理功能,但是现在存在一个问题: 出于安全的考虑,guest这个默认的用户只能通过http://localhost:15672 来登录,不能使用IP地址登录,也就是不能远程访问,这对于服务器上没有安装桌面的情况是无法管理维护的. 要解决这个问题需要配置远程登录权限,这里通过配置文件来实现远程访问. 这里主要介绍Unix和Windows的配置文件修改. 一.Windows Windows环境下默认配置文件为目录/%Rabb

VMware NAT原理深度解析总结,可解决一切vmware网络配置问题

问题概述:VMware虚拟机中安装Centos6.6使用vmnet8网卡做NAT模式上网,dhcp正常使用,但是如果使用static IP就会出现无法上网的情况. 先讲一讲NAT的原理:即内网用户通过网络地址转换,由出口设备(一般指路由器)使用网络地址转换,将源地址转换为出口IP地址,代理内网用户访问外网资源:出口设备自身维护一张对应表,当访问返回结果后,再根据对应表送给对应的内网用户,这个过程也称作源地址转换:如果是外网用户,需要访问内网的一台服务器或者主机,可以在出口设备开端口映射,将目的地

解决Windows下网络原因Composer安装失败问题

由于Composer镜像都在国外,所以直接在官网下载Windows Installer后安装很多情况下是无法成功安装的. 解决办法: 1,将php添加到系统环境变量,并开启openssl扩展. 2,点击官网下载页,下拉到Manual Download,任意选择一个下载(建议最新版) 3,下载后是一个 composer.phar文件 放到php安装目录下,并新建一个composer.bat文件,写入如下内容并保存: @ECHO OFF php "%~dp0composer.phar" %