hostPath Volume 的做用是将 Docker Host 文件系统中已经存在的目录 mount 给 Pod 的容器。大部分应用都不会使用 hostPath Volume,由于这实际上增长了 Pod 与节点的耦合,限制了 Pod 的使用。不过那些须要访问 Kubernetes 或 Docker 内部数据(配置文件和二进制库)的应用则须要使用 hostPath。html
好比 kube-apiserver 和 kube-controller-manager 就是这样的应用,经过api
kubectl edit --namespace=kube-system pod kube-apiserver-k8s-master
查看 kube-apiserver Pod 的配置,下面是 Volume 的相关部分:学习
这里定义了三个 hostPath volume k8s
、certs
和 pki
,分别对应 Host 目录 /etc/kubernetes
、/etc/ssl/certs
和 /etc/pki
。spa
若是 Pod 被销毁了,hostPath 对应的目录也还会被保留,从这点看,hostPath 的持久性比 emptyDir 强。不过一旦 Host 崩溃,hostPath 也就无法访问了。code
下一节咱们将学习具有真正持久性的 Volume。server
书籍:htm
1.《天天5分钟玩转Kubernetes》
https://item.jd.com/26225745440.htmlblog
2.《天天5分钟玩转Docker容器技术》
https://item.jd.com/16936307278.htmlssl
3.《天天5分钟玩转OpenStack》
https://item.jd.com/12086376.htmlget