Kubernetes,数字化转型浪潮下你必须了解的技术
从这几年应用开发的发展看,从传统的单体应用升级到微服务架构已是大势所趋。抛开巨型互联网企业不谈,大中型企业也已将微服务架构作为企业开发的首选,就连小公司对于微服务开发也跃跃欲试。微服务架构一统企业开发的时代已经到来。
如果你的企业还在进行传统的单体应用开发,那么你必须意识到你已经落后了,落后是要挨打的。
一项新技术的崛起是鼓舞人心的,但是在这个过程中必然会遇到很多挑战。微服务之间的服务通信、水平扩展、服务治理等是应用架构升级之后技术层面面临的重大挑战。同时相比传统单体应用的部署来说,微服务的发布和持续集成是软件工程层面面临的重大挑战。
而今,随着容器技术的崛起,这些问题迎刃而解。在容器技术之前,我们更多的是应用虚拟机技术。在一个服务器上可以开辟多个虚拟机,每一个虚拟机就相当于一个小型的服务器,虚拟机之间互相通信,虚拟机内部安装对应的软件和应用。
容器相当于在主机内运行的一个隔离的进程,它单独消耗该容器内应用所需要的资源。相比于虚拟机,容器不需要额外的进程,更轻量,能够运行更多的应用。
容器技术的崛起离不开Docker。不得不说,Docker已经成为容器技术的事实标准。要维护那么多微服务的容器,而且它们之间又有着错综复杂的依赖关系,是一件非常复杂且耗时的事情。如果节点有上千个,就变成了一个不可能完成的任务。因此,我们需要一个好的容器编排和管理系统。
Kubernetes是当前被业界广泛认可和看好的基于Docker的大规模容器化分布式系统解决方案。它是谷歌Borg(谷歌久负盛名的大规模集群管理系统)的一个开源版本。它不局限于任何一种语言,没有限定任何编程接口。Java、Go、C++、Python等语言编写的服务,都可以被映射为Kubernetes的服务。
Kubernetes具有以下优势:
本书的译者对微服务架构、领域驱动架构、敏捷管理、DevOps持续交付有着非常丰富的实战经验。相信通过阅读他们翻译的这本书,会让你在数字化转型的新基建建设浪潮中拥有一项基础而强大的技能。
刘翔
明源云CTO