Grafana数据存储在NFS的问题记录

概述

因为最近工作需要在新环境K8S部署Grafana数据,将NFS目录作为容器的存储目录,但是在部署过程发现一个问题,个人觉得值得记录,故而写了这篇博文。

Grafana报错

Grafana的K8S配置,之前在某个环境下部署成功(同样利用NFS作为存储),后面环境变更后再次部署,Grafana启动的时候,报failed to check table existence: Disk I/O Error,然后就退出了。

问题根源

经过一番网上搜索,发现是因为NFS存储实现不一致导致SQLite数据库出现的问题,下面大佬的解释

SQLite uses reader/writer locks to control access to the database...But use

caution: this locking mechanism might not work correctly if the database file

is kept on an NFS filesystem. This is because fcntl() file locking is broken on

many NFS implementations...

翻译过来就是 SQLite使用读写锁进行访问控制,但是fcntl文件锁定操作在NFS储存实现上面并不能保证一致。这就解答了为啥之前的环境部署没问题,因为之前环境针对fcntl文件锁的实现符合本地文件规范,所以之前环境部署没有暴露这个问题,但是现在这个环境,实现存在差异,故而导致Grafana起不来

参考链接

NFS上的sqlite

相关推荐
llf_cloud20 小时前
Grafana容器化部署
grafana
bug攻城狮21 小时前
Alloy VS Promtail:基于 Loki 的日志采集架构对比与选型指南
运维·架构·grafana·数据可视化
core5121 天前
Grafana接入Prometheus实战
grafana·prometheus
奈斯ing1 天前
【prometheus+Grafana篇】PromQL核心函数解析:rate()与irate()函数详解
运维·grafana·prometheus
博同学7 天前
Nginx + ELK + Grafana 全球访问热力图
nginx·elk·grafana
JAVA拾贝7 天前
Prometheus+Grafana运维监控并实现钉钉告警
运维·钉钉·grafana·prometheus·运维监控
微风◝7 天前
12. grafana-Dashboard的Variable(过滤)使用
grafana
不太聪明的样子21 天前
c++ 项目使用 prometheus + grafana 进行实时监控
c++·grafana·prometheus
Detachym1 个月前
CentOS下的运维监控Grafana部署
运维·centos·grafana
南夏一木子1 个月前
性能测试——搭建Prometheus+Grafana平台
grafana·prometheus