误写日志到网盘导致程序被重启

背景

  • 早先k8s集群节点挂载glusterfs到本机。

问题

  • 应用A因unhealthy被重启

定位与解决

  • 应用A接口Unhealthy,检查数据库、Redis等连接正常。
  • 定位unhealthy原因不是接口非200,而是接口响应超时,太慢。
  • 紧急取消应用A的健康检查机制,先恢复业务,服务整体还是慢,但不会总重启了。
  • 继续定位,发现应用A的日志文件为空
  • 发现应用A的容器内有较多的close_wait(干扰信息)
  • df -h发现容器内挂载着gfs,并且持续在写入数据,而且是日志文件
  • 确定是deployment中的volume挂载信息错误
  • 追踪到云平台开发人员因修复bug去洗数据,洗错了,将本机映射:/data/docker_volume:/var/app/log洗成了 gfs:/var/app/log

原因

  • 误将日志写在Glusterfs上,应用流量大产生的日志多,导致应用健康检查失败,且程序变慢。