写点什么

Amazon 的容器管理服务增加了对 Windows Docker 的支持

  • 2017 年 2 月 06 日
  • 本文字数:1452 字

    阅读完需:约 5 分钟

Amazon 在容器管理服务方面已经完全打败 Microsoft,Azure 目前尚不能支持 Windows 容器管理服务,而 AWS 的 EC2 Container Service 已经能够支持 Windows 容器——尽管这项测试服务仍然存在一些警告。 Amazon 提供了一个 CloudFormation 模板,用于创建基于 Windows 的 EC2 容器集群,用户只需点击几下即可开始使用。 Jeff Bar 的博客文章声称该项服务已准备好“在我们正式投产之前最后完善该项功能的同时容器化和测试 Windows 应用程序”。

Windows Server 2016 在 2016 年 9 月发布以来一直支持 Docker。在运行容器之前要先激活一项 Windows 功能,下载 Docker runtime,使用基于 Microsoft 的 Windows Server Core 的映像或 Nano Server 映像。 AWS 构建了一个自定义的 Windows Server 机器映像,该映像已配置 Docker,并使用 CloudFormation 模板在 EC2 中创建虚拟机。 Amazon 建议在不同的集群中运行 Linux 工作负载和容器化的 Windows 工作负载,但在集群中可以使用 Docker Hub EC2 Container Registry 产生的映像。

Windows 主机的用户体验与现有的基于 Linux 的平台相同:容器主机作为 EC2 虚拟机运行,并使用 AWS 任务定义来启动容器。 Windows 任务定义并不包括所有任务功能,其中某些功能被列为具有未知行为。在网络堆栈中缺失许多功能,且不支持容器和自定义 DNS 设置之间的链接。

由于这些缺失的功能,以及 Windows 不支持覆盖网络的事实,很大程度上限制了目前 AWS 中的 Windows 容器的可用性。如果缺乏覆盖网络,在不同主机上运行的容器之间将无法进行通信,因此 Web 应用程序容器无法把消息发布到消息队列容器或将数据保存到数据库容器,除非它们都托管在同一个 EC2 上。这个局限性将在 Windows 更新中进行解决,但发布时间尚未公开。在这个问题解决之前,这项服务只能适用于无状态架构,即其应用程序组件在容器中运行,而使用平台的其他部分:如 Simple Queue Service 进行通信和 Relational Database Service 进行存储。

实现覆盖网络之后,用户就能够在同一个 Docker Swarm 里在不同的操作系统上运行主机,因此 ECS 保持集群分离的建议可能会改变。在同一个集群中运行 Linux 和 Windows Docker 引擎便于用户采用混合解决方案,即使用任何堆栈中的最佳技术,并让平台在它们之间进行连接。采用分布式解决方案则可以在 Linux 上使用 Nginx 容器,代理在 Windows 容器上运行的完整 ASP.NET 应用程序,但对所有组件使用相同的 ECS 基础架构和管理接口。

Azure 容器服务 Google 容器引擎目前尚不支持 Windows 管理容器服务,尽管在它们的云服务中有 IaaS 选项。 Microsoft 提供 ARM 模板来运行 Windows Server 2016 VM。该 VM 预配置了 Docker 以及下载到 VM 上的 Windows Server Docker 映像。 Google Compute Engine 支持在 VM 上运行的 Windows 容器,但没有自定义机器映像,因此用户需要自行在Windows 上配置Docker

其他公司也开始对Windows Docker 进行容器管理服务的研究。 Kubernetes 1.5 版本的一个主要功能是支持 Windows DC / OS 也声称即将支持 Windows 。随着 Docker 和 Microsoft 之间的商业合作,很可能还将推出一个 Windows 版本的 Docker Datacenter 。届时用户将有一整套全面的,用于管理内部容器或云服务中的容器的产品可供选择。

查看英文原文 Amazon’s Managed Container Service Adds Support for Docker on Windows


感谢刘志勇对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2017 年 2 月 06 日 18:001022
用户头像

发布了 22 篇内容, 共 41805 次阅读, 收获喜欢 2 次。

关注

欲了解 AWS 的更多信息,请访问【AWS 技术专区】

评论

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

珠联壁合地设天造|M1 Mac os(Apple Silicon)基于vscode(arm64)配置搭建Java开发环境(集成web框架Springboot)

刘悦的技术博客

Java vscode spring Boot Starter JDK11 m1

人人都爱Kubernetes,Docker难道就不香了吗?

守护石

Docker Kubernetes DevOps

关于OpenHarmony 2.0共建进展

罗燕珊

开源 鸿蒙 OpenHarmony

浪潮云洲链斩获2020-2021年度新一代信息技术创新产品殊荣

浪潮云

Nginx基础配置-反向代理

梁龙先森

nginx 大前端

Hadoop定位问题日志跟踪

InfoQ_Springup

hadoop

Too many open files 的四种解决办法

ilinux

Flutter开发:Another exception was thrown:Unable to load asset:…的解决方法

三掌柜

5月日更

Pulumi 如何在 Windows 环境中设置

HoneyMoose

5G进京 “赶考”记:“占得上、保持稳、体验优、信号好”四道考题,分别打几分?

脑极体

Windows 任务管理器中如何显示 CPU 逻辑处理器情况

HoneyMoose

中公、马士兵、千锋、拉勾入局,腾讯课堂“薪选”IT人才培养按下加速键

DT极客

快成物流科技 x mPaaS | 小程序容器加持下的技术架构“提质增效”

蚂蚁集团移动开发平台 mPaaS

小程序 移动开发 mPaaS

多方安全计算:隐私保护集合求交技术

华为云开发者社区

数据集 PSI 隐私保护集合交集 可信 伪随机函数

聊聊dubbo协议

捉虫大师

这一次,彻底搞懂 Go Cond

HHFCodeRv

Go 语言

高并发调优backlog多大合适?

运维研习社

运维 Nginx PHP-FPM 5月日更 并发调优

【和平精英x TcaplusDB】两周年,让我们一起加油!

tcaplus

数据库

微软 WSL 重装操作系统

HoneyMoose

音频均衡器EQ

floer rivor

音视频 Eq

拥有5大核心竞争力的华为云GaussDB,成SACC2021最靓那一个…

华为云开发者社区

数据库 华为云 GaussDB 存算分离 GaussDB(for Redis)

CMMI V2.0丨如何通过CMMI真正在企业中的实施规模化敏捷开发

渠成CMMI

软件 研发管理 CMMI

“为爱而生 温暖陪伴”——2021年中国洗地机行业发展峰会圆满落幕

DT极客

并行文件存储和分布式 NFS 文件存储有何不同

焱融科技

容器 云原生 高性能 文件存储 技术博客

❤【520特别祝福篇】愿有情人终成眷属,已成眷属爱情稳固

浩宇天尚

爱情 5月日更 520单身福利 520 单身福利

Golang function

escray

学习 极客时间 Go 语言 5月日更

从技术趋势看质量赋能

BY林子

敏捷 软件测试 质量赋能

Windows Terminal 安装和运行

HoneyMoose

PKI系统简介

上海派拉基础研发

CA PKI

保障实时音视频服务体验,华为云原生媒体网络有7大秘籍

华为云开发者社区

云原生 音视频 华为云 媒体网络 架构分层

浅谈负载均衡

Damon

负载均衡 5月日更

Amazon的容器管理服务增加了对Windows Docker的支持-InfoQ