返回顶部
首页 > 资讯 > 精选 >如何看待Docker网络管理的未来
  • 427
分享到

如何看待Docker网络管理的未来

2023-06-19 10:06:10 427人浏览 独家记忆
摘要

今天就跟大家聊聊有关如何看待Docker网络管理的未来,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。       最近有很多关于Docker网络管理的

今天就跟大家聊聊有关如何看待Docker网络管理的未来,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。




      最近有很多关于Docker网络管理的讨论,对这个问题大家众说纷坛。引起争论的主要原因是近年来使用Docker的人越来越多,用户逐渐意识到Docker的网络缺陷亟待解决。当然,实际情况也是这样,目前Docker的网络能力严重不足,不支持复杂的设置,现在Docker的网络模型存在性能问题且不易扩展。不过对于一个基本的应用而言Docker的网络模型已经很不错了。然而,我们不能永远停留在使用“基本应用”的级别上,伴随着云计算微服务的普及,这些还远远不够。作为libcontainer的贡献者之一,我想通过本文,发表一些自己的观点。


       首先我需要先聊聊一些和网络相关背景知识。一开始的时候,Docker使用者和开发者就意识到Docker网络模型的不足,因为他们需要给Docker容器分配更多的IP地址,而使用LXC作为容器引擎却不会为这个问题而感到苦恼。容器已经存在了相当长一段时间,只是由于Docker的出现好多人才去学习linux的命名空间(namespace),包括网络的命名空间,它是Linux容器网络的基石。Docker Tinkerer Extraordinaire 写了很多的博客并开发了pipework工具,它可以帮助了解Docker的网络以及如何在Docker中构建复杂网络。虽然pipework很强大,但它也仅仅只是一个第三方的工具罢了,我们希望Docker原生的支持。
     
      我从Docker 0.7版本开始就关注它的网络问题了,但我并不是直接一头扎进源码里研究。相反,我首先尝试研究LXC网络,我希望它可以帮助我找到问题的关键点并运用到Docker上。我联系了Jerome并且对在未来在Docker中嵌入golang-pipwork hack达成了共识。接下来就是个漫长的故事。时间过去七个月了,我们并没有在**Docker-network-land**这个项目上投入太多的精力,在GitHub上也鲜有人讨论网络相关的问题。当我打开那些需要解决的问题的链接的时候,我觉得是时候需要改变了。Docker们关心的是那些优先级比较高的问题因为我们已经有了pipework以及pipework衍生的工具。与此同时,越来越多的实用性工具使得我们能突破Docker的网络局限。人们不再关心Docker的网络问题,而只是通过一小部分人修复那些已经存在的问题并添加一些新功能。


      转眼过了几个月的时间,我们最终决定开始改变现状。我们向官方提出了网络方面的[建议]()并建立了一个关于libnetwork的聊天室,尽管这些距离我们某些不成熟的想法有些遥远。现在参与讨论的人越来越多。在我的观点看来,这对Docker来说是至关重要的。值得欣慰的是社区里很多人也开始意识到这个问题。


      Docker的网络问题是极其复杂的,包括表面的和深层次的。它会涉及到非常多的项目,小到本地开发环境,大到类似牛逼的kubernetes项目。当你阅读了Kubernates关于网络方面的[设计文档后,你会发现一些好点子。在过去的一年时间里,我们开发了很多工具和类库去解决网路问题。我真的希望正在进行的讨论不会影响(fuck)到我们现有的工作,而是能够为新人创造更好的环境。我之所以使用Fuck这个词是因为我曾见识过一个坏决定是如何让所有人失望的,这也是我对Docker的一点担心。也许这些都只是人生经历罢了,正如俗语有云:历史交不给我们什么,所以我只是替古人担忧罢了。
  
        对于我来说Docker不仅仅意味着软件交付,不仅仅意味着devops。它是另一种开发工具。对我而言,Docker应该是一个工具,而且也许更重要的是一个平台。嗯,是开放平台,并且不是我们经常讨论的那种软件平台。如果Docker准备让用户或者公司在现有的平台上构建其解决方案,那它就不应该依赖其它项目。我希望官方不会这样做,因为Docker的伙计们已经知道摆脱依赖LXC并使用自己的libcontainer项目来替代。类似的处理思路应该用到网络问题的上。
      
      目前看到有一些计划是打算将OVS项目关联到Docker上来,从Linux Kernel  3.3开始,OVS项目就是内核的一部分。当我听到这个的时候我觉得是不是脑袋让驴踢了。首先声明我并不是反对使用OVS,实际上,它是一个非常不错的网络工具套件。它的设置比较复杂,对于新手来说有一个陡峭的学习曲线,但是一旦学会,OVS就可以帮你事半功倍。关于这个话题我听到的一个讨论是:“**如果OVS工作在Docker上,那么工作一切都变得很美好**”。让我告诉你,亲们:如果让我花费大量时间学习它,最后的结果只能是:“还好,可以用”。我并不想说的那么愤世嫉俗,实际情况是在某些常用环境下OVS会崩溃。因此,使用OVS只是一种疯狂的想法罢了。我并不想大家都认同我的说法。是的,你可以什么都不做,也可以把他当做日常基础工作。你可以让系统管理员和网络工程师很开心,但是不全是这样,同时也会让开发者很孤独。这是一个复杂的话题,当然解决问题并非只有一种方法(没有银弹),所以我们不奢望真的有银弹罢了。

      这个帖子并不是讨论是否将OVS成为Docker的一部分。我选择谈到OVS是因为,这可能是解决Docker网络问题的方案之一。我们讨论的范围有且不限于Docker的第三方项目,无论它是否开源。截止到目前,Docker们已经做了一些工作去避免这种问题的出现。很重要的一点是我们之前谈到的问题:避免对某个项目的依赖。一旦你决定使用某个项目,你的注意力就不得不集中在避免损害已经作为有机整体的平台构建项目的相互依赖的问题上。正如我们现在讨论的项目例如 flannel、weave、docket等,还有更多的新增的项目平台带来的众多依赖项目上。

      目前有一个基于可插拔的网络后端设置看起来是个不错的建议。但是这还需要一点时间,直到有基于硬件的可插拔的架构设计而不仅仅是解决网络问题,还更多的Docker参与和时间的检验。这个改变发生在Docker的核心,目前正在从移动终端转移到网络部分。我认为,给Docker们建立一个健壮的默认的后台,而不是给用户一些列的解决方案,强迫他们使用固定的路径,是一个比较稳妥的做法。不可避免的我们会对其他项目引用和依赖,这将不会影响目前的Docker用户,并且不会给未来的Docker用户带来影响。我们都明白不可能让每个人都满意,但是你可以创建一个友好的环境,用来建立自己的解决方案,这样使得不同用户可以共同工作而不会相互影响。如果你和我一样加入可插拔的api项目,那么我们就是在同一条船上的人了。

      说起Docker网络的未来,我真的很兴奋,我非常期待Docker能做出最正确的决定。最重要的是,我希望本文能激发更多的人能参与其中一同完善这个项目。

看完上述内容,你们对如何看待Docker网络管理的未来有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网精选频道,感谢大家的支持。

--结束END--

本文标题: 如何看待Docker网络管理的未来

本文链接: https://lsjlt.com/news/295462.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 如何看待Docker网络管理的未来
    今天就跟大家聊聊有关如何看待Docker网络管理的未来,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。       最近有很多关于Docker网络管理的...
    99+
    2023-06-19
  • 网络空间安全专业未来的发展前景以及薪资待遇如何?
    不管是考虑未来报读专业的准大学生,还是初入职场的实习生,亦或是想要跳槽转岗的职场人,当我们开始选择一份工作时,本质上都在考虑以下三个问题: 这份工作的收入水平如何;这份工作有没有发展前景;这个行业未来的薪资涨幅大不大。 那么,IT行业里网络...
    99+
    2023-09-13
    web安全 网络安全 信息安全 渗透测试 黑客
  • Docker网络管理的示例分析
    这篇文章主要为大家展示了“Docker网络管理的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Docker网络管理的示例分析”这篇文章吧。一:简介 CNM(Container ...
    99+
    2023-06-04
  • docker如何查看container-none网络模式
    小编给大家分享一下docker如何查看container-none网络模式,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!cont...
    99+
    2024-04-02
  • win10未识别的网络如何处理
    如果您的Windows 10无法识别网络,您可以尝试以下解决方法:1. 检查网络连接:确保您的电脑已成功连接到网络,并且网络连接是稳...
    99+
    2023-09-15
    win10
  • 怎么看待代理服务器对网络的帮助
    小编给大家分享一下怎么看待代理服务器对网络的帮助,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!针对互联网大数据应用场景的需求,很多互联网从业者都需要使用代理ip,...
    99+
    2023-06-15
  • docker如何查看未运行的容器
    要查看未运行的容器,可以使用以下命令:1. 使用`docker ps -a`命令列出所有的容器,包括运行中和停止的容器。```she...
    99+
    2023-10-09
    docker
  • 如何看待网页的HTML静态化
    今天就跟大家聊聊有关如何看待网页的HTML静态化,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。网站静态化是网站优化的重要手段之一。主要效果是静态页面可以引起搜索引擎的重视,而搜索引擎...
    99+
    2023-06-12
  • Docker中怎么管理容器的网络设置
    在Docker中,可以使用以下方式来管理容器的网络设置: 使用docker network create <network...
    99+
    2024-04-02
  • Win8通过任务管理器查看网络状态了解网络是如何工作的
      Windows任务管理器提供了有关计算机性能的信息,并显示了计算机上所运行的程序和进程的详细信息;如果连接到网络,那么还可以查看网络状态并迅速了解网络是如何工作的。下面大家就跟小编一起来学习下如何通过任...
    99+
    2022-06-04
    网络 任务管理器 状态
  • 如何优雅的给Docker配置网络代理
    这篇文章主要介绍了如何优雅的给Docker配置网络代理,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。有时因为网络原因,比如公司 NAT,或其它啥的,需要使用代理。Docker...
    99+
    2023-06-15
  • 在命令行中如何使用nmcli来管理网络连接
    这篇文章主要介绍在命令行中如何使用nmcli来管理网络连接,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!nmcli 命令赋予你直接在 Linux 命令行操作 NetworkManager 工具的能力。nmcli&nb...
    99+
    2023-06-15
  • 如何使用docker inspect命令查看容器网络信息
    小编给大家分享一下如何使用docker inspect命令查看容器网络信息,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!查看容器...
    99+
    2024-04-02
  • 如何在ArchLinux中管理网络连接
    在ArchLinux中,网络连接可以通过命令行工具和图形界面工具来进行管理。 使用命令行工具: 使用ip命令来管理网络接口和路...
    99+
    2024-03-13
    ArchLinux
  • ASP 状态管理的未来:探索前沿技术,引领网站数据管理新潮流
    ASP状态管理对于网站的正常运行至关重要,它允许网站在用户之间保存和共享数据。随着网站变得越来越复杂,对ASP状态管理的需求也在不断增长。因此,需要探索前沿技术,以满足网站数据管理的新潮流。 1. 内存缓存(In-Memory Cach...
    99+
    2024-02-24
    ASP 状态管理 技术 前沿 趋势 实现方式
  • 如何理解docker中的网络模式和跨主机通信
    今天就跟大家聊聊有关如何理解docker中的网络模式和跨主机通信,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Docker的四种网络模式Bridge模式当Docker进程启动时,会在...
    99+
    2023-06-05
  • 租用海外网络服务器如何管理
    租用海外网络服务器管理的方法:1、进行海外服务器的默认设置,404错误页面设置及伪静态设置等,以免搜索引擎被禁止抓取网站;2、选择大品牌的服务器商,保证海外服务器产品质量及售后技术支持服务,以便能及时处理售后问题;3、进行URL规范化,设置...
    99+
    2024-04-02
  • 如何管理阿里云服务器 ECS 中的网络
    本文将详细介绍如何在阿里云服务器 ECS 中管理网络,包括如何设置默认网关、如何设置静态 IP地址、如何设置子网划分和如何设置安全组。希望通过本文的介绍,能帮助您更好地管理和使用阿里云服务器 ECS。 一、设置默认网关默认网关是网络中的关键...
    99+
    2023-12-16
    阿里 服务器 网络
  • 如何查看电脑的网络端口?
    Windows+R调出运行界面。  2、然后输入cmd,点击确定进入DOS命令。  3、进入DOS命令后,输入netstat/n,然后按回车键。 输入netstat /n,按回车键后,就可以看到电脑的端口了。 整个过程中对应的TCP...
    99+
    2023-09-05
    windows 网络 运维 服务器 tcp/ip
  • Linux如何进行网络管理、软件安装、进程管理操作
    这篇文章给大家分享的是有关Linux如何进行网络管理、软件安装、进程管理操作的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 1、网络管理1.1 网络状态查看在Linux中经常使用ifconfig,rou...
    99+
    2023-06-15
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作