本文介绍如何在E-MapReduce上配置及访问Hue,通过使用Hue可以在浏览器端与Hadoop集群进行交互来分析处理数据。

前提条件

  • 已设置安全组访问,详情请参见安全组
    注意 设置安全组规则时要针对有限的IP范围。禁止在配置的时候对0.0.0.0/0开放规则。
  • 已打开8888端口,详情请参见访问链接与端口

查看初始密码

Hue服务默认在第一次运行时,如果未设置管理员则将第一个登录用户设置为管理员。因此出于安全考虑,E-MapReduce将默认为Hue服务创建一个名为admin的管理员账号,并为其设置一个随机的初始密码。您可以通过以下方式查看该管理员账号的初始密码:

  1. 已通过主账号登录阿里云E-MapReduce控制台
  2. 在顶部菜单栏处,根据实际情况选择地域(Region)和资源组
  3. 单击上方的集群管理页签。
  4. 集群管理页面,单击相应集群所在行的详情
  5. 单击左侧导航栏中的集群服务,在集群服务列表中,选择Hue
  6. 单击配置页签,找到admin_pwd参数,该参数对应的值就是随机密码。
    注意 admin_pwd仅为admin账号的初始密码,在E-MapReduce控制台上更改该密码不会同步到Hue中。如果需要更改admin账号在Hue中的登录密码,您可以使用该初始密码登录Hue,然后在Hue的用户管理模块中进行修改,或者重置账号密码

访问Hue

  1. 已通过主账号登录阿里云E-MapReduce控制台
  2. 在顶部菜单栏处,根据实际情况选择地域(Region)和资源组
  3. 单击上方的集群管理页签。
  4. 集群管理页面,单击相应集群所在行的详情
  5. 在页面左侧导航栏中,单击访问链接与端口
  6. 单击Hue服务所在行的链接。
  7. 输入Hue账号和对应的密码。

创建用户账号

  1. 已通过主账号登录阿里云E-MapReduce控制台
  2. 在顶部菜单栏处,根据实际情况选择地域(Region)和资源组
  3. 单击上方的集群管理页签。
  4. 集群管理页面,单击相应集群所在行的详情
  5. 主实例组区域获取Master节点的公网IP。
  6. 登录Master节点,具体步骤请参见使用SSH连接主节点
  7. 执行以下命令,创建新账号。
    /opt/apps/hue/build/env/bin/hue createsuperuser
  8. 输入新用户名、电子邮件,然后输入密码,再次输入密码后,按Enter键。
    如果提示Superuser created successfully,则说明新账号创建成功,稍后用新账号登录Hue即可。

重置账号密码

  1. 使用SSH方式登录到集群主节点,详情请参见使用SSH连接主节点
  2. 执行以下命令,查看Hue的路径。
    ps aux | grep hue
    例如回显信息如下。 check hue file
    说明 本示例中获取到Hue的路径为/opt/apps/hue/build/env/bin/hue
  3. 执行以下命令,重置用户密码。
    from django.contrib.auth.models import User
    user = User.objects.get(username='your username')  //输入待重置密码的用户名。
    user.set_password('your new password') //输入新密码。
    user.save()
    说明 您可以按下键盘的ctrl+D组合键退出Shell。
    示例如下:change password

添加配置

  1. 已通过主账号登录阿里云E-MapReduce控制台
  2. 在顶部菜单栏处,根据实际情况选择地域(Region)和资源组
  3. 单击上方的集群管理页签。
  4. 集群管理页面,单击相应集群所在行的详情
  5. 在页面左侧导航栏中,单击集群服务 > Hue
  6. 单击配置页签。
  7. 服务配置区域,单击hue
  8. 单击右上角的自定义配置,添加配置的Key和Value值,
    $section_path.$real_key
    参数信息如下:
    • $real_key即为需要添加的实际的Key,例如hive_server_host
    • $section_path可以通过hue.ini文件查看。
      例如:通过hue.ini文件可以看出hive_server_host属于[beeswax]这个section下,则$section_pathbeeswax
      说明 综上可见,添加的Key为beeswax.hive_server_host。如果需要修改hue.ini文件中的多级section([desktop] -> [[ldap]] -> [[[ldap_servers]]] -> [[[[users]]]] ->user_name_attr)下的值,则需要配置key为desktop.ldap.ldap_servers.users.user_name_attr

调整YARN队列

HUE进行SQL交互查询时,需要向YARN申请资源进行计算,如果需要对计算资源进行管理和隔离,则需要配置HiveSQL和SparkSQL的对应队列。

  1. 已通过主账号登录阿里云E-MapReduce控制台
  2. 在顶部菜单栏处,根据实际情况选择地域(Region)和资源组
  3. 单击上方的集群管理页签。
  4. 集群管理页面,单击相应集群所在行的详情
  5. 修改或添加自定义配置。
    • HiveSQL需要根据不同引擎设置HiveServer2。
      注意 本文的QUEUENAME为需要配置的队列名称。
      1. 单击左侧导航栏的集群服务 > Hive
      2. 单击配置页签。
      3. 单击服务配置区域的hiveserver2-site页签。
      4. 单击右上角的自定义配置添加相应如下配置:
        引擎 配置项 说明
        Hive on MR mapreduce.job.queuename QUEUENAME
        Hive on Tez tez.queue.name
        Hive on Spark spark.yarn.queue
        说明 若需修改配置,可直接在服务配置页面修改配置项的值。
    • SparkSQL使用SparkThriftServer,在Spark组件上修改spark-thriftServer配置或添加自定义配置:
      1. 单击左侧导航栏的集群服务 > Spark
      2. 单击配置页签。
      3. 单击服务配置区域的spark-thriftServer页签。
      4. 单击右上角的自定义配置,添加spark.yarn.queue为QUEUENAME。
  6. 重启Hue所在集群的HiveServer2和Spark的ThriftServer。
    1. 集群管理页面,单击集群服务 > Hive
    2. 组件列表区域,单击HiveServer2所在行的重启
      输入相关信息,单击确定
    3. 集群管理页面,单击集群服务 > Spark
    4. 组件列表区域,单击ThriftServer所在行的重启
      输入相关信息,单击确定