一、为什么我要写Kubernetes
虽然一般的互联网公司中,都有运维工程师来把我们开发好的项目部署,发布到线上,但是我认为作为开发的程序员,理解了集群管理的话,不仅可以直接提高开发技能,而且还可以解决在实践过程中经常遇到的各种关键问题。
所以,我认为有必要深入源码的方式去了解下到底什么是Kubernetes。
二、Kubernetes的发展
容器化技术已经成为计算模型演化的一个开端,Kubernetes作为谷歌开源的Docker容器集群管理技术,在这场新的技术革命中扮演者重要的角色。
Kubernetes正在被众多知名公司及企业采用,例如,Google,VMware,CoreOS,腾讯。因此,Kubernetes站在了容器技术变革的浪潮之巅,将具有不可预估的发展前景和商业价值。
三、你真的知道Kubernetes是什么吗?
①、Kubernetes是一个全新的基于容器技术的分布式架构领先方案。
Kubernetes是站在Borg这个前辈的肩膀上,汲取了Borg过去十年间的经验和教训,所以Kubernetes一经开源就一鸣惊人,并迅速称霸容器领域。
②、Kubernetes的设计思想
A、如果我们的系统设计遵循了Kubernetes的设计思想,那么传统系统架构中的那些和业务没有多大关系的底层代码或功能模块,都可以立刻从我们的视线中消失。
B、我们不必再费心于负载均衡器的选型和部署实施问题,不必再考虑引入或自己开发一个复杂的服务治理框架。
C、不必再头疼于服务监控和故障处理模块的开发。
总之,使用Kubernetes提供的解决方案,我们不仅节省了不少于30%的开发成本,还可以将精力更加集中于业务本身,而且由于Kubernetes提供了强大的自动化机制,所以后期的运维难度和成本都不高。
③、Kubernetes是一个开放的开发平台
A、它不局限于任何一种语言,没有限定任何编程接口,任何一种语言编写的服务,都可以被映射为Kubernetes的Service(服务)。
B、通过标准的TCP通信协议进行交互。
C、Kubernetes平台对现有的编程语言,编程框架,中间件没有任何的侵入性,因此现有的系统也很容易改造升级并迁移到Kubernetes平台上。
④、Kubernetes是一个完备的分布式系统支撑平台
A、多层次的安全防护和准入机制,多租用户应用支撑能力,透明的服务注册和服务发现机制,内建智能负载均衡器。
B、强大的故障发现和自我修复能力,服务滚动升级和在线扩容能力,可扩展的资源自动调度机制,以及多粒度的资源配额管理能力。
⑤、Kubernetes提供了完善的管理工具
这些工具涵盖了开发,部署测试,运维监控在内的各个环节。
四、总结:
Kubernetes是一个全新的基于容器技术的分布式架构解决方案,并且是一站式的完备的分布式系统开发和支撑平台。
好吧,今天到这了,明天见~~