我正在尝试通过以下方式将PV安装到吊舱中:
update();
广告连播会正确创建并使用PVC声明而不会出现问题。但是,当我弯入吊舱以查看挂载时,大小为50Gb,这是附加存储的大小,而不是我指定的卷。
{
"kind": "PersistentVolume",
"apiVersion": "v1",
"metadata": {
"name": "pv",
"labels": {
"type": "ssd1-zone1"
}
},
"spec": {
"capacity": {
"storage": "150Gi"
},
"hostPath": {
"path": "/mnt/data"
},
"accessModes": [
"ReadWriteOnce"
],
"persistentVolumeReclaimPolicy": "Retain",
"storageClassName": "zone1"
}
}
{
"kind": "PersistentVolumeClaim",
"apiVersion": "v1",
"metadata": {
"name": "pvc",
"namespace": "clever"
},
"spec": {
"accessModes": [
"ReadWriteOnce"
],
"resources": {
"requests": {
"storage": "150Gi"
}
},
"volumeName": "pv",
"storageClassName": "zone1"
}
}
kind: Pod
apiVersion: v1
metadata:
name: task-pv-pod
spec:
volumes:
- name: pv
persistentVolumeClaim:
claimName: pvc
containers:
- name: task-pv-container
image: nginx
ports:
- containerPort: 80
name: "http-server"
volumeMounts:
- mountPath: "/usr/share/nginx/html"
name: pv
PVC似乎是正确的:
root@task-pv-pod:/# df -aTh | grep "/html"
/dev/vda1 xfs 50G 13G 38G 26% /usr/share/nginx/html
我已经多次删除并重新创建了卷和声明,并尝试对我的Pod使用不同的图像。什么都没用。
答案 0 :(得分:2)
您的/ mnt / data似乎位于根分区上,因此它提供的可用空间与rootfs中的任何其他文件夹相同。
关于PV / PVC的已请求和已定义容量的问题是,这些是用于匹配或提示动态预配器的唯一值。如果使用hostPath和手动创建的PV,则可以定义300TB,并且它将绑定,即使hostPath的实际文件夹具有5G,因为未验证设备的实际大小(这很合理,因为您仅信任其中提供的数据) PV)。
因此,正如我所说,请检查您的/ mnt / data是否仅是rootfs的一部分。如果问题仍然存在,请在运行Pod的节点上提供mount
命令的输出。