更新时间:2022-12-14 GMT+08:00

配置HBase数据源

操作场景

本章节指导用户在HSConsole界面添加HBase数据源。

前提条件

  • 数据源所在集群域名与HetuEngine集群域名不能相同。
  • 数据源所在集群与HetuEngine集群节点网络互通。
  • 已创建HetuEngine计算实例。
  • 数据源所在集群与HetuEngine所在集群上ZooKeeper的SSL通信加密配置需保持一致。

    登录FusionInsight Manager,选择“集群 > 服务 > ZooKeeper > 配置 > 全部配置”,搜索“ssl.enabled”,值为“true”,表示启用SSL通信加密,值为“false”表示关闭SSL通信加密。

操作步骤

  1. 获取HBase数据源的“hbase-site.xml”、“hdfs-site.xml”和“core-site.xml”配置文件。

    1. 登录HBase数据源所在集群的FusionInsight Manager页面。
    2. 选择“集群 > 概览”。
    3. 选择“更多 > 下载客户端”,根据界面提示下载“完整客户端”文件。
    4. 将下载的客户端文件压缩包解压,获取“FusionInsight_Cluster_1_Services_ClientConfig/HBase/config”路径下的“hbase-site.xml”、“core-site.xml”和“hdfs-site.xml”文件。
    5. 如果“hbase-site.xml”文件中存在“hbase.rpc.client.impl”参数,那么“hbase.rpc.client.impl”的配置值修改成“org.apache.hadoop.hbase.ipc.RpcClientImpl”,如下所示:
      <property>
      <name>hbase.rpc.client.impl</name>
      <value>org.apache.hadoop.hbase.ipc.RpcClientImpl</value>
      </property>

      如果“hdfs-site.xml”、“hbase-site.xml”文件中引用到了非HetuEngine集群节点的host名称,需要在HetuEngine集群的每个节点的“/etc/hosts”文件中,加上引用到的host名称和对应的IP的映射,否则HetuEngine无法根据host名称连接到非本集群节点。

  2. 获取HBase数据源的代理用户的“user.keytab”和“krb5.conf”文件。

    1. 登录HBase数据源所在集群的FusionInsight Manager页面。
    2. 选择“系统 > 权限 > 用户”。
    3. 选择对应的数据源用户,在“操作”列中选择“更多 > 下载认证凭据”。
    4. 从下载的文件中解压获取“user.keytab”和“krb5.conf”文件。

    数据源的代理用户需要具有对HBase的相关操作权限。

  3. 使用HetuEngine管理员用户登录FusionInsight Manager,选择“集群 > 服务 > HetuEngine”,进入HetuEngine服务页面。
  4. 在概览页签下的“基本信息”区域,单击“HSConsole WebUI”后的链接,进入HSConsole界面。
  5. 选择“数据源”。
  1. 单击“添加数据源”。在“添加数据源”页面填写参数。

    1. 配置“基本配置”,参数配置请参考表1
      表1 基本配置

      参数

      描述

      取值样例

      数据源名称

      对接的数据源的名称。

      只能包含字母、数字、下划线(_),仅字母开头。

      hbase_1

      数据源类型

      对接的数据源的类型。选择“HBase”。

      HBase

      描述

      数据源的描述信息。

      只能包含汉字、英文字母、数字、中英文逗号、中英文句号、下划线(_)、空格和换行符。

      -

    2. 配置“HBase配置”,参数配置请参考表2
      表2 HBase配置

      参数

      描述

      取值样例

      驱动

      默认为“hbase-connector”

      hbase-connector

      ZooKeeper Quorum地址

      该数据源ZooKeeper服务所有quorumpeer实例业务IP。当该数据源ZooKeeper服务使用IPv6时,则需额外在ZooKeeper Quorum地址中指定客户端端口号。

      登录FusionInsight Manager,选择“集群 > 服务 > ZooKeeper > 实例”,可查看所有quorumpeer实例所在主机业务IP地址。

      • IPv4:10.0.136.132,10.0.136.133,10.0.136.134
      • IPv6:[0.0.0.0.0.0.0.0]:24002

      ZooKeeper客户端端口号

      ZooKeeper客户端端口号。

      登录FusionInsight Manager,选择“集群 > 服务 > ZooKeeper”,在“配置”页签查看“clientPort”的值。

      2181

      HBase RPC通信保护

      根据1获取的“hbase-site.xml”里配置项“hbase.rpc.protection”的值进行选择:

      • “authentication”时选择“否”
      • “privacy”时选择“是”

      安全认证机制

      打开安全模式后自动默认为KERBEROS。

      KERBEROS

      Principal

      开启安全认证机制时填写此参数。就是2中获取的“user.keytab”文件所属的用户。

      user_hbase@HADOOP2.COM

      keytab文件

      开启安全模式时填写此参数。安全认证的密钥,在本地选择2获取的“user.keytab”文件。

      user.keytab

      krb5文件

      开启安全模式时填写此参数。Kerberos认证用到的配置文件,在本地选择2获取的“krb5.conf”文件。

      krb5.conf

      hbase-site文件

      开启安全模式时填写此参数。连接hdfs时,需要的配置文件。在本地选择1获取的“hbase-site.xml”文件。

      hbase-site.xml

      core-site文件

      开启安全模式时填写此参数。连接hdfs时需要用到的配置。在本地选择1获取的“core-site.xml”文件。

      core-site.xml

      hdfs-site文件

      开启安全模式时填写此参数。连接hdfs时需要用到的配置。在本地选择1获取的“hdfs-site.xml”文件。

      hdfs-site.xml

    3. 自定义配置。
      • 单击“增加”可以增加自定义配置参数。
      • 单击“删除”可以删除已增加的自定义配置参数。
    4. 单击“确定”。

  2. 登录集群客户端所在节点,执行以下命令,切换到客户端安装目录并认证用户。

    cd /opt/client

    source bigdata_env

    kinit HetuEngine组件操作用户 (普通模式集群跳过)

  3. 执行以下命令,登录数据源的catalog。

    hetu-cli --catalog 数据源名称 --schema default

    例如执行以下命令:

    hetu-cli --catalog hbase_1 --schema default