说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

揭秘微软的Container技术之一Drawbridge

HTML文档下载 WORD文档下载 PDF文档下载
有人说Windows Server只有拥有了自己的Container技术才能继续保持与Linux的抗衡。但微软对于其Container技术一直没有明确的发布,只能从一些公开的演讲中,搜集到一些信息。

在构建软件定义的数据中心方面,VM技术已逐渐显露出力不从心,Container技术作为后继者慢慢崭露头角。Container技术由来已久,但开源技术Docker的出现,为开发者以微服务的形式构建可移植的应用,提供了标准。随着Docker技术的成熟,容器已经能够满足应用的可移植性、自动性、编排和扩展性。

作为一种开源的Linux Container技术,Docker已经得到IBM、Google、RedHat、VMware和微软等多个公司的支持,这些公司纷纷宣布在自己的操作系统、虚拟机或云平台中支持Docker。微软更是在5月份宣布,在其Azure云服务的IaaS组件中可运行基于Linux的Docker容器。至于在PaaS服务中可用,应该只是时间问题了。Azure云服务部门CTO Mark Russinovich 在9月份公开表示:“我们也在考虑这个问题,许多Azure云的PaaS用户已经有了这个需求。”

Russinovich确认了正在将其代号为“Drawbridge”的Container技术商业化的计划,Drwbridge基于库操作系统(library OS),library OS由微软研究院Galen Hunt在2008年发起。

“基于VM的虚拟化技术其效率不高,而传统的OS虚拟化技术,如Linux Container技术,安全性又不足,所以Drawbridge选择了一条两者兼顾的道路,把Kernel的内存状态放到了Container中(这里指Windows的Container),用户间的隔离更彻底,而各个Container之间依然共享一部分资源,所以相较VM虚拟化效率要高。”曾经负责过Drawbridge项目的前美国微软首席开发经理左玥告诉笔者。

Drawbridge的基石:库操作系统(library OS)

在Galen 2011年发布的一篇论文中,详细说明了win7库操作系统中运行Excel、PowerPoint和Internet的工作原型。library OS的想法是,一个应用所依赖的操作系统的特性,会体现在应用的地址空间上。一个连接宿主机操作系统内核和库操作系统的小抽象集合,提高了系统安全性,也使得系统各组件能够更快地改进。

在论文中,详细描述了一个win7 library OS的工作原型,其中运行了诸如Microsoft Excel、PowerPoint和Internet Explorer等常用应用。证明了通过对网络协议的重用,可以实现在各个独立、安全隔离的库操作系统实例的桌面共享。每个实例的开销相比全虚拟化要小得多,一个典型的应用只会增加16M的工作集和64M的磁盘空间。在库操作系统下面提供了一个新的ABI(应用二进制接口),保证了应用的移动性。我们也证明了只花费很小的开销,就可以达到当前很多硬件虚拟化的功能。

库操作系统会精简操作系统到固件层,将重点放在API和应用交付层面,而不是低层次的服务。定义了3种OS服务,包括:硬件服务、用户服务和应用服务。硬件服务包括了操作系统内核和硬件驱动;用户服务包括了GUI shell和桌面、剪切板、索引器等;应用服务包含了API实现,包括框架、渲染引擎、通用的UI控制等。

在Drawbridge中运行的应用可以访问Windows的核心特性和增强版的API,包括.NET CLR和DirectX。虽然被严格地隔离开来,但Drawbridge中的应用依然可以共享资源,包括屏幕,键盘,鼠标和用户剪切板。



在August TechMentor大会的Keynote上,Redmond的专栏作家Don Jones曾发表演讲讨论过库操作系统的话题。Jones说:“我们通常都将开发人员的开发理解为针对某一系统的开发,比如iOS开发、Android开发、Windows开发等,但这是不准确的,他们应该是在针对一种运行环境或一组API做开发。而这组API再关联相应的操作系统。”

Drawbridge VS Docker

在纽约举行的Interop大会上,Russinovich宣告了Drawbridge依然在使用。虽然他没说Windows的计划,也没有明确表示Drawbridge会被加到Windows Server和Hyper-V中。但可以肯定的是Drawbridge在Windows Server和Azure的工作已经在进展中了。Russinovich说在微软新的基于Azure的机器学习技术中,已经使用了Drawbridge容器技术。

“显然对虚拟化技术的加速已经不能满足我们的需求,所以我们借助了微软研究院的Container技术Drawbridge,这是一项我们内部一直在用的技术,我们正在试图将其公开化。”

虽然微软Azure也高调宣称了其对Docker技术的支持,但从Russinovich的态度看来,其将Drawbridge作为容器技术的优先选择,不断强调Drawbridge在部署微服务方面更安全。

Russinovich说:“在一个多租户的环境中,必然会有很多未知来源的第三方代码运行在同一个平台上,你需要为他们设立安全屏障。大多数云平台使用虚拟化技术来实现,而通过一个更小粒度的安全容器,能够更高效地实现,这就是Drawbridge的设计初衷。”

左玥告诉笔者,其实微软自身的Container技术与Docker并不矛盾,Docker是将Linux的Container技术标准化的工具,同样Windows的Container技术也可以使用Docker。

Windows Server的Container技术?

Sam Ramji,是Apigee(一家提供基于云的API服务提供商)的VP,5年前离开微软时,是新兴开源与Linux策略部门的头。在采访中,他认为Windows Server只有拥有了自己的Container技术才能继续保持与Linux的抗衡。

虽然不知道Server团队的头是怎么想的,但可以肯定的是他们也已经开始了Container技术方面的投入,预计在下一个Server版本中就会添加对Container的支持。左玥告诉笔者,Drawbridge只是微软的一种Container技术,至于未来Windows Server的Container support是否基于Drawbridge还有待观察。

老大开源,老二怎么玩?

以前的IT界,多是老大闭源,老二开源,现在老大开源了,闭源怎么玩呢?先不说去抢Linux的生意,首先Windows目前的用户是否对Container技术有这么强的需求呢?

Ubuntu也刚刚推出了自己的LXD,并且还强调并不是要替代Docker,而是作为Docker的补充。有幸在微信群中看到了大牛们讨论:有人说LXD就是要替代Docker,因为Docker的初衷本来就是LXC+RESTful API;还有人说Docker让容器更像进程,而LXD是让容器更像虚机。老外不是一直反对“重复造车轮”的吗?你怎么看?

(感谢前美国微软首席开发经理左玥对本文的审校和帮助!)

相关链接:Windows 'Drawbridge' Container Tech Sets Stage for Docker Battle

Why IT Pros Should Prepare for Microsoft's Stealth Library OS

如需要了解更多Docker相关的资讯或是技术文档可访问Docker技术社区;如有更多的疑问请在Dcoker技术论坛提出,我们会邀请专家回答。购票等问题可咨询QQ群:303806405。




Container技术日报公众账号已开启,欢迎关注!

Camera360开放SDK:拍照和滤镜一行代码搞定 一周消息树:计算机将拥有五感 人类面临威胁? 通晓数学的人就可以当程序员吗? 360发布企业版4.0 可自定义软件白名单 不要总是依赖机器 MongoDB扩展彰显分片功夫 Dell与HP的OpenStack的战略:渠道对抗SLA 路况电台王雷:未来车载系统会是Android的天下 移动周报:2012移动开发工具系列盘点 谷歌不愿错失机会 Android或不再成它人独享 黑客文化:Facebook公布2012年Hackathon大赛顶级“黑客作品” 中国移动音乐开放平台正式对外开放 GitLab 4.0发布 更好地支持PostgreSQL 傻瓜式移动应用开发平台:专访摩讯创始人赵健 日本DeNA进军中国智能电视,与海信战略合作 扎克伯格不仅为Poke编码,而且还“献声” Wordament:首款支持Xbox Live成就的iPhone游戏 使用Storm实现实时大数据分析! 孙博凯:微软日益开放,Windows Azure更加拥抱开源 大数据计算:如何仅用1.5KB内存计算十亿个不同的对象 我们为什么爱EC2和S3却彻底抛弃EBS 不畏Surface:诺基亚明年或推Windows平板 Linus Torvalds:用户程序被破坏永远是Kernel的问题! Python高效编程技巧 苹果加速硬件迭代 iPad5原型机曝光 宏碁推99美金平板 价格创历史新低 黑莓10全键盘版代号N系列,谍照泄露! 那些年我们用过的互联网产品 QQ亿级业务演变:从文件、音视频说起 少年企鹅的成长之旅:QQ体验设计发展史 全球超算Top 500:Linux已占93.8%,Windows或将消失 AWS东部地区再次发生宕机 Netflix等网站受影响 急!!! 一个烦人的问题 关于在应用程序中使用dll中资源的问题 關於並行執行的問題 也许你现在就会改变!! 看 http://Scjp.myrice.com 为什么要学Java 其实我们很封闭! 关于NT的小问题! 请问: 請問哪里有c++的書籍下載? 几个控件重叠在一起,怎样用代码的方式使其中的某个控件在运行时放至最上!?谢! 也许你现在就会改变!! 看 http://Scjp.myrice.com 其实我们很封闭! 如何发布我的网站? 怎样编程在Windows开始菜单的的“启动”栏中添加本程序的快捷方式? 谁有installshield 6.30的license注册文件? 请问:DataGrid在WebForm中明明有数据显示,但用浏览器看就没,为何? 显卡选择问题 ? 也许你现在就会改变!! 看http://Scjp.myrice.com 其实我们很封闭! 一个Acme .....???? 共计350分哟。急急。。。。我在PHP区有发言。但是还连不上SQL SERVER2000呀。。请进 boyqing(阿清):我的问题转到这了! 谁有installshield 6.30的license注册文件? 高手请进! 大家用java都来做什么????? 搞linux,unix底层的在中关村有没有搞头? 请问为什么我的CBuilder中在菜单项File/new下的无法找到RemoteDataModule?我是新手,请帮忙! 这几句TSQL有错?帮忙看看 请教关于网卡与声卡冲突的处理方法 谁有installshield 6.30的license注册文件? 请问如何在页面操作中保存dataset 怎样选定ListCtrl中的一行(包括subItem区域)? 类对象的实例和类的实例有什么区别?? 请问各位大虾,公文管理系统怎么做? 如何将TIF或TIFF文件转换成网页可以显示的JPG,或是GIF文件(最好给出JAR和例子) 这段程序应该怎么编? 各位老大,近来看看吧,一下午了也没有人来回答,苦命呀!加分...狂加....跳楼... TO net_lover(孟子E章) : 在datagrid中如何在获得当前字段内的内容? 高手都过来,这里有好几个问题!!! 安全队列问题?up有分! 如何在XML文件中獲得某個節點下重復的節點的個數﹐用IXMLNodeCollectionMA嗎? 谁解决了我的问题,我再送他100分一共200分!够吧! 滚屏公告栏滚动速度太快,如何调慢?帮帮忙 一个简单的问题? 需要紧急帮助!!!!!! 一个进制转换的问题? 刚开始看java,第一个hello,java程序 HELP ME!JAVA & XML的问题。。。 用过F1做报表的请进 在java里怎样创建自己指定目录,如不是文件? 关于C51串口通讯问题? Realplay的问题 RDS无法启动业务对象上的方法? 为什么蚂蚁等小昆虫可以在天花板上爬行?叫蚂蚁等小昆虫都可以爬到天花板上,就算天花板再光滑都可以,但是人不行(除非你是蜘蛛人大概还可以),好象也没有听说过它们的脚构造特殊,也 蜗牛到底属不属于昆虫科学本上有一道题说:野生的蜗牛是农业上的_______(填“害虫”或“益虫”).是填害虫吗?还是,这道题根本不对,蜗牛不属于昆虫.. 从哪里看出法布尔沉溺于昆虫世界 为何昆虫能反地心力,在天花板上爬行? 蜗牛算动物还是昆虫? 到底有没有红外线夜视望远镜呢? 请问蜗牛是昆虫么? 家里出现的蜗牛身上有没有寄生虫或者血吸虫我家潮湿的地方有时候好出现蜗牛,我听说蜗牛身上有寄生虫和血吸虫,请问是这样的吗?我们这是北方,河南.这样蜗牛到底有没有害 语文六年级上册的14课《狼与鹿的故事》要求全部的资料 关于描写大海的好句子20句OK 军用望远镜和民用望远镜的区别是什么? 法布尔的昆虫记 全文昆虫记全文出版社:哈尔滨页 数:219页目录蜘蛛黑肚皮的塔蓝图拉毒蛛虎纹园蛛狼蛛狼蛛的家庭生活天生攀岩家蜘蛛离乡记蟹蛛蟋蟀蟋蟀的住所蟋蟀的歌蝉蝉和蚁蝉的 描写大海的句子 如何辨别、认识军用望远镜九九式甲HJ8342是哪一个兵种使用的望远镜?是否有这一款望远镜?上标有50X50 168FT AT 1000YDS ,请内行人士给以解释. 夏天五种会叫的昆虫? 请问这是什么虫,好像蜗牛啊!可是比蜗牛大好多.可不可以吃? 军用望远镜和民用望远镜观测效果有什么不同,价格差别多少? 描写蓝天的比喻句 急呀.快!谁有好的句子,最好多写几句湖水的也行 这是什么虫子呀?像蜗牛!今天下雨了,我在冲凉的时候看见的,身体像蚂蝗,爬行想蜗牛,比蜗牛稍微快,行走像蛇一样S形,身体像个T字形. 这是什么蜗牛?昆虫鉴定 描写理想的比喻句快,我急用,最好是自己想的! 蜗牛是一种昆虫是什么说明方法 请问红外线夜视望远镜大约多少钱 是描写山的比喻句不是用山比喻什么是描写山的比喻句不是用山比喻什么,要五句 夏天会鸣叫的昆虫有哪些 望远镜红外线怎么开 夏天家里虫子多怎么办啊每次到夏天虫子就开始多起来了,那些虫子有点像蚊子,小小的可能纱窗都挡不住,也不知道是外面进来的还是屋里的,反正我的房间很久都不打扫卫生的在家光着膀子上 夏天会鸣叫的昆虫 谁有描写大海的现代诗歌要有 作者和 出处 用四个又是写一个比喻句 红外线望远镜价格 大概多少 天文望远镜与普通望远镜区别我有一台天文望远镜,请问与普通望远镜的区别,除了倍数和架子意外还有什么区别?可以用来进行户外观景吗? 如何把(√3)*3cosA-sinA表示成 r*cos(A+α) 红外线望远镜报价 好吗 极坐标:p(2cosA+5sinA)-4=0.化为直角坐标方程, 若存在a∈R,使sina≥1成立,则cos(a-π/6)的值为 红外线望远镜用电吗? 法布尔的《昆虫记》好像昆虫记里有一种虫子,走的路是前面虫子走过的,很小,白白的,我要用它写作,谁知道那是什么虫子,告诉我一声,谢啦 u=(1+sina)/cosa 用u表示sina 请问哪里有卖红外线望远镜 把极坐标方程化为直角坐标方程 (1)psina=2 (2)p=-10cosa (详解 法布尔的《昆虫记》被称为什么的史诗?法布尔的《昆虫记》被称为______的史诗? 描写海洋里面景物的句子 将极坐标方程化成直角坐标方程 p=2cosa+6sina 夏天夜里叫的昆虫 求5种在夏天鸣叫的昆虫答得好好的可以追加, 资料 夏天晚上叫声超大的昆虫,是什么虫子?前天晚上突然听到了!感觉好怪,声音很难听!而且很大!就像电锯的噪音一样.反正不是蝉/也不是青蛙!声音不同.好像还会飞!我上阳台打手电,就看到远处有 吃蜗牛 虫子种类黑色的 有3对腿 六年级上册语文第14课鹿和狼的资料 夏天夜里唱歌的昆虫有哪些 描写大海的优美句子 求5种在夏天会鸣叫的昆虫 r=acosθ 和r=asinθ 所围图形的公共部分的面积 蚂蚁是昆虫 还是动物谢谢了,大神帮忙啊 蜗牛属不属于昆虫 曲线r=a^2cosθ所围成的图形面积()A∫[0,π/2]((a^2cosθ)^2/2)dθB∫[0,π/2](a^2cosθ)^2dθC∫[-π,π]((a^2cosθ)/2)dθD∫[-π,π](a^2cosθ)^2dθ 描写大海的词语 五种在夏天会鸣叫的昆虫 在极坐标中 过圆P=6COSX的圆心且垂直于极轴的直线的极坐标方程是?圆那里是个(ROU) 不好打我就打成了P呵呵 我对极坐标那章记得不是很清楚了
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘