Greenplum小问题一例 – interconnect error: could not set up udp listener socket

今天社区的小伙伴在腾讯云上遇到了一个奇怪的问题,下面记录一下这个问题的定位过程和问题原因。

问题现象

首先报错信息如下截图:

interconnect error
interconnect error
psql: FATAL: interconnect error: could not set up udp listener socket

此时整个集群的状态用gpstate去查看是正常的,但是psql就是登录不了。

问题定位

出现这个问题我第一反应是不是腾讯云的udp端口访问做了限制。然后我去就改了参数:gp_interconnect_type 从 udpifc 改为 tcp 发现问题仍然没有解决,报错信息类似。所以肯定不是这个原因导致的。

然后,如果集群没问题的话,psql没法创建udp listener socket,那可能跟IP信息有关系,于是我去查看了一下/etc/hosts这个主机的配置,找到了问题的原因

原因就是:小伙伴配置hosts时,使用的是腾讯云对外提供的IP地址,这些地址在云主机上通过ifconfig命令是看不到的,应该是在网络层做了转发操作。所以IP都不存在,怎么能创建socket呢?

解决方法:最终的解决办法就是把所有主机的/etc/hosts配置都修改为本地集群内部的IP地址映射,然后重启集群,就可以正常连接使用了。

写在最后

现在在云上部署分布式数据库集群已经很常见了,GP在部署过程中,除了常规的防火墙等配置外,还需要注意以下几个点。

  • 是否开启机器与机器之间的白名单访问策略;
  • 是否开启机器之间的TCP和UDP端口访问支持策略;
  • 内部沟通是否使用机器内部的有效IP地址;
  • 外部访问是否开启了Master节点的外网IP和端口访问映射。

本文从CSDN(点击查看原文)转载而来。不代表烟海拾贝立场,如若转载,请注明出处:https://somirror.com/3589.html

(0)
上一篇 2023-01-06 07:31
下一篇 2023-01-06 10:14

相关推荐

发表回复

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