处于挂起状态的 Pod 出现错误:io.k8s.api.core.v1.PersistentVolumeSpec.accessModes 的类型无效:得到“字符串”,预期为“数组”,

问题描述 投票:0回答:1

我的 Pod 处于挂起状态。我正在 kubernetes 中部署 jenkins pod,当我描述 pod 时,出现以下错误

错误:验证“pv.yml”时出错:验证数据时出错:[ValidationError(PersistentVolume.spec.accessModes):io.k8s.api.core.v1.PersistentVolumeSpec.accessModes 的类型无效:得到“字符串”,预期为“ array", ValidationError(PersistentVolume.spec.nodeAffinity.required.nodeSelectorTerms):io.k8s.api.core.v1.NodeSelector.nodeSelectorTerms 的类型无效:得到“map”,期望“array”];如果您选择忽略这些错误,请使用 --validate=false

关闭验证

我的vc.Yml文件

      apiVersion: v1
         kind: PersistentVolume
         metadata:
           name: jenkins-pv-volume
           labels:
             type: local
         spec:
           storageClassName: jenkins-storage
           claimRef:
              name: jenkins-pv-claim
              namespace: jenkins
           capacity:
            storage: 10Gi
          accessModes:
            ReadWriteOnce
         hostPath:
           path: /mnt/jenkins-vol
         nodeAffinity:
           required:
            nodeSelectorTerms:
             matchExpressions:
                 key: kubernetes.io/hostname
                 operator: In
                 values: central-harbor 

请指教

kubernetes jenkins kubernetes-helm kubectl
1个回答
0
投票

只需修改

accessModes
的定义如下:

          accessModes:
            - ReadWriteOnce

设置

accessModes
期望 和
array
,而不是
string
。 请参阅 kubernetes 文档中的示例

© www.soinside.com 2019 - 2024. All rights reserved.