Kubernetes持久卷:主机路径与本地和数据持久性



Kubernetes中hostpath和本地持久卷之间的主要区别是什么?

假设我的机器上运行了一个kubernetes集群,其中一个pod运行一个数据库,该数据库使用本地持久卷来保存数据,如果整个集群失败(例如关闭机器(,那么在机器(和集群(的下一次启动时,持久卷中将不再有pod之前保存的数据的踪迹,这是正确的吗?

hostPath卷将文件或目录从主机节点的文件系统装载到Pod中。因此,如果您有一个多节点集群,pod由于某些原因被重新启动并分配给另一个节点,那么新节点将不会在同一路径上拥有旧数据。这就是为什么我们已经看到,hostPath卷仅在单节点集群上运行良好

在这里,Kuberneteslocal persistent volumes帮助我们克服了限制,并且我们可以在多节点环境中工作而不会出现任何问题。它会记住哪个节点用于配置卷,从而确保重新启动的POD始终能找到处于重新启动前状态的数据存储。

如果节点存储完全失效且无法修复(RAID通常会阻止它(,则该节点的hostpathlocal persitent卷的数据可能会丢失

参考:

  • https://kubernetes.io/docs/concepts/storage/volumes/#hostpath
  • https://vocon-it.com/2018/12/20/kubernetes-local-persistent-volumes/

最新更新