写点什么

微软 Azure 云的 Docker 之路:兼容、原生与未来

  • 2014-11-28
  • 本文字数:2277 字

    阅读完需:约 7 分钟

全球范围内技术领先的微软 Azure 云,无论从技术储备上还是从开发社区上,一直以来都受到业界的广泛称赞。与传统的云计算服务商不同,Azure 这个后起之秀凭借 Windows Server 和混合云等技术,正逐步获得更多的市场占有率。从新的存储架构到基于 Visual Studio 的开发框架,甚至新的硬件架构设计,Azure 云仍然一直在不断自我革新和进步。

现今,商业模式与商业气候对人们的创新要求日益增加,如何简单快速部署可移植的分布式的应用是近几年云计算领域努力解决的问题,Docker 在这样的大背景下应运而生,并迅速获得社区认可,它能够在几分钟甚至更短的时间之内就将代码开发转换成产品,实现实时转换。Docker 是一个开源的应用容器引擎,它能帮助开发者打包应用以及应用的依赖包,并构建为一个可移植的容器,从而发布到任何流行的 Linux 或者 Windows 机器上,或者虚拟机。Container 完全使用沙箱机制,容器相互之间不会有任何接口,就如同 iPhone 的应用之间没有公共部分。这样的优势非常明显,应用的移植几乎没有性能开销,可以很轻松地在机器和数据中心中运行。最重要的是,这些容器不依赖于任何语言、框架或包括系统。

在业界对容器技术强烈的需求导向下,各大云计算厂商都纷纷开始考虑采用 Docker 作为其虚拟化技术的一部分。同样的,Azure 也走上了一条先兼容再原生最后为己所用的 Docker 技术之路。

一、兼容

鉴于 Docker 在云计算虚拟化领域的迅速火热,Azure 云首先采取了在自己的 Linux 虚拟机上兼容 Docker 的方式来吸引 Docker 社区的开发这。2014 年 6 月 9 日, Docker 开发者大会上,Azure 云合作伙伴项目经理 Corey Sanders 展示了直接利用 Azure 跨平台工具集(由微软开放技术组开发)在其 Linux 虚拟机上运行 Docker。这种兼容的方式,仅通过一条简单的“azure vm docker create”命令即可调用 Docker 进行容器的创建。更多细节步骤可以参考微软开放技术组给出的用户说明。在而后的7 月,Azure 则进一步宣布与Google 和Docker 合作来支持 Kubernetes libswarm 开源项目在其云平台上的运行。Kubernetes 是 Google 公司多年以来进行大规模容器管理的经验汇总而来的开源工具,发布以来收到业界广泛的好评,目前处于容器管理方面的领头位置,此前 InfoQ 也对其基本概念、构件等相关内容进行了介绍。Libswarm 则是Docker 官方团队开源的一款容器管理工具。Azure 云在这些工具的帮助下,更加灵活的支持着开发者的需求,使他们能够快速的构建、部署和管理跨系统、跨语言甚至公有私有混合的容器集群。在这里,无论是.NET、Python、Ruby、Node.js 还是Hadoop 和Oracle,都能够和Azure 云平台无缝结合并运行,极大的简化了Windows Server 系开发者的开发工作。更多的工具正逐渐加入Azure 云管理工具集,如Puppet、Chef 等。

在Windows Server 下一个开发版本中,Docker 引擎将会成为一个重要组成部分。同时,支持Windows Server 的Docker 引擎镜像将会在Docker Hub 平台上发布,超过45000 个Docker 应用已经发布在了这个社区上。这将会大大帮助开发者在Windows Server 和Linux 平台上灵活地进行选择。

二、原生

兼容模式虽然是最快使用Docker 的方式,但是开发者仍然需要准备Linux 虚拟机作为Docker 管理主机,这在一定程度上干扰了开发者的便捷开发。为此,2014 年11 月18 日,Azure 云高级经理Khalid Mouss 在官网发布了可以直接在Windows 服务器环境下运行的原生Docker 客户端,用来管理运行在Linux 虚拟机上的Docker 镜像。而在此之前,开发者只能使用Linux 下的Docker 命令或boot2docker 工具来进行管理。这一举措极大简化了开发者使用Docker 容器技术的曲折程度,得到了社区的热烈反馈。更多编译和使用原生客户端可以参考官网给出的教程。当然,目前原生软件还存在很多问题。让原本运行于Unix 系统下的Docker 在Windows 系统上跑起来绝对不是一件轻而易举的事情。而目前软件的功能还仅限于将Docker 客户端的代码编译通过,还不能在Windows 环境下运行Docker 监控程序或Docker 容器。

除了积极采用Docker 容器技术以外,Azure 云团队也利用微软研究院强大的实力做了一些容器技术的自主研发:Drawbridge。主要针对现在Docker 容器的安全性。相比之下,Docker 功能比安全更引人瞩目,但这并不意味着安全是可以忽略的。坦率来讲,现在的容器并不安全。虚拟机与宿主之间共享数据过多又不能有效隔离,影响了容器安全性,至少在云计算容器用户间还达不到安全性要求。Drawbridge 由两部分构成,分别是一个安全隔离容器picoprocess 和一个运行于安全容器之内的系统Library OS。整个技术基于Windows Server。

三、未来

2014 年 10 月 15 日,Azure 云和 Docker 共同举办了 Docker 全球开发者大会。在 Azure 云副总裁 Jason Zander宣布了微软与 Docker 的合作伙伴关系以后,强强联合的两只技术团队对未来做出了如下设想:

  • 在下一个版本的 Windows Server 中自带 Docker 容器引擎;
  • 在 Azure 管理门户和镜像库中融合 Docker Hub;
  • Azure 持续发布对 Docker 开放 API 的贡献,保证跨平台移植得以实现;

微软与 Docker 的合作是强强联合,在各自的领域中两个公司都是行业翘楚。Windows Server 是企业级的应用系统,Docker 的容器技术已经日趋炉火纯青。不难预见,Azure 云的 Docker 之路将会给应用创新的商业市场中带来巨大变革,带动整个产业竞争力的提高。


感谢郭蕾对本文的策划和审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-11-28 06:465200
用户头像

发布了 268 篇内容, 共 133.2 次阅读, 收获喜欢 24 次。

关注

评论

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

安全保护策略:iOS应用程序代码保护的关键步骤和技巧

独享http代理与普通http代理相比,独享贵的因素有哪些?

巨量HTTP

代理IP http代理

五个很实用的IDEA使用技巧

越长大越悲伤

Java Python IDEA pycharm

满足更高算力需求,英特尔率先推出用于下一代先进封装的玻璃基板

E科讯

免费、安全、可靠!一站式构建平台 ABS 介绍及实例演示 | 龙蜥技术

OpenAnolis小助手

开源 操作系统 龙蜥社区 龙蜥大讲堂 abs

2023英特尔on技术创新大会:助力开发者,让AI无处不在

E科讯

至顶科技携手中青博联发布品牌升级千流出海计划 助力中国企业走向海外市场

千流出海

出海 出海服务商

超详细API插件使用教程,教你开发AI垃圾分类机器人

华为云开发者联盟

人工智能 API 华为云 华为云开发者联盟 企业号9月PK榜

【腾讯云 TDSQL-C Serverless 产品测评】"橡皮筋"一样的数据库

指剑

腾讯云 Serverless 数据库、

华为重磅亮相 KubeCon China 2023,与你共启大模型时代的云原生!

华为云开源

云原生 华为云 KubeCON

AI在玩一种很新的艺术,700万网友在线围观,ControlNet又立功了

Openlab_cosmoplat

AI

eBPF 仅仅是实现可观测性的一种手段

JainChen

可观测性 ebpf Kubernetes, 云原生, eBPF #监控

怎么使用cpu调用SDK进行开发?

矩视智能

机器视觉

提升开发效率的低代码思路

树上有只程序猿

软件开发 低代码 可视化开发

用低代码开发工具高效构建企业门户

力软低代码开发平台

极光笔记 | 大语言模型插件

极光GPTBots-极光推送

人工智能 插件 AIGC 大语言模型

低代码平台技术分享官丨日志实时隔离,助力高效发布

inBuilder低代码平台

低代码

企业该如何迈好降本增效的第一步?

ToB行业头条

无代码开发和低代码开发的本质区别

互联网工科生

无代码开发 低代码开发 JNPF

开启全球化新篇章,数字经济推动消费出海论坛在京召开

千流出海

出海 消费品企业 出海企业

基础概念回顾:云原生应用交付

NGINX开源社区

云原生 应用交付 基础概念

StarRocks 社区:从初生到两周年的进化之路

StarRocks

数据库 大数据 数据仓库 数据湖 湖仓一体

解锁 zkSync Era:开创全新的 Layer 2 扩展时代

Footprint Analytics

以太坊 eth Layer 2

腾讯云大数据平台 TBDS全面升级,加速构建安全可控的大数据生态

腾讯云大数据

TBDS

微软Azure云的Docker之路:兼容、原生与未来_微软_张天雷_InfoQ精选文章