近段时间遇到了两个客户是在使用SuperMap iManager for K8S中遇到了相同的问题

1)问题现象

iManager的主页可以正常访问,但是站点列表里的内容却无法显示。查看k8s的dashboard页面

全都是PVC无法挂载的报错,在系统中输入df这类命令会卡住。正常情况下,一般都是由于NFS服务异常导致,只需要重启下NFS服务和重启K8S中supermap命名空间下的imanager-nfs-client容器就能恢复,但是操作了以上步骤后依然无法解决此问题

2)排查原因

查看系统的日志,journalctl -b -a -r -l  看到 类似这样的日志

 经过查阅资料,主要原因点在:linux会把可用内存的40%的空间作为文件系统的缓存。当缓存快满时,文件系统将缓存中的数据整体同步到磁盘中。但是系统对同步时间有最大120秒的限制。如果文件系统不能在时间限制之内完成数据同步,则会发生上述的错误

此类现象通常发生在内存很大的系统上。系统内存大,则缓冲区大,同步数据所需要的时间就越长,超时的概率就越大

3)解决办法

我们采用了修改文件系统缓存大小的配置,移除缓存同步时间限制的方式来解决这个问题

配置文件sysctl.conf,此配置文件在/etc目录下。打开配置文件在最后添加如下两行代码

vm.dirty_ratio=10​
vm.dirty_background_ratio=5​
kernel.hung_task_timeout_secs=0

保存后需要重启机器

重启后服务全部恢复,并且之后没有再次出现类似问题

参考文章:https://blog.csdn.net/electrocrazy/article/details/79377214

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐