我确实看过这个,但是我不认为答案可以解决:kubernetes persistence volume and persistence volume claim exceeded storage
无论如何,我试图查看文档,但是找不到PVC Azure磁盘已满时会发生什么情况?因此,我们有一个grafana应用程序来监视一些数据。我们使用PVC来确保如果Pod被杀死,则保存数据。现在,pod连续获取数据,磁盘变得越来越满。磁盘已满时会发生什么?理想情况下,最好实现某种功能,例如,当它达到80%的容量时,它会删除20%的数据,例如从最早的数据开始。或者我们如何解决这个问题?
pvc:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: graphite-pvc
spec:
accessModes:
- ReadWriteOnce
storageClassName: managed-premium
resources:
requests:
storage: 256Gi
答案 0 :(得分:2)
将PVC视为一个文件夹,该文件夹已安装到运行grafana服务的容器中。它具有您提供的固定大小,根据问题,它不会增加。
磁盘已满时会发生什么?
在这里,与在系统上运行的普通服务并在系统之外运行没有什么不同。如果是本地计算机或云VM,则会收到有关存储的警报,并且如果您采取措施,则该服务将错误提示out of disk space error
现在,您可以使用带有Kubernetes插件的Prometheus之类的服务来获取存储空间警报,但是默认情况下,Kubernetes不会提供任何警报。
我们该如何解决(磁盘空间)问题?
与在普通系统上一样,有许多解决方案。但是,如果考虑到这一点,系统或VM或Kubernetes并不是决定应删除哪些文件以及应保留哪些文件的合适人选,原因是kubernetes不知道什么是数据,并且事实上,它不拥有数据数据。该服务可以。 另一方面,您可以使用该服务或创建自定义的新存档服务,以从Grafana PVC中获取数据并将其放置在S3或任何其他存储中。