我们的征途是星辰大海

My Conquest Is the Sea of Stars

"too many open files" from kubectl logs

昨天在查看k8s集群机器上的某个pod日志的时候发现最后一行提示failed to create fsnotify watchertoo many open files

《

虽然不影响我查看日志,但是这样的提示总归影响体验,想着解决。

翻到一篇中文介绍 Kubernetes – 专治疑难杂症

这是因为系统默认的fs.inotify.max_user_instances=128太小,需要重新设置此值:

  • 重新设置此值:
1
sudo sysctl fs.inotify.max_user_instances=8192

改完查看日志,依然报错,并无效果,中途还查看了ulimit -a的几个其他限制,默认值都很大。

最后翻到  https://bugzilla.redhat.com/show_bug.cgi?id=1605153

on master
# sysctl -a | grep fs.inotify.max_user_
fs.inotify.max_user_instances = 128
fs.inotify.max_user_watches = 65536

on node:
# sysctl -a | grep fs.inotify.max_user_
fs.inotify.max_user_instances = 128
fs.inotify.max_user_watches = 65536

看的这段才想起查看所查日志的所在节点并没有修改。
kubectl get po -n default -o wide

NAME                                READY     STATUS    RESTARTS   AGE       IP               NODE
myapp-nginx-7655b75998-x8vqf        1/1       Running   2          15d       172.28.106.215   vps1-s1
openldap-6f64b56c6c-5l8ks           1/1       Running   1          132d      172.28.106.235   vps1-s1
phpldapadmin-5655bcf9b5-454sk       1/1       Running   1          132d      172.28.106.237   vps1-s1
postgres-postgres-d7b5449c9-cxdhs   1/1       Running   0          68d       172.28.235.65    vps1-m1
rabbitmq-rabbitmq-65f8d79bf-zdwrp   1/1       Running   2          67d       172.28.106.210   vps1-s1
redis-redis-5c8b847b8f-tpv4d        1/1       Running   0          6d        172.28.106.218   vps1-s1

找到想查pod所在节点,然后登录查看并修改即可。


 
点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据