更新时间:2023-08-03 GMT+08:00

准备连接集群配置文件

如果需要使用访问多组件样例程序,请确保集群已安装Hive、HBase服务。

准备集群认证用户信息

对于开启Kerberos认证的MRS集群,需提前准备具有相关组件操作权限的用户,并下载认证凭据文件用于程序认证。

以下MapReduce权限配置示例供参考,在实际业务场景中可根据业务需求灵活调整。

  1. 登录FusionInsight Manager。
  2. 选择系统 > 权限 > 角色 > 添加角色
  3. 填写角色的名称,例如developrole
  4. 在“配置资源权限”的表格中配置以下参数后,单击“确定”保存。

    选择“待操作集群的名称 > HDFS > 文件系统 > hdfs://hacluster/”,勾选“user”的“读”、“写”、“执行”和“递归”。

    如果要执行多组件用例,还需:

    • 选择“待操作集群的名称 > HDFS > 文件系统 > hdfs://hacluster/ > tmp”,勾选“hive-scratch”的“读”、“写”、“执行”,若存在“examples” ,勾选“examples”的“读”、“写”、“执行”和“递归”。
    • 选择“待操作集群的名称 > HBase > HBase Scope > global”勾选“default”的“创建”。
    • 选择“待操作集群的名称 > HBase > HBase Scope > global > hbase”,勾选“hbase:meta”的“执行”。
    • 选择“待操作集群的名称 > Hive > Hive读写权限”,勾选“default”的 “查询”、“插入”、“建表”、“递归”。

  5. 编辑角色,在“配置资源权限”的表格中选择“待操作集群的名称 > Yarn > 调度队列 > root”,勾选“default”的“提交”,单击“确定”保存。
  6. 选择“用户 > 添加用户”,在新增用户界面,创建一个机机用户,例如developuser。

    • “用户组”需加入“hadoop”用户组。
    • “角色”加入新增的角色,例如developrole

  7. 使用admin用户登录FusionInsight Manager,选择系统 > 权限 > 用户,在用户名为developuser的操作列选择“更多 > 下载认证凭据”下载认证凭据文件,保存后解压得到该用户的“user.keytab”文件与“krb5.conf”文件。

准备运行环境配置文件

应用程序开发或运行过程中,需通过集群相关配置文件信息连接MRS集群,配置文件通常包括集群组件信息文件以及用于安全认证的用户文件,可从已创建好的MRS集群中获取相关内容。

用于程序调测或运行的节点,需要与MRS集群内节点网络互通,同时配置hosts域名信息。

  • 场景一:准备本地Windows开发环境调测程序所需配置文件。
    1. 登录FusionInsight Manager页面,选择“集群 > 概览 > 更多 > 下载客户端”,“选择客户端类型”设置为“完整客户端”,根据待安装客户端节点的节点类型选择正确的平台类型后单击“确定”,等待客户端文件包生成后根据浏览器提示下载客户端到本地并解压。

      例如,客户端文件压缩包为“FusionInsight_Cluster_1_Services_Client.tar”,解压后得到“FusionInsight_Cluster_1_Services_ClientConfig.tar”,继续解压该文件。

    2. 进入解压后的“FusionInsight_Cluster_1_Services_ClientConfig”文件夹,获取表1中配置文件。
      表1 配置文件

      获取路径

      配置文件

      作用

      Yarn\config

      core-site.xml

      配置Hadoop Core详细参数。

      hbase-site.xml

      配置HBase详细参数。

      hdfs-site.xml

      配置HDFS详细参数。

      mapred-site.xml

      Hadoop MapReduce配置文件。

      yarn-site.xml

      配置Yarn详细参数。

      HBase\config

      hbase-site.xml

      配置HBase详细参数。

      Hive\config

      hive-site.xml

      配置Hive详细参数。

      hiveclient.properties

      配置Hive详细参数。

      如果不运行MapReduce访问多组件样例程序,则不需要获取HBase和Hive的hbase-site.xml、hive-site.xml、hiveclient.properties配置文件。

    3. 拷贝解压目录下的“hosts”文件中的内容到客户端所在节点的hosts文件中,确保本地机器能与解压目录下“hosts”文件中所列出的各主机在网络上互通。
      • 当客户端所在主机不是集群中的节点时,配置客户端网络连接,可避免执行客户端命令时出现错误。
      • Windows本地hosts文件存放路径举例:“C:\WINDOWS\system32\drivers\etc\hosts”。
  • 场景二:准备Linux环境运行程序所需配置文件。
    1. 在节点中安装客户端。

      如果需要使用MapReduce访问多组件样例程序,请确保集群已安装Hive、HBase服务。

      例如客户端安装目录为“/opt/client”。

    2. 登录FusionInsight Manager页面,选择“集群 > 概览 > 更多 > 下载客户端”,“选择客户端类型”设置为“仅配置文件”,勾选“仅保存到如下路径”,单击“确定”,下载客户端配置文件至集群主OMS点。
    3. root用户登录主OMS节点,进入客户端配置文件所在路径(默认为“/tmp/FusionInsight-Client/”)解压软件包。

      例如客户端软件包为“FusionInsight_Cluster_1_Services_Client.tar”,下载路径为主管理节点的“/tmp/FusionInsight-Client”,则执行以下命令进行解压:

      cd /tmp/FusionInsight-Client

      tar -xvf FusionInsight_Cluster_1_Services_Client.tar

      tar -xvf FusionInsight_Cluster_1_Services_ClientConfig_ConfigFiles.tar

      cd /tmp/FusionInsight-Client/FusionInsight_Cluster_1_Services_ClientConfig_ConfigFiles

    4. 参考表1将相关配置文件上传到“conf”目录下(后续编译出的jar包也需要放置在此目录),用于后续调测。例如“/opt/hadoopclient/conf”,该目录需要提前在客户端节点上创建。

      例如,上传Yarn客户端的“core-site.xml”文件则执行以下命令:

      scp Yarn/config/core-site.xml root@客户端节点IP地址:/opt/hadoopclient/conf

      参考以上命令依次上传表1中的所有配置文件。

    5. 检查客户端节点网络连接。

      在安装客户端过程中,系统会自动配置客户端节点“hosts”文件,建议检查“/etc/hosts”文件内是否包含集群内节点的主机名信息,如未包含,需要手动拷贝解压目录下的“hosts”文件中的内容到客户端所在节点的hosts文件中,确保本地机器能与集群各主机在网络上互通。