大家都喜欢无状态的应用,因为存在随意停止、负载均衡,扩容、缩容等巨大优点,但是世界没有那么美好,都是无状态,那数据存放在哪里?
所以和Deployment差不多,K8S又搞了一个kind: StatefulSet来帮忙保存应用程序的数据,本质上在K8S上跑的是容器,容器本质是操作系统的进程,进程产生的数据就要保存下来,但是呢,因为K8S里面把容器又用POD包了一层,而POD是随时可能在集群的物理节点上漂移的。
如果我们让POD(也就是指POD里面的容器进程)的数据存放在它所在的物理主机,那么必然当漂移的时候,POD的数据是没法移动的,也就丢失了,这会导致应用程序崩溃的。
所以怎么搞,看看K8S怎么让POD漂来漂去的时候,POD产生的数据不会有丢失。
这真的是在线应用梦寐以求的功能,现在K8S直接赋能。
因为前面选择的是tomcat镜像,这个镜像有300多MB,所以创建需要一些时间,正在从dockerhub拉取。
等了一分钟不到,好了,我们启动了2个tomcat的POD