我需要将位于 kubeovn pod 内 /etc/openvswitch 目录中的 conf.db 文件共享到另一个名为 ipmonitor 的 pod,涉及共享存储,以便两个 pod 都可以访问,并且 ipmonitor pod 内的 conf.db 中所做的任何更改都应该反映在 kubernetes 集群中的其他 pod 中。
我创建了 pv 和 pvc
apiVersion: v1
kind: PersistentVolume
metadata:
name: shared-storage-pv
spec:
capacity:
storage: 1Gi
accessModes:
- ReadWriteMany
hostPath:
path: /etc/openvswitch
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: shared-storage-pvc
namespace: kube-system
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi
并在两个 pod 中安装了相同的 pvc,并且 kube ovn pod 正在使用绑定安装的 pvc 运行,但 ipmonitor pod 处于挂起状态,并显示消息:
Volumes:
shared-storage:
Type: PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
ClaimName: shared-storage-pvc
ReadOnly: false
Warning FailedScheduling 10m (x171 over 14h) default-scheduler 0/1 nodes are available: persistentvolumeclaim "shared-storage-pvc" not found. preemption: 0/1 nodes are available: 1 No preemption victims found for incoming pod..
了解所使用的受支持的存储类或卷插件非常重要,因为并非所有存储都支持ReadWriteManyaccessModes。您可以在附加链接上查看示例配置和更多信息。