Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
getaddrinfo:名称解析kubernetes+;科雷恩斯_Kubernetes_Coredns - Fatal编程技术网

getaddrinfo:名称解析kubernetes+;科雷恩斯

getaddrinfo:名称解析kubernetes+;科雷恩斯,kubernetes,coredns,Kubernetes,Coredns,我们有一个服务,发送大量事件。它基本上会打开多个http POST连接 由于我们将服务移动到kubernetes,因此我们不时出现getaddrinfo:名称解析中的临时故障错误。(大多数电话都能正常工作,但也有一些失败了,这很奇怪 有人能解释为什么以及如何修复吗?检查点火器柱,他们也有类似的问题: 以及其dns信息的来源: TLDR:检查arp表缓存gc_*主机参数,尝试在containers/etc/gai.conf中禁用AAAA查询,将DNS移动到守护程序集,并将主机IP作为DNS服务

我们有一个服务,发送大量事件。它基本上会打开多个http POST连接

由于我们将服务移动到kubernetes,因此我们不时出现
getaddrinfo:名称解析中的临时故障
错误。(大多数电话都能正常工作,但也有一些失败了,这很奇怪


有人能解释为什么以及如何修复吗?

检查点火器柱,他们也有类似的问题:

以及其dns信息的来源:

TLDR:检查arp表缓存gc_*主机参数,尝试在containers/etc/gai.conf中禁用AAAA查询,将DNS移动到守护程序集,并将主机IP作为DNS服务器注入POD


此外,为了帮助解决这一问题并加快dns解析速度,请在所有域(即:database.example.com.)中添加一个结束点,这样coredns将直接尝试该查询(一个查询,两个使用ipv6),而不是尝试所有kubernetes搜索域列表(大约5个,10个使用ipv6)。只在您查询kubernetes资源或不喜欢它的应用程序中保留该点(如果存在,这是一个错误,所有DNS总是以一个点结束,而大多数情况下,我们可以保留该点,这是正确的方式,不能失败)

您能否更具体地说明哪些调用失败?您如何处理另一个服务?我正在对集群外的不同域(在web上)进行多个调用。有时调用会失败。coredns日志中的错误如下:
.ec2.internal.AAAA:无法访问的后端:读取udp 10.0.158.199:51893->10.0.0.2:53:i/o超时
-coredns试图访问.ec2.internal而不仅仅是。此外,我不明白为什么会超时。更新,kubernetes 1.18(发布时)将允许在守护程序中使用特殊的DNS,因此每个节点都将拥有自己的本地DNS,绕过conntrack表,这将有助于解决此类问题