技术支持与常见问题

更新时间:
复制 MD 格式

本文汇总云原生多模数据库 Lindorm的技术支持方式、以及连接类常见问题与解决方法。

技术支持

关于云原生多模数据库 Lindorm产品和服务的任何问题,您可以使用钉钉搜索钉钉群号 35977898 加入钉钉群进行反馈。

常见问题

使用 Lindorm 过程中如遇连接相关问题,可参考以下问答进行排查与处理。

  • Q:在 ECS 上通过专有网络访问 Lindorm 失败,可能有哪些原因?

    A:在 ECS 实例上通过专有网络访问 Lindorm 实例需要确保 ECS 与 Lindorm 之间可以相互连接。若二者无法互访,常见原因及处理如下:

    • 未将 ECS 实例的主私网 IP 地址添加到 Lindorm 白名单。请将 ECS 的主私网 IP 添加至 Lindorm 白名单,具体操作请参见设置白名单

    • ECS 安全组规则阻塞了对 Lindorm 内网地址和端口的访问。请添加安全组规则使其允许访问,具体操作请参见添加安全组规则

    • ECS 与 Lindorm 的网络类型不同。网络类型不同时可参考:

      • 经典网络下无法访问 VPC 环境。

      • 同一 VPC 网络下跨交换机,请添加安全组规则和网络 ACL 规则,具体操作请参见添加安全组规则添加网络 ACL 规则

      • 不同 VPC 网络下默认无法访问,请配置高速通道。更多信息,请参见如何选择私网类产品?

      • 非阿里云环境访问(例如公司内网),请开通公网访问或通过专线接入。

  • Q:客户端报错 “Retry exhausted when update config from seedserver” 如何处理?

    A:可通过以下步骤进行排查:

    • 若通过 ECS 访问 Lindorm 实例,请确保 ECS 与 Lindorm 之间网络可以相互连接,可参考上文网络连通性排查方法。

    • 可能是 Lindorm 实例的连接地址或端口使用错误,例如 HBase 兼容客户端的连接地址端口号为 30020

  • Q:客户端报错 “Failed to connect to jdbc:lindorm:table:url=****” 如何处理?

    A:可通过以下步骤进行排查:

    • 若通过 ECS 访问 Lindorm 实例,请确保 ECS 与 Lindorm 之间网络可以相互连接,可参考上文网络连通性排查方法。

    • 可能是 Lindorm 实例的连接地址或端口使用错误,例如 Lindorm 宽表 SQL 的连接地址端口号为 30060,获取方法请参见获取连接信息

  • Q:报错 “DoNotRetryIOException: Detect inefficient query: SELECT*FROM xxxx …” 是什么原因?

    A:执行 SELECT 语句被 Lindorm 宽表引擎识别为低效查询,服务器拒绝执行。解决方法请参见SELECT

  • Q:如何使用 ping 命令检测 ECS 与 Lindorm 之间的连接?

    A:新建 Lindorm 实例后,或使用中实例突然无法连接时,可在 ECS 命令行使用 ping 命令检测连通性。操作步骤如下:

    1. 查看连接地址

    2. 登录 ECS,在命令行执行:

      ping <host>

      示例:

      ping ld-bp1mq0tdzbx1m****-proxy-lindorm-pub.lindorm.aliyuncs.com
      说明
      • host 为连接地址(不添加端口号)。

      • Windows 和 Linux 均可使用该命令;Windows 需持续检测可使用 ping <host> -t

    3. 查看测试结果:

      • Windows 系统将会在 4 次 ping 后显示结果。

      • Linux 会持续发送 ping 请求,按 Ctrl+C 停止并查看统计结果。

    结果分析:若所有请求均成功返回,则连接正常;若未收到正常回复,请按上文网络连通性条目检查白名单、安全组等配置。

  • Q:如何使用 telnet 命令检测 Lindorm 端口连通性?

    A:若 Lindorm 出现连接问题且 ping 检测成功,可进一步使用 telnet 检测服务端口是否可用。

    前提条件:ECS 已安装 Telnet(Linux)或已启用 Telnet 客户端(Windows)。

    1. 查看连接地址

    2. 登录 ECS,在命令行执行:

      telnet <host> <port>

      示例:

      telnet ld-bp1mq0tdzbx1m****-proxy-lindorm-pub.lindorm.aliyuncs.com 33060
      说明
      • host 为连接地址,port 为端口号。

      • Windows 和 Linux 均可使用该命令。

    3. 查看测试结果。

    结果分析:若连接存在问题但可在 ECS 上使用 telnet 连上 Lindorm,则 ECS 与 Lindorm 之间网络无异常,请排查客户端、业务代码或其它导致服务阻塞的因素。

  • Q:使用 Spark on MaxCompute 访问 Lindorm 时出现 Connection Timeout 怎么办?

    A:使用 Spark on MaxCompute 访问 Lindorm 时,无论通过协议兼容还是 Lindorm 客户端,均可能报连接超时(Connection Timeout)。

    原因说明:Spark on MaxCompute 的网络架构中,多个 Pod 经弹性网卡(ENI)与其他 VPC 上的数据服务通信,ENI 端按算法分配 Port;访问对端 IP 不同时 Port 可能重复。Lindorm 客户端或协议兼容连接采用 SLB + 直连通信,SLB 将源地址转换为 ENI 地址时,若负载服务器未保存 NAT 信息,可能出现丢包,导致连接超时或数据串流。

    解决方案:建议使用开源 Spark 内置的 HBase 客户端访问 Lindorm 实例。