如何解决Docker 桌面重启后,Docker 桌面上的 K8s 本地持久卷丢失数据
我在本地 K8s 集群中的 PersistentVolume 有问题。当我重新启动 PC 或关闭并打开 Desktop Docker 时,我会丢失 PV 中的数据。
这是我的 PV 配置:
apiVersion: v1
kind: PersistentVolume
metadata:
name: pvolume
labels:
name: pvolume
spec:
storageClassName: manual
volumeMode: Filesystem
capacity:
storage: 2Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/mnt/data"
有没有可能保留数据而不使用像 GCP 卷这样的外部 PV 提供程序?
解决方案:
apiVersion: v1
kind: PersistentVolume
metadata:
name: pvolume
labels:
name: pvolume
spec:
capacity:
storage: 3Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: your-local-storage-class-name
local:
path: /c/yourDir
nodeAffinity:
required:
nodeSelectorTerms:
- matchExpressions:
- key: kubernetes.io/hostname
operator: In
values:
- docker-desktop
解决方法
正如我在评论部分提供的链接中提到的 - 阅读更多:docker-desktop-pv,docker-desktop-pv-local - 解决方案/解决方法是使用不同的卷类型。将 hostPath 卷更改为本地。您的 PV yaml 文件应如下所示:
apiVersion: v1
kind: PersistentVolume
metadata:
name: pvolume
labels:
name: pvolume
spec:
storageClassName: manual
volumeMode: Filesystem
capacity:
storage: 2Gi
accessModes:
- ReadWriteOnce
local:
path: /c/yourDirectory
local.path
直接显示您引用 Windows 文件夹的位置,以便您可以在 Windows 机器上本地连接 PersistentVolume。
参见:types-of-pv。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。