容器、容器云和容器化PaaS平台之间的关系.docx
《容器、容器云和容器化PaaS平台之间的关系.docx》由会员分享,可在线阅读,更多相关《容器、容器云和容器化PaaS平台之间的关系.docx(5页珍藏版)》请在第壹文秘上搜索。
1、一直都有很多人迷感于容器应该属于IanS或是PaaS层,也搞不清楚容器云到底是该归到哪里,该由碗个团队来建设、哪个团队来维护,K8s是不是就等同于容器云?所以我们看到概念和定义的混乱,在实施容器云的时候也会有众多的分歧,无所适从。目前乂仃众多的公司推出容器化PaaS的概念,更搞不清楚谁是诳了.那么容器、容器/.、容化PanS以及与Docker,KUberneteS之间是个什么样的关系?这是需要我们明确并理解的问题,日志监拄认证权取应用开发、托管、运维Kubernetes租户容满容器容器容器容窗Engine(Docker?)IaaS星能力容器云容器化PaaS轻星化PaaS平台容器是一种操作系统级
2、虚仪化技术,Docker是一种容器引擎。使用Docker来运行操作容涔,但从容器自身来说,其提供的是IaaS层能力。KUbenWIeS提供了容器调度和管理的能力,加上云计笈租户功能,实现容云平台功能.而基干容技术所构建的应用开发、应用托管和应用运维平台则可以称为容器化PaaS平台,它是一种轻值化PaaS实现.结合日志、监控、认证、权限等基础能力则可以构建企业级的平台和可笈用服务,乘用微服务架构实现企业技术服务中代能力,支掠企业业务敏拄研发和模式转型.一、容器容器是一种轻量虚拟化技术,它不同于VMware虚拟化,所以其隔离性相对差、安全性差,但轻信也正是其特点.容器的概念其实也早就有之,只不过实
3、践的选择有差别。早在2006年的时候,我当时所在的公司就提出了基于java的多jvmContainers概念并进行了产品实践1.个java容器可以运行多个jvm,不过因为java自身特性导致的后来转型并不成功,最后不得不放弃了.应用层容器和操作系统级容器的实现还是有很大差别.麋作系统级的容器设计明显更合理,更易于实现和推广。通过标准化镜像封装,从而实现了环境一致性.容器为了弹性伸缩能力倾向于无状态应用,这样简化了容器设计实现的豆杂性.所以基于容器自身的特点,容器适用的场景并不是无限的.当然kubernetes从1.9版本正式支持有状态应用,增强了容器的场景适应能力,扩展了适用场景。经常有人拿容
4、器和虚拟机比较,虽然都是虚拟化,但二者差别还是很大的.虚拟机就好比是一个完整的人,而容器类似于妈妈肚子里的胎儿。它需要依赖于母体来生存,所以我们可以看到容器在操作系统中以进程的方式运行.容器的虚拟化损耗约1%,而虚世机的损耗约20%左右.但是容器带来了管理和运维的怎杂性.Docker提供了C1.I和RESTAPI方式,都需要很高学习成本,在达到一定数量的容器后用C1.i来管理和运维将会是雷梦,所以有DockerSwarm、MeSos、Kubernetes等容器调度管理框架的出现,提升管理和运维效率,降低运维难度和工作量。既然容器也是操作系统级的虚拟化,其可以看作类似于虚拟机的对象,容器本身提供
5、的服务依然是基础设施资源服务,所以容器应该是处于InaS层。而基于容器技术和容器调度管理技术如kubernetes实现的容器公平台则封装了容器操作,提供平台能力,所以容器云平台应该属于PaaS层,这也是很多人直接把容器云平台称为PaaS平台的原因吧.不过确切的说,容器云平台并非真的PaaS.目前假多容器云平台所提供的能力无法满足应用开发、应用托管、应用运维的PaaS平台能力要求,而通常仅仅实现租户+云端的容器调度管理能力,依然有大量的C1.l运维工作。对使用容器云的人员的学习成本和要求都比高.二、容器云Kubernetes并不等于容器云,kubernets只是一种容器调度管理框架,和docke
6、rswarm、mesos等一样,用于调度、管理容器.比如调度容器到匹配的资源上,管理容器的弹性伸缩、灰度发布、负载路由等。云计算很重要的一个概念是租户.租户租用共享的云计算资源,按需和用最计费,不用则不产生费用.而kubernetes中是没有租户的概念的.所以仅有kubernetes是不够的,kubernetes可以看作是容器云平台的内核,我们需要使用kubernetes来实现容器云平台,但还需要基于kubernetes进行封装,支持租户共享基础设施资源等能力.租户可以是一个跨平台的概念,在容器云平台建设中,有容器云平台的租户设计是基于kubernetes的namespaces来划分的,一个租
7、户使用一个namespaces,这会带来很大的局限性.虽然租户的定义没有明确标准,但从理论上说租户是高于kubernetes的,所以在kubernetes内部没有租户的概念,而是用namespaces来实现资源隔离.在容器云平台实践中,需要考虑租户的设计,可能是跨越多个kubernetes集群的,甚至跨越多个IaaS平台用kubernetes实现容器调度,也就是可以把容器调度到不同的云平台上运行,比如同时可以把容器调度到聘讯云、华为云、AWS云等云平台上(通过云管来实现资源的统一管控,支撑容器云平台的资源调度),从而实现高等级备份和容灾等。这就需要考虑基于Kubernetes多集群之上的容器云
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 容器 云和 PaaS 平台 之间 关系