容器技术的前世与未来
前世:
containerd于2014年出生于Docker,最初是Docker引擎的低层运行时管理器。继2017年3月被CNCF接受之后,containerd已经成为一个行业标准的容器运行时,专注于简单性,健壮性和可移植性,其最广泛的用途和采用是Docker引擎和OCI runc执行器之间的层。containerd可用作Linux和Windows的守护程序。它管理其主机系统的完整容器生命周期,从图像传输和存储到容器执行和监督,再到低级存储,再到网络附件等。
背景:1、containerd是一个行业标准的容器运行时,强调简单性,健壮性和可移植性。containerd可用作Linux和Windows的守护程序。
2、containerd管理其主机系统的完整容器生命周期,从图像传输和存储到容器执行和监督,再到低级存储,再到网络附件等。
特征:
1、OCI Image Spec支持
2、图像推拉支持
3、用于创建,修改和删除接口的网络基元
4、多租户支持CAS存储全局图像
5、OCI运行时规范支持(又名runC)
6、容器运行时和生命周期支持
7、管理网络名称空间容器以加入现有名称空间
未来:
云计算技术发展至今,从最开始的硬件虚拟化、IaaS、OpenStack、PaaS、容器设置到如今的 Serverless,云计算已经越来约接近应用逻辑。容器实现了应用的分装,方便了应用在不同环境间的迁移,轻量级的特性又使它能够消耗更少的资源而带来更大的便利,容器编排领域在2016 年就已经成为了兵家必争之地。2016 年的时候容器领域还在为Swarm、Mesos、Kubernetes谁能够在容器编排调度大战中胜出而猜测。经过不到一年的发展,Kubernetes 就以超过 70% 的市场占有率(据TheNewStack的调研报告)将另外两者遥遥甩在身后。Kubernetes 已经成为容器编排调度的实际标准,不论 Docker 官方还是 Mesos 都已经支持了 Kubernetes,Docker 公司在今年 10 月 16 日至 19 日举办的 DockerCon EU 2017 大会上宣布支持 Kubernetes 调度,Mesos 的商业化公司 Mesosphere 也宣布 Kubernetes on DC/OS。
Kubernetes 产品迭代周期越来越快,从 2014 年开源,2015 年发布了两个版本,2016 年发布了三个版本,到2017一年内就发布了 4 个大版本,Kubernetes越来越受到关注,同时它也变得越来越稳定、易用。Kubernetes 已成为 GitHub 上参与和讨论人数最多的开源项目,在其官方 Slack 上有超过三万多名注册用户,国内外还有很多厂商、社区、爱好者组织的 meetup。
国外 Google 的 GKE、微软的 Azure ACS、AWS 的 Fargate 和 2018 年即将推出的 EKS、Rancher 联合 Ubuntu 推出的 RKE,国内的华为云、腾讯云、阿里云等都已推出了公有云上的 Kubernetes 服务,Kubernetes 已经成为公有云的容器部署的标配,私有云领域也有众多厂商在做基于 Kubernetes 的 PaaS 平台。随着企业落地 Kubernetes 的日益增长,相关的人才缺口也将显现。CNCF 又就此推出了 CKA(Certified Kubernetes Administrator)和 CKD(Certified Kubernetes Developer),假若在 Kubernetes 的生态构建与市场发展顺利的情况下,该证书将会展现其含金量。
同时,Cloud Native也是蓬勃发展和大发异彩,CNCF 中托管的一系列项目即致力于云原生应用整个生命周期的管理,从部署平台、日志收集、Service Mesh(服务网格)、服务发现、分布式追踪、监控以及安全等各个领域通过开源软件为我们提供一整套解决方案。Kubernetes 作为云应用的部署标准,直接面向业务应用,大大提高了云应用的可移植性,解决云厂商锁定的问题,让云应用可以在夸云之间无缝迁移,甚至用来管理混合云,成为企业 IT 云平台的新标准。
2018 年 Kubernetes 将结合 CI/CD 成为 DevOps 的得力工具,并成为高级开发人员的应用部署首选,也将成为 PaaS 层的重要组成部分。Kubernetes 将更加稳定好用,云原生将会出现更多的落地与最佳实践。