我正在尝试在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
有人知道我在做什么错吗?
答案 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 paste
或i
打开插入模式,然后再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申请时,如果仍然遇到问题