摘要:Cgroup和namespace等内核特性如何出现,在社区处于如何的开发状况?Docker如火如荼。内核社区是否会因此加紧完好容器技术的隔离性安全性?华为Linux内核高级project师李泽帆将在2015 Container技术峰会上具体讲解。

2015年4月16-18日,由CSDN主办、CSDN专家顾问团支持的OpenCloud 2015大会将在北京国家会议中心拉开帷幕。

为期三天的大会,以推进行业应用中的云计算核心技术发展为主旨,聚焦技术创新与应用实践,设置了“2015 OpenStack技术大会”、“2015 Spark技术峰会”、“2015 Container技术峰会”三大技术峰会及多场深度行业实战培训。

本次大会将邀请近40位国内外云计算技术领域顶尖专家与一线实践者,深入讨论OpenStack、Spark、Docker、Kubernetes等开源技术的最新进展,各个核心项目/组件的演进趋势,以及它们的最新业界应用。点击报名

在“2015 Container技术峰会”,我们请到了Linux内核高级project师李泽帆担任演讲嘉宾,他将带来的分享主题为《Linux内核容器技术的历史、现状和展望》。介绍Docker的基石——Cgroup和namespace等Linux内核特性的发展历程。眼下它们在社区处于如何的开发状况,以及在眼下Docker引发的热潮下,内核社区是否会从底层提供更完好的容器技术。

李泽帆觉得,容器的长处在于以接近物理机的执行效率提供了虚拟化功能、能比虚拟机达到更高的实例密度、达到秒级的启动速度。

Docker又加上了层级镜像的创新。使得软件的公布和部署很便捷。因此容器/Docker有广泛的应用场景,应用时在软件架构上參考微服务架构。

他同一时候也指出。Docker还不够成熟。存在网络功能薄弱(如跨主机的容器网络互连)、安全性(Daemon是一个单点故障)、执行传统业务困难(如CT业务)等挑战。李泽帆对Docker的未来很有信心,但眼下,了解Docker的底层技术以及内核容器技术的发展趋势,包含了解Docker的局限性。更有利于我们扬长避短使用Docker。因此,他的分享很值得期待。

李泽帆

Linux Contributor。华为Linux内核高级project师

2007年開始从事Linux内核开发,一直活跃在内核开源社区,为内核累计贡献约800个Patch。

在社区中担任Cgroup及cpuset的maintainer。同一时候也担任Linux 3.4版本号maintainer。

眼下在华为从事内核、Docker相关工作。

对话李泽帆:

CSDN:首先请介绍下您自己,以及您在Container/Docker技术方面所做的工作。

李泽帆:我从2007年開始參与linux内核开发工作,在内核里贡献了大概800个Patch。我參与的第一个内核项目就是Cgroup。到了2009年,我開始在内核开源社区担任Cgroup的maintainer,到了2013年。因为前后两任cpuset的maintainer相继离开,我把这个活也揽了下来。Cgroup(包含cpuset)是容器技术的最重要组件之中的一个。

除了开源社区的工作。我在华为负责Linux内核部门的技术工作。我们之前就有团队从事LXC的工作,因此Docker出现后,我们自然也就成立了Docker项目组。

CSDN:您所在的企业是怎样使用Container/Docker技术的?为企业带来了哪些优点?

李泽帆:华为的产品线和业务线非常长,我们有不少部门都在尝试或者考虑将Docker用起来。可是相比互联网公司能够高速的利用开源项目。让Docker满足企业领域和CT领域的商用要求,眼下还有不少困难,特别是在CT领域。

CSDN:您觉得Container/Docker技术最适用于哪些应用场景?

李泽帆:这要从容器的优势来看。

容器的长处在于以接近物理机的执行效率提供了虚拟化功能、能比虚拟机达到更高的实例密度、达到秒级的启动速度。

Docker又加上了层级镜像的创新。使得软件的公布和部署很便捷。能用上这些长处的地方,自然就是Docker的使用场景了。

实际上这种场景是许多的,这也是Docker的生态发展的如此高速和繁荣的原因之中的一个。我们看到有无数基于Docker的开源项目产生。包含CoreOS、Kubernetes、Deis等等,而现有的开源项目也都纷纷拥抱Docker,比如Openstack、Mesos、Cloud Foundry等等,我们也看到国内外各个云平台争先恐后的宣布支持Docker。

只是。对于企业来说,最easy用上Docker的场景。我觉得还是用Docker来搭建私有云,以及把Docker用在持续集成平台上。

CSDN:企业在应用Container/Docker技术时,须要做哪些改变吗?企业假设想高速应用Docker应该怎样去做?

李泽帆:刚才说过Docker的使用场景许多。因此这个问题也就不能一概而论了。最理想的情况是遵循Docker的理念,即每一个容器仅仅执行一个进程,把Docker作为Application Container来使用。而非System Container,因此在软件架构上參考微服务架构。

还有一方面。因为Docker还不够成熟。而且开源软件往往是满足不了全部企业的需求的,因此企业在实际应用Docker的时候,往往都须要做一定的定制,因此也就要求企业有熟悉Docker的开发者。对于这种定制,应该注意尽量不要改变、破坏Docker眼下的接口,而且在代码上实现较好的解耦,以方便日后对Docker版本号的升级。

CSDN:您所在的企业在应用Container/Docker技术时遇到了哪些问题?是怎样解决的?

李泽帆:大家都遇到的问题我们也遇到了,比如跨主机的容器网络互连,因为Docker没有提供这种能力,我们仅仅能使用flannel之类的第三方方案。

这样也还是有些缺点,比如容器因故障而重新启动后。网络又要又一次配置。

另外更大的问题是。CT业务要在容器内执行,会遇到非常多挑战。这方面我们还在探索中。

CSDN:作为当前最流行的Container技术,您觉得Docker还有哪些方面须要改进?

李泽帆:Docker的网络功能太弱,近期Docker收购了SocketPlane,相信在这方面非常快就有突破,个人预測在今年的DockerCon会宣布相关的进展,大家能够拭目以待。

Docker Daemon的安全性也是一个非常大的问题,包含须要root权限才干执行。以及出现问题后重新启动会导致全部容器也重新启动。也就是Daemon是一个单点故障,这也是Docker被CoreOS诟病的当中一个原因。

当然,Docker还非常年轻,因此有大大小小的各种问题。但相信以Docker眼下的发展态势,这些问题都会得到解决。

CSDN:您在本次演讲中将分享哪些话题?

李泽帆:我是做底层开发的。而且是做开源开发的。所以这次我会给大家讲讲容器技术在内核社区的发展历程,以及在眼下Docker引发的热潮下。内核社区是否会从底层提供更完好的容器技术。

CSDN:哪些听众最应该了解这些话题?您所分享的主题能够帮助听众解决哪些问题?

李泽帆:对Docker的底层技术感兴趣以及想了解内核容器技术的发展趋势的,都能够听听。这能够帮助听众了解容器技术提供了多大程度的隔离和安全,因此更好的了解Docker的局限性。


2015 Container技术峰会已经邀请Google Kubernetes核心开发者来华。和国内用户分享Kubernetes的技术细节,探讨Container未来的发展方向。此外还有VMware、华为、红帽、美团、腾讯、云雀科技、数人科技、上海点融等公司Container/Docker技术实践者。也将同台分享Container/Docker及其相关项目的实战经验。

附:Container技术峰会全日程


“2015 OpenStack技术大会”、“2015 Spark技术峰会”、“2015 Container技术峰会” 4月17-18日在北京召开。日程所有公开 OpenCloud
2015
,懂行的人都在这里!很多其它讲师和日程信息请关注OpenCloud 2015介绍官方网站

版权声明:本文博客原创文章,博客,未经同意,不得转载。

Cgroup maintainer丽泽范:解剖Linux核心容器技术的更多相关文章

  1. 01. DOCKER - 容器技术

    什么是容器 对于容器这个词,大部分人第一时间想到的肯定是生活中常见瓶瓶罐罐,用来装水的东西.它给人的第一感觉就是能 "装". 而在 IT 领域,Container 就被直译为容器, ...

  2. Docker容器技术的核心原理

    目录 1 前言 2 docker容器技术 2.1 隔离:Namespace 2.2 限制:Cgroup 2.3 rootfs 2.4 镜像分层 3 docker容器与虚拟机的对比 1 前言 上图是百度 ...

  3. Linux 容器技术史话:从 chroot 到未来

    Linux 容器是一个在单一 Linux 主机上提供多个隔离的 Linux 环境的操作系统级虚拟技术.不像虚拟机(VM),容器并不需要运行专用的访客(guest)操作系统.容器们共享宿主机的(host ...

  4. Docker核心实现技术(命名空间&控制组&联合文件系统&Linux网络虚拟化支持)

    作为一种容器虚拟化技术,Docker深度应用了操作系统的多项底层支持技术. 早期版本的Docker是基于已经成熟的Linux Container(LXC)技术实现的.自Docker 0.9版本起,Do ...

  5. Linux 运维工作中的经典应用ansible(批量管理)Docker容器技术(环境的快速搭建)

    一 Ansible自动化运维工具 Python 在运维工作中的经典应用 ansible(批量管理操作) .安装ansible(需要bese epel 2种源) wget -O /etc/yum.rep ...

  6. Docker容器技术的核心

    容器技术的核心 所谓容器,其实是由Linux Namespace.Linux Cgroups和rootfs三种技术构建出来的进程的隔离环境 对于Docker项目来说,其实最核心就是为待创建的用户进程: ...

  7. Asp.net 面向接口可扩展框架之核心容器(含测试代码下载)

    新框架的容器部分终于调通了!容器实在太重要了,所以有用了一个名词叫“核心容器”. 容器为什么那么重要呢?这个有必要好好说道说道. 1.首先我们从框架名称面向接口编程说起,什么是面向接口编程?(这个度娘 ...

  8. 举例说,Linux核心名单(两)

    使用列表 我认为最好的方式,成为熟悉的核心列表功能是看一些简单的例子,素材去更好的理解链表. 以下是一个样例.包括创建.加入.删除和遍历链表. <span style="font-si ...

  9. k8s 核心功能 - 每天5分钟玩转 Docker 容器技术(116)

    本节带领大家快速体验 k8s 的核心功能:应用部署.访问.Scale Up/Down 以及滚动更新. 部署应用 执行命令: kubectl run kubernetes-bootcamp \ --im ...

随机推荐

  1. c++日历改进版

    #include<iostream> # include<fstream> #include<time.h> #include<string> #inc ...

  2. 编程算法 - 最小的k个数 红黑树 代码(C++)

    最小的k个数 红黑树 代码(C++) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 输入n个整数, 找出当中的最小k个数. 使用红黑树(multiset) ...

  3. LinuxDLL加载优化方案

    作者:zhanhailiang 日期:2014-10-26 linux程序动态库载入流程简单介绍 linux从程序(program或对象)变成进程(process或进程),简单说来须要经过三步: fo ...

  4. JTree

    http://www.easyicon.net/ package swing.tree; import java.awt.BorderLayout; import java.awt.Component ...

  5. csdn仍是&quot;待定&quot;对?

    正如标题,我的博客会审查,?我们见证.如此反复.考虑到该博客平台的变化.              看来,这次最终逃脱被"待审核",看来再也不用受这个困扰了,希望以后CSDN可以在 ...

  6. HDU 4300 Clairewd’s message(扩展KMP)

    思路:extend[i]表示原串以第i開始与模式串的前缀的最长匹配.经过O(n)的枚举,我们能够得到,若extend[i]+i=len且i>=extend[i]时,表示t即为该点之前的串,c即为 ...

  7. 首先看K一个难看的数字

    把仅仅包括质因子2.3和5的数称作丑数(Ugly Number),比如:2,3,4,5,6,8,9,10,12,15,等,习惯上我们把1当做是第一个丑数. 写一个高效算法,返回第n个丑数. impor ...

  8. Redis系列之(一):10分钟玩转Redis(转)

    1. Redis介绍 Redis是一个开源的使用ANSI C语言编写.基于内存的Key-Value数据库. 它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集 ...

  9. C#+Mapxtreme 实现一些GIS系统基本的功能

    此程序包括了mapxtreme地图相关基本功能的演示其中包括 鹰眼地图,图层控制,发达,缩小,平移地图,地图模糊查询,中点工具,距离测量工具,面积测量工具,图元信息查看工具.适合于企业级开发,可以为您 ...

  10. Android-往来:添加到联系人

    //添加到联系人.使用事务 public void testAddContact() { String name[]={"周杰伦","谢霆锋","言承 ...