在 Kubernetes 中,是否可以在 Statefulset 中添加 hostPath 存储。如果是这样,有人可以帮我举个例子。
问问题
5005 次
2 回答
10
是的,但这绝对是出于测试目的。
首先,您需要根据需要创建尽可能多的持久卷
kind: PersistentVolume
apiVersion: v1
metadata:
name: hp-pv-001
labels:
type: local
spec:
storageClassName: manual
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/tmp/data01"
kind: PersistentVolume
apiVersion: v1
metadata:
name: hp-pv-002
labels:
type: local
spec:
storageClassName: manual
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/tmp/data02"
...
然后,将此 VolumeClaimsTemplate 添加到您的 Statefulset
volumeClaimTemplates:
- metadata:
name: my-hostpath-volume
spec:
storageClassName: manual
accessModes: ["ReadWriteOnce"]
resources:
requests:
storage: 5Gi
selector:
matchLabels:
type: local
另一种解决方案是使用hostpath 动态配置器。您不必提前创建 PV bin,但这仍然是一个“概念验证解决方案”,您必须在集群中构建和部署配置器。
于 2018-01-08T12:37:48.707 回答