GCP上的Kubernetes存储:此上下文错误中不允许映射值

时间:2019-05-26 18:45:28

标签: kubernetes google-cloud-platform

我正在尝试在Google的Kubernetes服务上创建10Gi磁盘,并使用其示例文件:

kind: PersistentVolume
apiVersion: v1
metadata:
  name: task-pv-volume
  labels:
    type: local
spec:
  storageClassName: manual
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: "/mnt/data"

我得到了错误:

$ kubectl apply -f pv-volume.yml
Error: error parsing pv-volume.yml error converting YAML to JSON: line 4: mapping values not allowed in this context

有人知道我在做什么错吗?

1 个答案:

答案 0 :(得分:0)

我已将您的Yaml粘贴到GKE,一切正常。但是,有些事情可能导致此错误。

1)几天前有gcloud更新,请检查所有组件是否都是最新的-gcloud components update

2)错字(某些TAB或Enter)。要确保文件不包含空格,请直接从k8s.io下载它

kubectl apply -f https://k8s.io/examples/pods/storage/pv-volume.yaml
persistentvolume/task-pv-volume created

3) Vi格式问题。 我能够遇到相同问题的唯一方法是,当我将yaml代码直接复制到vi时,没有:set pastei打开插入模式,然后再ctrl+v

但是yaml代码如下:

kind: PersistentVolume
apiVersion: v1
metadata:
          name: task-pv-volume
            labels:
                        type: local
                        spec:
                                  storageClassName: manual
                                    capacity:
                                                storage: 10Gi
                                                  accessModes:
                                                              - ReadWriteOnce
                                                                  hostPath:
                                                                              path: "/mnt/data"

===

请直接从k8s.io申请时,如果仍然遇到问题