2020年7月初,UCloud优刻得容器产品线继UK8S后又新增一位成员:容器实例Cube,以进一步丰富UCloud优刻得容器服务的应用场景,满足不同用户对于容器服务的需求。

通过Cube,用户只需要提供打包好的Docker镜像,即可快速、批量部署容器化应用,而不需要预先购买云主机或UK8S集群,并且只需为容器实际运行消耗的资源付费。目前,Cube处于免费公测期,欢迎各位前往体验。

兼容Docker&Kubernetes

由于交付效率、运维成本、环境一致性等方面的优势,容器正在逐步地取代虚拟机,成为企业应用部署的首选。Kubernetes作为业界公认的容器调度与编排的事实标准,受到众多企业用户的青睐,UCloud优刻得也于2018年推出了基于Kubernetes的容器调度与编排服务UK8S,目前已服务有赞、值得买、达美乐等众多用户。

在协助用户将业务迁移至UK8S中的过程中,我们发现,从虚拟机到容器再到Kubernetes,尤其是Kubernetes自身架构的复杂性以及跨越式的设计理念,对用户原有的IT技术团队提出了更高的技术门槛。这种技术断层,让一些中小型团队迁移上Kubernetes的进程相当缓慢,甚至于停滞。

基于此,UCloud优刻得容器团队推出了容器实例服务Cube。Cube底层架构基于Kubernetes,采用容器组作为最小交付单位,容器组是一组容器的集合,同一容器组内的容器共享网络和文件系统。从这个角度看,Cube可谓是个承上启下的产品,既能让容器用户享受Serverless模式所带来的效率提升,也可让Kubernetes用户享受极致的弹性。

对于在虚拟机中运行容器的用户:可以将运行在虚拟机中的容器业务轻松迁移至Cube,无需学习新的技术和概念,且相较于在虚拟机中部署容器,通过Cube部署容器的流程极大地缩短,后续维护成本也极低。

另外,在成本、安全性、产品功能等方面,Cube相较于在虚拟机中部署容器,也具备明显优势。

(备注:Cube容器实例运行在基于KVM的轻量级虚拟机中,它排除了所有非必要的功能,只实现了一个最小的设备模型,相对于传统虚拟机可被攻击面更小,安全性更高。)

对于使用Kubernetes的用户:容器组的接口协议与Kubernetes中的Pod完全兼容,这意味后续用户可通过Virtual Kubelet构建虚拟节点,将部分Pod部署到Cube 上,提升业务系统的弹性和突发处理能力。

功能丰富

由于Cube容器实例运行在轻量级虚拟机中,使其在安全性和隔离性上可与云主机媲美,在网络、存储以及其他功能特性上也与云主机类似,让从虚拟机迁移至容器的用户,在使用体验上尽量保持一致,降低业务容器化的改造难度。

首先是在网络层面,Cube基于UCloud VPC网络实现,每个Cube实例都具备独立的内网和外网IP。和UK8S不同,Cube实例重启后,内网和外网IP保持不变,并且可以作为ULB的后端服务节点对外暴露服务,提供稳定可靠的服务。

其次是存储支持,Cube目前已支持在创建时直接挂载UFS作为持久化存储,这一点在便利性上甚至比云主机更好,在下一个版本中,Cube将支持RDMA的UDisk,提供低延时、高吞吐的存储能力。

最后,考虑到用户使用习惯以及容器的特点,Cube还提供了容器登录、容器日志以及事件、配置变更等功能,便于研发工程师更好地定位问题。

应用场景

由于Cube具备免服务器运维、秒级启动、按需付费等优势,尤其适用于应对突发性业务和弹性扩缩等场景,例如:

业务削峰:通过Cube或者通过其他计算资源(如UHost、UK8S)保障常态资源使用,在业务高峰期秒级拉起Cube实例,从容应对突发流量;

小程序应用:Cube实例规格最小为0.1核,配合ULB,可构建低成本、高可用、弹性的后端业务架构。

数据处理:基于Cube快速启动、按秒计费的特性,业务方可在短时间内启动大量处理节点,满足业务对海量计算资源的即时需求,用完即删,无需提前囤积资源,在满足业务需求的同时节省IT成本;

Cube目前还处于公测阶段,未来Cube还将引入Deployment、CronJob、Application等概念,并引入全面的监控运维工具,让用户不再需要关心和运维底层的Kubernetes集群,只需专注于业务本身。