最近在我们的一个 k8s 部署中,我们看到一个奇怪的 IP 出现在我们的日志中。此错误日志与我们使用go-redis的服务之一有关。这是错误日志的正文:
"jsonPayload":{
"action":"HotStorage.Find",
"error":"dial tcp: lookup 10.16.126.2.17: no such host",
"event":{
"caller":{
"file":"/go/src/xxxxxxxx/repository/redis/invocations.go",
"function":"xxxxxxxxxx/repository/redis.(*HotStorage).Find",
"lineno":227
},
}
该消息的奇怪之处在于它试图连接到一个显然无效的 5 个八位字节 IP 地址。.17
实际上,IP末尾有一个额外的,其余的是我们的 Redis pod 的正确地址,这不是第一次发生这种情况。
在一次事件中,我登录了一个遇到此问题的 pod,并尝试使用手动解析 Redis pod 的 IP,ping
它返回了正确的地址(没有额外的部分)。值得注意的是,我们使用 k8s 主机名来查找我们的 pod。
注 1:它总是一个额外的.17
东西,把一切都搞砸了。它来自哪里,为什么是这个数字?
注意 2:我们正在使用golang:1.16.3-alpine
构建我们的人工制品和alpine:3.12
图像来运行它们。
如果有人可以帮助我或指出我继续寻找的方向,我将不胜感激。