Kubernetes 使用hostPath限制永久卷声明内容文件夹大小

Kubernetes 使用hostPath限制永久卷声明内容文件夹大小,kubernetes,persistent-volume-claims,Kubernetes,Persistent Volume Claims,我创建了一个具有20Mi存储限制和17mi存储请求的持久卷声明,但我可以在hostPath文件夹中上载一个50mi文件。但是我想要的是限制文件夹内容的大小。如果文件夹中的内容超过20Mi,那么Kubernetes应该说它不允许新文件 持久卷: apiVersion: v1 kind: PersistentVolume metadata: name: example-pv namespace: limit-range spec: capacity: storage: 10Gi

我创建了一个具有20Mi存储限制和17mi存储请求的持久卷声明,但我可以在hostPath文件夹中上载一个50mi文件。但是我想要的是限制文件夹内容的大小。如果文件夹中的内容超过20Mi,那么Kubernetes应该说它不允许新文件

持久卷:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: example-pv
  namespace: limit-range
spec:
  capacity:
    storage: 10Gi
  accessModes:
  - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: local-storage
  hostPath:
    path: /home/me/kubernetes/web
    type: DirectoryOrCreate
持续批量索赔:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
    name: pvc
    namespace: limit-range
spec:
    storageClassName: local-storage
    accessModes:
        - ReadWriteOnce
    resources:
        limits:
            storage: 20Mi
        requests:
            storage: 17Mi
部署:

apiVersion: apps/v1
kind: Deployment
metadata:
    name: upload-preview-2
    namespace: limit-range
spec:
    selector:
        matchLabels:
            app: upload-preview-2
    template:
        metadata:
            labels:
                app: upload-preview-2
        spec:
            containers:
                - image: upload-preview:latest
                  imagePullPolicy: Never
                  name: web
                  ports:
                    - containerPort: 80
                  volumeMounts:
                    - mountPath: /var/www/html/web
                      name: localpath
                      subPath: dev

            volumes:
              - name: localpath
                persistentVolumeClaim:
                    claimName: pvc
这种配置并没有给我我所期望的。所以我尝试了限制范围和配额,但仍然没有预期的行为

限制范围:

apiVersion: v1 kind: LimitRange metadata:   name: storagelimits   namespace: limit-range spec:   limits:
  - type: PersistentVolumeClaim
    max:
      storage: 18Mi
    min:
      storage: 10Mi
配额:

apiVersion: v1
kind: ResourceQuota
metadata:
  name: storagequota
  namespace: limit-range
spec:
  hard:
    persistentvolumeclaims: "5"
    requests.storage: "18Mi"
我尝试过kubectl描述配额-n限制范围,结果是:

Name:                   storagequota
Namespace:              limit-range
Resource                Used  Hard
--------                ----  ----
persistentvolumeclaims  1     5
requests.storage        17Mi  18Mi
我的想法是,它可能不起作用,因为我使用的是hostPath。

对于emptyDir或hostPath卷可以占用的空间没有限制,容器之间或吊舱之间也没有隔离

将来,我们希望emptyDir和hostPath卷能够使用资源规范请求一定数量的空间,并为具有多种媒体类型的群集选择要使用的媒体类型

emptyDir或hostPath卷可以占用的空间没有限制,容器之间或吊舱之间也没有隔离

将来,我们希望emptyDir和hostPath卷能够使用资源规范请求一定数量的空间,并为具有多种媒体类型的群集选择要使用的媒体类型