在当下风靡的云计算生态中,Docker从发布开始就引领这容器化技术的潮流,Docker非常适合管理单个容器。但是如果我们的分布式应用系统是由多个容器组成的,随着系统地迭代演化,使用越来越多的容器和容器化应用程序,并处于高并发、高可用等考虑将其划分为数百个部分,很可能会导致管理和编排变得非常困难。我们迫切需要对容器实施分组,以便跨所有容器提供网络、存储、安全、遥测等服务,于是,Kubernetes 应运而生。
Kubernetes,又称为 k8s或者简称为 “kube” ,是一种可自动实施 Linux 容器操作的开源平台。它可以帮助用户省去应用容器化过程的许多手动部署和扩展操作。也就是说,您可以将运行 Linux 容器的多组主机聚集在一起,由 Kubernetes 帮助您轻松高效地管理这些集群。而且,这些集群可跨公共云、私有云或混合云部署主机。因此,对于要求快速扩展的云原生应用而言(例如借助 Apache Kafka 进行的实时数据流处理),Kubernetes 是理想的托管平台。
由于k8s的技术不断趋向成熟,逐渐成为应用管理的主流,就SpringBoot应用来说,如何实现将应用发布到k8s平台需要以下几个步骤: