HDFS要求

从HDFS读取的集群模式管道需要Hadoop(CDH)或Hortonworks Data Platform(HDP)的Cloudera分发。有关受支持的CDH或HDP版本的列表,请参见“可用的阶段库”。

完成以下步骤以配置集群模式管道以从HDFS读取数据:

  1. 验证HDFS和YARN的安装。
  2. 在YARN网关节点上安装Data Collector
  3. 授予用户环境变量中定义的用户对/user/$SDC_USER的写许可权 。
    用户环境变量定义用于将Data Collector作为服务运行的系统用户。定义用户环境变量的文件取决于您的操作系统。有关更多信息,请参见服务启动的用户和组。
    例如,假设用户环境变量定义为sdc,并且集群不使用Kerberos。然后,您可以使用以下命令创建目录并配置必要的写权限:

    $sudo -u hdfs hadoop fs -mkdir /user/sdc
    $sudo -u hdfs hadoop fs -chown sdc /user/sdc
  4. 要使Data Collector能够提交YARN作业,请执行以下任务之一:
    • 在YARN上,将min.user.id设置为等于或小于与Data Collector用户ID(通常称为“sdc”)关联的用户ID的值。
    • 在YARN上,将Data Collector用户名(通常为“sdc”)添加到allowed.system.users属性中。
    • 创建管道之后,请在Hadoop FS源中指定Hadoop FS用户。

      对于Hadoop FS用户属性,输入ID高于min.user.id属性的用户,或输入allow.system.users属性中列出的用户名的用户。

  5. 在YARN上,确认Hadoop日志记录级别设置为INFO或更低的严重性。
    YARN默认将Hadoop日志记录级别设置为INFO。要更改日志记录级别:

    • 编辑log4j.properties文件。
      默认情况下,该文件位于以下目录中:

      /etc/hadoop/conf
    • log4j.rootLogger属性设置为INFO或更低的严重性,例如DEBUG或TRACE。
  6. 如果将YARN配置为使用Kerberos身份验证,则将Data Collector配置为使用Kerberos身份验证。
    在为Data Collector配置Kerberos身份验证时,将使Data Collector能够使用Kerberos并定义主体和密钥表。

    要点:对于集群管道,在配置Data Collector时输入keytab的绝对路径。独立管道不需要绝对路径。
    启用后,Data Collector将自动使用Kerberos主体和密钥表连接到使用Kerberos的任何YARN集群。有关为Data Collector启用Kerberos身份验证的详细信息,请参阅Kerberos身份验证。
  7. 在管道属性中的“General选项卡上,将“Execution Mode属性设置 为“Cluster Batch
  8. 在“Cluster选项卡上,配置以下属性:
    集群属性 描述
    Worker Java Options 管道的其他Java属性。用空格分隔属性。

    默认情况下设置以下属性。

    • XX:+UseConcMarkSweepGC和XX:+UseParNewGC设置为并发标记扫描(CMS)垃圾收集器。
    • Dlog4j.debug启用log4j的调试日志记录。

    不建议更改默认属性。

    您可以添加任何有效的Java属性。

    Launcher Env Configuration

    集群启动器的其他配置属性。使用简单或批量编辑模式,单击添加图标并定义属性名称和值。

    Worker Memory (MB) 分配给集群中每个Data Collector Worker的最大内存量。

    默认值为1024 MB。

  9. 在管道中,将Hadoop FS源用于集群模式。
    在源端的“General选项卡上,为集群模式选择适当的CDH或HDP阶段库。
  10. 如果将YARN配置为使用Kerberos身份验证,请在源端中启用Hadoop FS选项卡上的Kerberos身份验证属性 。