gpt4 book ai didi

Kubernetes 无法为 pod 挂载卷

转载 作者:行者123 更新时间:2023-12-02 06:12:06 25 4
gpt4 key购买 nike

我正在尝试设置一个卷以与 k8s 上的 Mongo 一起使用。

我使用 kubectl create -f pv.yaml 创建卷。

pv.yaml:

kind: PersistentVolume
apiVersion: v1
metadata:
name: pvvolume
labels:
type: local
spec:
storageClassName: standard
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
hostPath:
path: "/nfs"
claimRef:
kind: PersistentVolumeClaim
namespace: default
name: pvvolume

然后我部署 this StatefulSet有 pod 将 PVC 制作到此卷。

我的卷似乎已创建,没有问题,我希望它仅使用主机节点的存储。

当我尝试部署时出现以下错误:

Unable to mount volumes for pod "mongo-0_default(2735bc71-5201-11e8-804f-02dffec55fd2)": timeout expired waiting for volumes to attach/mount for pod "default"/"mongo-0". list of unattached/unmounted volumes=[mongo-persistent-storage]

错过了设置持久卷的步骤吗?

最佳答案

持久卷只是 kubernetes 集群内某些存储的可用性声明。在此阶段,您的 pod 没有任何绑定(bind)。

由于您的 Pod 是通过 StatefulSet 部署的,您的集群中应该有一个或多个 PersistentVolumeClaims这些是将 pod 与 PersistentVolume 连接起来的对象。

为了手动将 PV 与 PVC 绑定(bind),您需要通过在其规范部分添加以下内容来编辑 PVC:

volumeName: "<your persistent volume name>"

以下是有关此过程如何工作的说明:  https://docs.openshift.org/latest/dev_guide/persistent_volumes.html#persistent-volumes-volumes-and-claim-prebinding

关于Kubernetes 无法为 pod 挂载卷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50218042/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com