第2章 Kubernetes核心对象

Kubernetes这个名字源于希腊语,意思是舵手。在2014年,谷歌开放了Kubernetes项目。它是建立在谷歌运行大规模生产系统的基础之上,结合社区的最佳创意和实践构建的一个可移植、可扩展的开源平台。Kubernetes主要是通过API或者声明式配置管理容器化工作负载和服务的一整套系统。

Kubernetes主要提供了以下功能:

● 服务发现和负载均衡。Kubernetes可以使用DNS名称或使用自己的IP地址公开容器。如果容器的流量很高,Kubernetes也支持将这些流量均衡分配,以确保系统稳定。

● 存储编排。Kubernetes允许用户自动加载自选的存储系统,例如本地存储、NFS存储等。

● 自动部署和回滚。Kubernetes可以描述已部署容器的所需状态,并且可以以受控的方式更新现有状态到预期状态。

● 管理资源。Kubernetes允许用户指定每个容器请求的资源,以便更好地管理容器的资源。

● 自我修复。Kubernetes可以重新启动失败的容器、替换容器,也可以终止不响应用户自定义的运行状况检查的容器。

● 密钥和配置管理。Kubernetes允许用户存储和管理敏感信息,例如密码、TLS证书等。用户可以部署和更新机密信息而无须重建容器,也不会泄露机密信息。

Kubernetes不是一个传统PaaS平台,它提供的功能包括部署、扩展、负载平衡、日志记录和监控,且解决方案都是可选和可插拔的。

本章内容的主旨不是全面讲述Kubernetes部件,而是进行提炼,讲述与后续部署以及云原生架构相关的关键点。具体如何使用、管理Kubernetes还请参考官方文档。