更新时间:2025-12-11 GMT+08:00
分享

ALM-16054 HiveServer连接被限流

告警解释

HiveServer支持配置指定用户或IP的最大连接数限制,连接数达到限制值后新的连接将被拒绝并触发此告警。5分钟后如果没有新的连接被拒绝,将自动清除此告警。

该章节适用于MRS 3.6.0-LTS及之后版本。

告警属性

告警ID

告警级别

是否可自动清除

16054

重要

告警参数

类别

参数名称

参数含义

定位信息

来源

产生告警的集群名称。

服务名

产生告警的服务名称。

角色名

产生告警的角色名称。

主机名

产生告警的主机名。

附加信息

Trigger condition

系统当前指标取值满足自定义的告警设置条件。

对系统的影响

上报告警的用户或IP无法新建HiveServer连接,影响相关业务。

可能原因

  • HiveServer的用户或IP最大连接数限制设置不合理,需要调整。
  • 相关业务异常,创建大量HiveServer连接或连接未关闭。

处理步骤

调整上报告警的用户或IP的最大连接数限制。

  1. 登录FusionInsight Manager,选择“集群 > 服务”,在服务列表中单击“Hive”进入概览页面。
  2. 单击“配置”页签,选择“全部配置”,在右侧搜索框中搜索“connections.per”,检查并修改以下3个配置中的告警用户或IP连接HiveServer的限制值,并单击“保存”保存配置。

    • hive.server2.limit.connections.per.ipaddress.extend:表示每个HiveServer允许指定IP打开的最大连接数,达到限制值后新的连接将被拒绝。格式为“IP:limit”,多个IP使用逗号分隔,最多允许指定10个IP。
    • hive.server2.limit.connections.per.user.extend:表示每个HiveServer允许指定用户打开的最大连接数,达到限制值后新的连接将被拒绝。格式为“user:limit”,多个用户使用逗号分隔,最多允许指定10个用户。
    • hive.server2.limit.connections.per.user.ipaddress.extend:表示每个HiveServer允许指定IP的用户打开的最大连接数,达到限制值后新的连接将被拒绝。格式为“IP:user:limit”,多个IP用户使用逗号分隔,最多允许指定10个IP用户。

  3. 选择“实例”,勾选所有HiveServer实例,选择“更多 > 重启实例”,在弹出的窗口中输入当前用户密码并单击“确定”重启HiveServer实例。

    正在重启的HiveServer实例无法对外提供服务,对应实例上正在执行的SQL任务可能失败。

  4. 选择“运维 > 告警 > 告警”,在告警列表中查看“HiveServer连接被限流”告警是否清除。

    • 是,处理完毕。
    • 否,执行步骤 5

检查上报告警的用户或IP的连接是否正常关闭。

  1. 在该告警的定位信息中单击上报告警的主机名,记录对应HiveServer实例的IP地址。
  2. 查看该告警的附加信息,确认上报告警的连接类型及连接数,并执行步骤 7

    • 附加信息包含“user: a1 limit: 2, ...”,表示a1用户的HiveServer连接数超过限制2
    • 附加信息包含“ipaddress: 192.168.xxx.xxx limit: 3, ...”,表示IP为“192.168.xxx.xxx”的HiveServer连接数超过限制3
    • 附加信息包含“user: a2 ipaddress: 192.168..xxx.xxx limit: 10, ...”,表示192.168.xxx.xxxa2用户的HiveServer连接数超过限制10

  3. 登录步骤 5查看到的HiveServer实例节点,执行以下命令查看告警用户或IP打开与关闭的连接数:

    • 查看告警用户打开与关闭的HiveServer连接数:

      grep 'OpenSession' /var/log/Bigdata/audit/hive/hiveserver/hive-audit.log | awk '{print $9}' | sort | uniq -c | sort | grep 'UserName=user'

      grep 'CloseSession' /var/log/Bigdata/audit/hive/hiveserver/hive-audit.log | awk '{print $9}' | sort | uniq -c | sort | grep 'UserName=user'

    • 查看告警IP打开与关闭的HiveServer连接数:

      grep 'OpenSession' /var/log/Bigdata/audit/hive/hiveserver/hive-audit.log | awk '{print $10}' | sort | uniq -c | sort | grep 'UserIP=IP'

      grep 'CloseSession' /var/log/Bigdata/audit/hive/hiveserver/hive-audit.log | awk '{print $10}' | sort | uniq -c | sort | grep 'UserIP=IP'

    查看回显信息中是否有对应用户或IP打开但未关闭的HiveServer连接。

  4. 根据对应用户或IP联系相关业务人员排查对应业务。
  5. 在FusionInsight Manager首页,选择“运维 > 告警 > 告警”,在告警列表中查看“HiveServer连接被限流”告警是否清除。

    • 是,处理完毕。
    • 否,执行步骤 10

收集故障信息。

  1. 在FusionInsight Manager首页,选择“运维 > 日志 > 下载”。
  2. 在“服务”中勾选待操作集群的“Hive > HiveServer”。
  3. 单击右上角的时间编辑按钮,设置日志收集的“开始时间”和“结束时间”,分别为告警产生时间的前后10分钟,单击“下载”。
  4. 请联系运维人员,并发送已收集的故障日志信息和堆栈信息。

告警清除

此告警修复后,系统会自动清除此告警,无需手工清除。

参考信息

不涉及。

相关文档