NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Docker 1.12.0 改进了服务的负载均衡参数

  • 2016-08-28
  • 本文字数:732 字

    阅读完需:约 2 分钟

在最新发布的 1.12.0 版本中,当在集群中启动服务时,Docker 通过 DNS 和 IP 虚拟服务器(IPVS)为服务的负载均衡引入了新的参数。

新版 Docker 引入了内置的 DNS 服务器,当启动一个容器时,可以通过它使用 --net-alias 参数来为容器的 IP 地址映射别名。这个特性从 1.10 后就可使用。从 1.11 版本之后,Docker 也支持了基于循环 DNS 的负载均衡。

在基于 DNS 的负载均衡中,一个服务的名称(别名)会被映射到多个 IP 地址。在这样的情形下,服务其实是运行在容器的 IP 地址背后。当进行 DNS 查询时,DNS 服务器将会响应多个 IP 地址,同时,它也会打乱返回的 IP 地址的顺序,这使得从不同客户端发送的请求将会命中不同的 IP。但必须通过手动映射一个别名到多个容器的 IP 地址才能实现循环负载均衡。

在 1.12.0 版本中,Docker 添加了内置的对于服务的负载均衡的支持,原理是使用了称为 IPVS 的 Linux 特性。使用 Docker 的集群引擎,一个服务可以通过命令行和必须的数个复制品(容器)来声明。再也不用为服务手动地指定别名。在内部,该服务的 DNS 名称被映射到了一个虚拟 IP(VIP),在这里这个特性与 IPVS 联系了起来。当进行 DNS 查找时,VIP 将被返回。

IPVS 是一个 Linux 内核特性,它可以使得第四层(传输层) TCP/UDP 流量 被转发到后端服务器。它是基于网络过滤模块的,其形成了在 Linux 内核中的包过滤和网络地址转换实现的基础。

当一个服务请求到达了 VIP,它会被转发到一个托管服务的后端容器中。通过这样的方式,流量会被均匀地分发到容器之中。这种负载均衡服务的方式和 Consul 非常相似,它是服务发现软件。Consul 也提供一个 DNS 服务器,它可以在每次查询完成时返回多个 IP 地址。

查看英文原文: Improved Options for Service Load Balancing in Docker 1.12.0

2016-08-28 19:001844
用户头像

发布了 32 篇内容, 共 18.5 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

JVM自定义类加载器在代码扩展性的实践

Java工程师

JVM 代码 类加载器 实践 #java

SpringBoot接入轻量级分布式日志框架(GrayLog)

Java工程师

程序员 分布式 Web spring-boot

调查:区块链游戏玩家将玩NFT游戏视为一份潜在的全职工作

CECBC

深度关注 | 元宇宙如何改写人类社会生活

CECBC

golang里的一些奇奇怪怪的东西

不登山的小鲁

golang Go 语言

Axios 教程:Vue + Axios 安装及实战 - 手把手教你搭建加密币实时价格看板

蒋川

Vue Node axios

人工智能1秒检测一辆车,TA助力广本新车质量排名第一

百度大脑

失败案例之安全抓包测试

网络安全学海

网络安全 信息安全 渗透测试 安全漏洞 网络抓包

第三空间娱乐体验重构:AITO 问界 M5雕刻的七宝楼台

脑极体

实用机器学习笔记二十九:NLP 中的微调

打工人!

机器学习 学习笔记 nlp 机器学习算法 3月月更

Linux之alias命令

入门小站

Linux

区块链正在塑造医疗保健生态系统!

CECBC

Flutter 开发一个常用的登录界面

岛上码农

ios 移动端开发 3月月更 flutter开发 安卓开发

在线CSS3压缩美化格式化

入门小站

工具

Redis集群架构剖析(2):槽位

非晓为骁

redis集群 slots 分布式,

《软件开发的201个原则》思考:3.开发效率和质量密不可分

非晓为骁

程序员 个人成长 软件工程 软件开发原则 开发质量

又一重量级国赛来啦,保研可加分 | 中国软件杯飞桨遥感赛道正式启动

百度大脑

在线JSON转HTML工具

入门小站

工具

Java 中的静态字段和静态方法

踏雪痕

Java 3月程序媛福利 3月月更

架构实战营模块九-毕业设计-电商秒杀系统

Jude

架构实战营

"三高"Mysql - Mysql的基础结构了解

懒时小窝

MySQL 数据库

程序员的工作就只有写代码么?

程序员鱼皮

经验

Redis Pipeline原来是这么用的

Java工程师

数据库 程序员 代码 pipeline redis'

Top Trending Libraries of 2021,PaddleOCR再开源8大前沿顶会论文模型!

百度大脑

重新刷新你对Redis集群的理解

Java工程师

数据库 复制 数据共享 集群 redis'

毕业总结

Geek_93ffb0

「架构实战营」

软件入门之《编程指南》-学习路径和经验随谈

hongfei

个人成长 编程好习惯 经验总结

重新开始学习测试驱动开发

escray

学习笔记 测试驱动开发

北京大学董豪老师解密人工智能开发工具的过去与未来

OpenI启智社区

人工智能 开发工具 启智社区 北京大学

全球央行积极推进CBDC 俄罗斯制裁或成催化剂?

CECBC

CorelDRAW2022下载及新增功能讲解

茶色酒

cdr2022

Docker 1.12.0 改进了服务的负载均衡参数_DevOps & 平台工程_Hrishikesh Barua_InfoQ精选文章