DNS查询出现的问题
在tutor-neo-question项目接入到soho-k8s后,在tutor-neo-question-86ccc7bfcc-g59kf / tutor-neo-question-569b6d9fb9-ggxw6 pod上服务出现dns查询出失败,导致业务无法启动
排查过程
由于问题是一直持续出现,非偶发情况,首先登陆到该pod尝试手动解析域名,发现域名可以正常解析,说明主机上dns解析没问有问题,且dns server也没有问题。
通过日志发现解析失败的域名是:xxxx.redis.rds.aliyuncs.com.zhenguanyu.com, 增加了一个zhengguanyu.com,在pod里的/etc/resolv.conf里发现配置了search,因此增加zhenguanyu.com是一个合理行为,我们的主机名都是挂载zhenguanyu.com下面的。例如:soho-test为主机名,实际的域名为soho-test.zhenguanyu.com
resolv.conf增加了search域后解析的过程发生了变化:
第一次解析:xxxx.redis.rds.aliyuncs.com.default.svc.cluster.local A
第二次解析:xxxx.redis.rds.aliyuncs.com.default.svc.cluster.local AAAA
第三次解析:xxxx.redis.rds.aliyuncs.com.svc.cluster.local A
第四次解析:xxxx.redis.rds.aliyuncs.com.svc.cluster.local AAAA
第五次解析:xxxx.redis.rds.aliyuncs.com.cluster.local A
第六次解析:xxxx.redis.rds.aliyuncs.com.cluster.local AAAA
第七次解析:xxxx.redis.rds.aliyuncs.com.zhenguanyu.com A
第八次解析:xxxx.redis.rds.aliyuncs.com.zhenguanyu.com AAAA
第九次解析:xxxx.redis.rds.aliyuncs.com. A
第十次解析:xxxx.redis.rds.aliyuncs.com. AAAA
这个变化会导致域名查询的失败率大大提高,但是不是引起本案例的问题。
因为是持续出现,在排除了dns server和pod的问题后,最后和业务方沟通发现将redission库升级了就好了,业务之前用的是原生的redisson 3.5.7,升级3.12.1版本可以解决此问题
此问题主要是netty的问题,问题主要有2个,issues: https://github.com/netty/netty/issues/8261
第一个:
第二个:
解决方案
建议升级到3.12.1以后