mor*_*rla 5 kubernetes google-kubernetes-engine
目前,我尝试在我的yaml文件中实现PersistentVolume。我在互联网上阅读了很多文档,但我不明白为什么当我转到仪表板窗格时收到此消息
找不到persistentvolumeclaim“ karaf-conf”
pod.yaml
apiVersion: v1
kind: Pod
metadata:
name: karafpod
spec:
containers:
- name: karaf
image: xxx/karaf:ids-1.1.0
volumeMounts:
- name: karaf-conf-storage
mountPath: "/apps/karaf/etc"
volumes:
- name: karaf-conf-storage
persistentVolumeClaim:
claimName: karaf-conf-claim
Run Code Online (Sandbox Code Playgroud)
PersistentVolumeClaimKaraf.yml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: karaf-conf-claim
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Mi
Run Code Online (Sandbox Code Playgroud)
PersistentVolume.yaml
kind: PersistentVolume
apiVersion: v1
metadata:
name: karaf-conf
labels:
type: local
spec:
capacity:
storage: 100Mi
accessModes:
- ReadWriteOnce
hostPath:
path: "/apps/karaf/etc"
Run Code Online (Sandbox Code Playgroud)
您会在下面找到命令kubectl get pv的结果
NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE
karaf-conf 100Mi RWO Retain Terminating default/karaf-conf-claim 17h
karaf-conf-persistentvolume 100Mi RWO Retain Released default/karaf-conf 1h
Run Code Online (Sandbox Code Playgroud)
kubectl获取pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
karaf-conf-claim Terminating karaf-conf 10Mi RWO manual 17h
Run Code Online (Sandbox Code Playgroud)
小智 5
使用 hostPath,您不需要 PersistentVolume 或 PersistentVolumeClaim 对象,因此根据您的需要,这可能会更容易:
# file: pod.yaml
apiVersion: v1
kind: Pod
metadata:
name: karafpod
spec:
containers:
- name: karaf
image: xxx/karaf:ids-1.1.0
volumeMounts:
- name: karaf-conf-storage
mountPath: "/apps/karaf/etc" # Path mounted in container
# Use hostPath here
volumes:
- name: karaf-conf-storage
hostPath:
path: "/apps/karaf/etc" # Path from the host
Run Code Online (Sandbox Code Playgroud)
然后删除另外两个.yaml文件PersistentVolumeClaimKaraf.yml
并PersistentVolume.yml
官方文档请参见:https ://kubernetes.io/docs/concepts/storage/volumes/#hostpath
编辑:注意到原始帖子中的spec.containers.VolumeMounts.mountPath和spec.containers.volumes.hostPath.path是相同的,因此在yaml中添加了注释以澄清每个的目的。
归档时间: |
|
查看次数: |
4962 次 |
最近记录: |