Windows Docker内部原理猜想和Azure讲座录像分享

简介:

[前言] 盆盆期待和大家分享年初在北京Microsoft MVP OpenDay上分享的讲座录像,介绍有关微软云计算、Docker和微信自动化联动的技术。在这篇文章里,还将介绍盆盆自己对Windows自己的Docker技术的猜想和展望。

 

首先要给大家分享一个盆盆在MVP Open Day上的讲课录像。

 

1月底盆盆去北京参加MVP的两会,当时天可真蓝。

wKioL1USARiQWJIVADTGh0GGQBU598.jpg

 

和张诚、苏繁等兄弟一起晚餐。

wKiom1USAMWjYn5TAC3aJCZBmi4539.jpg

 

晚宴上,还有多才多艺的MVP兄弟表演节目哩

wKioL1USAjHyRycKACldDZSARZs631.jpg

 

第二天是周六,在王府井的一家酒店开讲座,上座率不低哈。

wKioL1USAmGgfxG_AALYEG726zo076.jpg

 

讲座视频

 

前天盆盆拿到了讲课的录像,大该1小时,录像效果较一般,大家凑合着看吧(注意有声音,请带耳机收看,以免影响他人哈)。


您可以访问以下的视频链接:

http://v.youku.com/v_show/id_XOTE0NTQyODY0.html

这个讲座主要讲什么呢,是和Azure云计算和自动化相关,其中涉及的一些知识点,您可以参考微信公众号华来四里的两篇文章(关注:sysinternal):

  • 在华来四公众号里回复docker1,阅读有趣的Windows Azure Docker演示

  • 在华来四公众号里回复azure1,阅读云计算和自动化


Docker原理


说到Docker,今天从team内部获悉,微软会推出超轻量级的Windows Nano Server,作为今后Windows Docker的底层OS,这就类似于开源社区正在推的CoreOS、轻量级Ubuntu一样。


联想到Linux Docker容器技术使用的六大Linux内核隔离技术:UTS/IPC/PID/Network/Mount/User。这样进程等于在外面包了一层独立的账户、主机名、进程号、网络、进程间通信和文件系统等命名空间的壳,简直等于一台轻量级的小型虚拟机!
wKioL1USAz-D6E1KAAJkBsopMFs659.jpg


这里推荐大家阅读DaoCloud的大牛孙老师的雄文《Docker背后的内核知识—Namespace资源隔离》(您需要复制以下地址,并粘贴到浏览器里查看):

http://www.infoq.com/cn/articles/docker-kernel-knowledge-namespace-resource-isolation?from=timeline&isappinstalled=0

 

其实Windows很早就有进程隔离技术,例如大家都很熟悉的终端服务(最早由Citrix研发)。终端服务实现所谓的会话隔离机制。其实质就是将 \DosDevices、\Windows和\BaseNamedObjects等几个对象的命名空间做隔离,这和Docker的IPC隔离有几分类似的地方。


看盆盆利用WinObj在Windows 10里抓的截图。终端服务通过构造新的窗口站命名空间(附图中的Windows部分),来隔离不同用户所看到的桌面;通过隔离的\BaseNamedObjects命名空间,则可以隔离(也叫做实例化)出自己的共享对象(例如内存段、Mutex和事件)。

wKiom1USAs6Q6a7HAAFUB4AxEoY710.jpg

 

有关终端服务的这部分原理,可以参考《Windows Internals》第173页。不过书里面并没有提到附图中看到的AppContainerNamedObjects。这是什么东东?


原来这是Windows 8以后才有的应用程序容器技术(Windows Internals主要以Windows 7为主),主要是给Metro UI应用所使用。有关这个应用容器技术,可以参考以下的文章:

http://recxltd.blogspot.com/2012/03/windows-8-app-container-security-notes.html


 

盆盆感兴趣的是以下的一段论述。

wKioL1USBHGBVOCqAAO5f3LNWvY801.jpg


其中有以下的一段话,大意是在权限、IC、文件访问和网络访问访问进行隔离,是不是和Docker的六大隔离有点类似??

Distilling this down they've introduced a high-level capability model that translates to a more restricted version of low integrity processes. Going further than before in restricting IPC between processes, file access and event loopback network access.


能否大胆猜测一下,微软会不会将其原本基于MetroUI的App Container技术,加工扩展为Windows版本的Docker?


想当年Citrix开发出终端服务,后来微软在1998年时正式授权到Windows NT的终端服务版(那一年盆盆刚工作)。Citrix自己再对其进行深加工,成就了XenDesktop和XenApp,到现在已经风光了17年。回想起来,其盈利模式是对每个终端连接进行收费,增值的部分至少有两点:终端连接的协议,以及管理平台。


那么Docker呢? 在Windows上会依赖何种模式盈利?Partner的赢利点在哪里?和原来的虚拟化技术如何整合?留给我们的问题太多了。




本文转自 ahpeng 51CTO博客,原文链接:http://blog.51cto.com/markwin/1624036,如需转载请自行联系原作者
相关文章
|
3月前
|
存储 虚拟化 Docker
windows系统安装docker(Hyper-V方式)
windows系统安装docker(Hyper-V方式)
183 2
|
3月前
|
分布式计算 Java Linux
【深入浅出Docker原理及实战】「原理实战体系」零基础+全方位带你学习探索Docker容器开发实战指南(Dockerfile使用手册)
Docker 是一套构建在 Linux 内核之上的高级工具,旨在帮助开发人员和运维人员更轻松地交付应用程序和依赖关系,实现跨系统和跨主机的部署。使用安全且轻量级的容器环境来实现这一目标。容器可以手动创建,也可以通过编写 Dockerfile 自动创建。开发人员和运维人员可以将应用程序及其依赖打包到容器中,实现应用程序的可移植性和环境一致性。
108 5
【深入浅出Docker原理及实战】「原理实战体系」零基础+全方位带你学习探索Docker容器开发实战指南(Dockerfile使用手册)
|
4月前
|
前端开发 Docker Windows
Windows 安装 Docker Compose
Windows 安装 Docker Compose
|
21天前
|
关系型数据库 MySQL Nacos
【深入浅出Nacos原理及调优】「实战开发专题」采用Docker容器进行部署和搭建Nacos服务以及“坑点”
【深入浅出Nacos原理及调优】「实战开发专题」采用Docker容器进行部署和搭建Nacos服务以及“坑点”
45 1
|
2月前
|
Java Linux 虚拟化
浅谈Docker底层原理
浅谈Docker底层原理
28 0
|
2月前
|
存储 网络协议 Unix
docker的底层原理
docker的底层原理
|
3月前
|
存储 运维 Linux
精彩推荐 | 【深入浅出Docker原理及实战】「原理实战体系」零基础+全方位带你学习探索Docker容器开发实战指南(实战技术总结)
在使用Docker时,管理维护工作可能会显得复杂。然而,实际上,Docker提供了许多便捷且人性化的工具,这些工具的使用技巧可以大大简化维护工作,并提升效率。通过掌握这些技巧,你不仅能够更轻松地管理Docker环境,还能展现出专业的能力。接下来我们就给大家介绍一下对于我在工作当中对于Docker容器使用的技术实战总结
48 2
精彩推荐 | 【深入浅出Docker原理及实战】「原理实战体系」零基础+全方位带你学习探索Docker容器开发实战指南(实战技术总结)
|
3月前
|
存储 运维 Linux
探索容器化技术:Docker的原理与应用
在当今快节奏的软件开发环境中,容器化技术成为了一种重要的工具,其中最为流行和广泛使用的是Docker。本文将深入探讨Docker的原理和使用,包括容器化概念、镜像管理、容器编排等内容,帮助读者更好地理解和应用这项技术。
39 0
|
3月前
|
存储 Linux 开发者
探索容器化技术:揭秘Docker的原理与应用
在当今快节奏的软件开发环境中,容器化技术成为了关键的工具。本文将深入探索Docker作为一种常见的容器化解决方案的原理与使用方法,并讨论其在现代应用开发中的重要性与优势。
|
3月前
|
C# 数据安全/隐私保护 开发者
Windows平台RTMP推送|轻量级RTSP服务录像模块如何支持中文路径?
Windows平台RTMP推送|轻量级RTSP服务录像模块如何支持中文路径?

热门文章

最新文章