返回 登录
0

给你一个K8S的“发行版”

Kubernetes是Google开源的容器集群管理系统或者称为分布式操作系统。它构建在Docker技术之上,为容器化的应用提供资源调度、部署运行、服务发现、扩容缩容等整一套功能,本质上可看作是基于容器技术的mini-PaaS平台。Kubernetes的目标是让开发者可以像管理产品一样管理服务,同时提高资源的利用率,让开发者更关注在应用开发本身,高可用的事情交给Kubernetes。

然而,Kubernetes虽然已经开源,但安装和部署却相当复杂,需要具有专业知识和技能的专业人员和专业团队才能顺利的完成,但许多开发人员和企业并不具备这些专业知识和专业团队,而雇佣第三方专家或团队来进行这项工作,需要不少的时间和资金的投入,这显然令众多想要使用Kubernetes的用户望而却步。

不过,现在有一个好消息,在百度资深科学家王益的协调下,百分点和云知声两家公司在一起开发了开源的Kubernetes“发行版”——Sextant,可以实现几乎零操作的全自动安装和部署Kubernetes集群,堪称K8S的“发行版”,这无疑给众多想要使用Kubernetes的开发者和企业带来了福音。

Kubernetes使用之痛

Kubernets作为一款开源的容器集群管理系统,其最大的优点是可以显著提升整个集群的总CPU利用率。据百分点技术副总裁刘译璟介绍,Kubernetes能够把原来割裂的集群中的众多机器,统一成一台像超级计算机一样的虚拟机器,这样就可以成倍提升集群中服务器总体CPU的利用率,节省成本,另一方面,可以对集群中原本割裂的计算机进行统一管理,使得集群中的计算资源得到充分的利用。

但Kubernets虽然好用,其安装和部署却非常复杂,百度资深科学家王益表示,一个由分布式操作系统管理起来的集群,需要的软件技术并不只是分布式操作系统Kubernets,也涉及到分布式的文件系统,涉及到所有硬盘组织成的一个单一的存储系统,还涉及到分布式锁系统。因此对于具备在集群中部署Kubernets的技术团队来说,实际上要求这个团队中的每一位成员都要了解所有这些计算技术以及这些计算技术背后的前因后果,和它们发生的整个历史脉络,才可以确保团队在学习这些技术的过程中,不被开源社区以前走过的一些弯路误导,也确保他们在工作中有足够的背景知识可以完成部署以及处理部署之后可能会出现的各种技术问题。具体的讲,团队中的技术人员需要掌握从最底层的网络配置,例如路由器、交换机的配置,到上一级的单机操作系统,例如CoreOS还是Cent OS的选择,再到再上一层的分布式系统,包括Kubernets,分布式文件系统和分布式锁系统ETCD,还要到再上一层支持各种应用的分布式并行计算框架,包括Hadoop,Storm,Spark等等。需要一个团队的所有成员具备如此多的知识,才能够确保顺利手工部署这样的集群。这对于绝大多数的公司来说,无疑是难以承受之重的。

Sextant解决痛点

而Sextant就是针对Kubernets安装和部署的痛点而研发的,刘译璟表示,Sextant目前主要解决的就是Kubernets安装和部署的自动化问题,特别是在大批量部署集群时,Sextant可以节约大量的安装和部署的时间,从而有效解决集群规模化扩张需要的大量人力和时间成本的问题。

而王益则用Redhat和Linux之间的关系来解释Sextant之于Kubernets的关系。王益表示,Linux也是一个开源的操作系统,它的Server Cloud是开源的。可实际上,在部署Linux的时候,并不是那么简单,需要很多步骤,如重新编译Linux Server Cloud,把把Linux Server Cloud写到主引导扇区,安装各种硬件的驱动,各种应用程序等等。而RedHat公司把所有这些东西打包进一张光盘,任何一个普通的用户,不需要专业的知识,就可以使用这张光盘在个人电脑上安装Linux操作系统。Sextant的效果和Redhat Linux非常相似,Sextant会在数据中心中的一台bootstrapper服务器上部署PXE Service,然后依次重启其他服务器。这些服务器启动的时候,BIOS/EFI从PXE Service引导CoreOS,并将CoreOS安装到本地磁盘,并配置Kubernetes,随后重启服务器,这台服务器便可自动成为Kubernetes集群的一员了,效果如同RedHat Linux的一张光盘,不需要专业的人员,只要运行Sextant就可以进行系统的安装,实际上,就是给用户提供了一个K8S的”发行版“。

普惠金融CTO方亮表示,Sextant把Kubernets很复杂的部署变成了一个一键配置的过程,减轻了相关技术人员很多的工作量。而从团队的角度来讲,Sextant不仅仅是带来了效率上的提升,而且带来了对使用Kubernets人员的专业技能的要求的降低,而这就意味着会有更多的公司、团队、开发人员会来使用它,完善它,这对于Kubernets和Sextant的发展无疑是十分有利的。

Sextant的未来

不过,目前,Sextant只是解决了Kubernets自动部署的问题,但百度、百分点和云知声三方不会就此停下Sextant发展的脚步,刘译璟透露,三方将在Sextant的基础上继续发展,比如以后百分点的所有离线和实时计算以及百分点所有的产品都会使用Sextant来部署。同时,刘译璟也希望有兴趣的开发者和公司团体,可以共同来进行Sextant的进一步开发。

刘译璟最后表示:”希望在不久的将来,Sextant可以把大数据,人工智能等很多的基础组件都包含在其中,当用户拿到Sextant以后,可以很快的专注于各种大数据、人工智能方面的开发,再也不必纠缠于繁琐的系统安装和部署过程。“

评论