扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
ZDNet至顶网服务器频道 10月15日 新闻消息:关于Container技术,IBM Linux内核工程师 Matt Helsley和 Wiki上都有非常全面的介绍。Container技术在Solaris Zones、BSD jails早已实现,OpenVZ、FreeVPS也是Container技术的实现。再扩展一些,浏览器的沙箱以及J2EE Container都是Container技术。
Container为什么会在多年后重提,这是由于云计算、PaaS应用给Container带来了巨大的市场:
更高的资源利用率符合云计算对成本高度敏感的需求。杨赛在 文章中披露,阿里、腾讯、搜狐等,也都已经开始在内部使用Container构建云平台:2011年底开始建设的、基于Container的阿里T4云,截止到2012年底已经部署了200台左右的物理机,实例规模达到了两千以上。2013年,阿里T4的实例规模已经达到了四千,正计划将T4的规模继续扩大到千台以上规模的物理机,并逐渐将核心的交易、商品业务迁移到该平台上。腾讯方面,其开放云PaaS平台CEE现在已经达到2000多个Container实例。Google、Heroku更是Container的重度用户,而Facebook连一台虚拟机都没有。
真正实现PaaS的设计初衷——让开发者专注开发。目前看,包括GCE、Heroku、CloudFoundry、OpenShift在内的PaaS服务都对开发者有诸多限制。Container给了建立更灵活的PaaS平台的基础,尤其是Docker这样的管理引擎出现后,开发者可以高效的部署、删除、迁移应用。
降低运维复杂度。在许多大型互联网公司内部,大部分物理机都使用同样的Linux发行版,甚至完全同样的版本号,这大大降低的运维的复杂度。
作为国内最成功的互联网公司之一,从腾讯开放平台到腾讯云,腾讯正在一步一步的拓展云计算业务。据了解,腾讯内部已经在4000台物理机上部署了Container。以下是对腾讯云平台技术总监曾砺锋的邮件采访,详细解读了Container技术在腾讯云“弹性web引擎”的应用。腾讯云“弹性web引擎”将在近期正式对外提供服务。
CSDN:Container技术用于公有PaaS有哪些长处和难点?
曾砺锋:公有PaaS能充分利用公有云的资源,实现更低的边际成本,为用户节约大量的费用。此外某些设施必须通过公有PaaS的服务模式才能提供,比如云分发、CDN 、移动加速等,都大量依赖了腾讯既有的网络节点布局和海量云存储集群。
难点主要在于公有PaaS需要覆盖长尾的解决方案,对于各种环境的覆盖要周全而完善,同时在资源隔离特别是网络和I/O资源的隔离方面需要有扎实的技术基础。
CSDN:腾讯云“弹性web引擎”在技术选型过程中都考察了哪些技术?
曾砺锋:在整个过程中,我们对流行的虚拟化技术都进行了考察,比如KVM、Xen等,但是他们都存在虚拟化成本过高,镜像迁移时间过长等不利因素。最终,我们选择了轻量化的虚拟技术Linux Container。
CSDN:请介绍下腾讯云“弹性web引擎”以及其使用的Container技术。
曾砺锋:Linux Container技术是近年兴起的一项由Linux内核社区支持的资源隔离技术,其核心是将进程组的资源作为一个分组隔离起来,包括CPU、内存、磁盘、网络I/O、工作目录和用户权限等。在一个分组即一个Cgroups中的资源,作为一个整体被内核分配和调度,和其它进程分割开,从而实现安全性和资源独占性,类似一台虚拟机。与传统虚拟化技术不同的是,这些分组间,都运行在一个linux 内核上,基于相同的内核版本,没有母机和子机内核切换、虚拟页表映射、中断中转等开销,性能优势明显。
CSDN:请介绍下在腾讯云“弹性web引擎”上上传、部署应用的过程。是否支持将应用通过Container的镜像进行迁移?
曾砺锋:使用腾讯弹性web引擎,上传代码通过SVN 即可完成,我们也将提供在线代码编辑功能,方便一些初学者。使用弹性web引擎的朋友,如果按照我们规范,采用云存储、云数据库等云化服务,那么他们的应用可以进行随时随地的迁移。除此之外,腾讯弹性web引擎还提供一些高级功能,同时也是我们的特色:根据负载轻重进行自动缩扩容,忙时扩容,闲时缩容,计费也随之变动,既保证服务质量,又实现用户成本的最大节约。
CSDN:腾讯云“弹性web引擎”的不同租户之间的安全隔离策略是如何考虑的?数据库隔离是如何实现的?网络(SDN)和I/O的隔离是怎么实现的?
曾砺锋:不同用户的安全策略我们采用名字服务和网络虚拟的方式来隔离,首先弹性web引擎上的用户是不能任意访问其它内网机器的服务的,除非申请了相关访问资源。而资源都是以虚拟IP的方式提供,同一个虚拟IP ,对于不同的用户,实际的访问目标都不相同,就像一排标准公寓,每间都有一个储物柜,长得一样,但是各不相干。在I/O 层面,我们采用Linux Container blk隔离技术,完美实现I/O的限量使用,就像每间公寓都有独立的电表,超过了负荷,这间公寓就会受限,但是对整体线路没有任何影响。
CSDN:腾讯云“弹性web引擎”对开发者有哪些限制?(开发语言,HTTP端口,访问文件系统,启动子进程等。)
曾砺锋:作为PaaS开发环境,我们的弹性web引擎会有一些开发方面的限制,当前提供PHP、Java、Node.js的环境支持,可以使用80端口。
我们提供云存储系统 COS作为弹性引擎的存储解决方案,COS具备强大的多份冗余存储,跨网络分发和多访问权限控制(ACL)等功能,用户无须访问本地文件系统。还是那个比喻,弹性web引擎,就像一座公寓酒店,按照住客多少动态分配房间,而一个住客可能不会永远住一个房间,数据好比贵重的行李,当然是放在前台的保险柜了,而不是房间的茶几上,COS就好比那个保险柜,它保护着数据的安全和一致性。在弹性容器的实例中,我们根据内存资源,动态设定最多可以启动的子进程数目,更加灵活和自然。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者