当 EMR 集群有多个 HiveServer2 服务时,可以借助 Zookeeper 服务实现访问 HiveServer2 的负载均衡,将 HiveServer2 的压力分担到多个节点上去。本文详细介绍 HiveServer2 负载均衡的配置及使用方法。
已创建高可用集群,详情请参见 创建集群。
以下内容适用于 未打开 Kerberos 集群模式 开关、和 已打开高可用 开关的集群。
高可用集群默认安装了 Zookeeper 服务,可以使用以下连接方式选择一个 HiveServer2 进行连接。
进入 Hive 页面。
在顶部菜单栏处,根据实际情况选择地域。
单击左侧的 集群列表 页签。
在 集群列表 页面,单击相应集群所在行的 详情。
单击 服务列表 页签,选择 Hive。
在 Hive 页面,修改配置。
单击 服务参数 页签。
通过搜索栏,搜索得到以下两个参数信息:
hive.zookeeper.quorum
hive.server2.zookeeper.namespace
使用 SSH 方式登录到集群主节点,详情请参见使用 SSH连接主节点。
执行以下命令,Zookeeper 服务会选择一个 HiveServer2 进行连接:
beeline -u 'jdbc:hive2://<hive.zookeeper.quorum>/;serviceDiscoveryMode=zooKeeper;zooKeeperNamespace=<hive.server2.zookeeper.namespace>' -n <user> -p <password>
说明
hive.zookeeper.quorum 前文得到的 hive.zookeeper.quorum 参数值
hive.server2.zookeeper.namespace 前文得到的 hive.server2.zookeeper.namespace 参数值
user 为 LDAP 的用户名。
password 为 LDAP 的密码。开启 LDAP 认证后,访问 HiveServer2 需要提供LDAP的用户名和密码,获取方式请参见 管理用户。