配置Hue访问Presto服务

本文为您介绍如何通过配置Hue访问Presto服务。

前提条件

  • 已创建集群,并选择了Presto服务。

  • 已打开8888端口。

    重要

    设置安全组规则时要针对有限的IP范围。禁止在配置的时候对0.0.0.0/0开放规则。

操作流程

EMR各版本默认支持Hue访问E-MapReduce(EMR)集群的Presto服务的情况,以及配置Hue访问Presto服务的操作流程如下。

版本

支持情况

操作流程

EMR-3.33.0以前版本或EMR-4.6.0以前版本

默认不支持

  1. 下载Presto的JDBC驱动

  2. 加载Presto的JDBC驱动

  3. 通过Hue访问EMR集群的Presto服务

EMR-3.33.0(包含)版本到EMR-3.38版本,EMR-4.6.0(包含)版本到EMR-5.5.0版本

默认支持

无需任何配置,直接通过Hue访问EMR集群的Presto服务

EMR-3.38及后续版本或EMR-5.5.0及后续版本

默认不支持

  1. 加载Presto的JDBC驱动

  2. 通过Hue访问EMR集群的Presto服务

下载Presto的JDBC驱动

  1. 使用SSH方式登录到集群,详细信息请参见登录集群

  2. 创建presto-jdbc的目录。

    mkdir -p /opt/apps/presto-jdbc/
  3. 下载相应版本的JDBC JAR包,并上传至/opt/apps/presto-jdbc/目录。

    1. 下载presto-jdbc

      例如,本文示例创建的是EMR-3.32.0版本的集群,因为Presto版本是338,所以您可以下载338版本的JDBC JAR包。Presto_version

      下载下图中的JAR包。JDBC-JAR

    2. 上传JAR包至/opt/apps/presto-jdbc/目录。

  4. 执行以下命令,修改文件权限。

    chmod 644 /opt/apps/presto-jdbc/*
  5. 执行以下命令,编辑文件hue.sh

    vim /etc/profile.d/hue.sh
  6. 添加以下内容至文件hue.sh最后一行。

    export CLASSPATH=/opt/apps/presto-jdbc/*:$CLASSPATH

    如下图所示:Edit file

加载Presto的JDBC驱动

  1. 进入Hue配置页面。

    1. 登录阿里云E-MapReduce控制台

    2. 在顶部菜单栏处,根据实际情况选择地域和资源组

    3. 单击上方的集群管理页签。

    4. 集群管理页面,单击相应集群所在行的详情

    5. 在左侧导航栏,选择集群服务 > Hue

    6. 在Hue服务页面,单击配置页签。

    7. 服务配置区域,单击hue

  2. 添加Hue自定义配置。

    1. 单击右上角的自定义配置

    2. 新增配置项对话框中,添加配置信息。

      • EMR-3.33.0以前版本或EMR-4.6.0以前版本

        参数

        描述

        notebook.interpreters.presto.name

        固定值为Presto

        notebook.interpreters.presto.interface

        固定值为jdbc

        notebook.interpreters.presto.options

        固定值为{"url": "jdbc:presto://emr-header-1:9090/hive/default", "driver": "com.facebook.presto.jdbc.PrestoDriver", "user": "hadoop", "password": ""}

      • EMR-3.38及后续版本或EMR-5.5.0及后续版本

        参数

        描述

        notebook.interpreters.presto.options

        固定值为{"url": "jdbc:trino://emr-header-1:9090/hive/default", "driver": "io.trino.jdbc.TrinoDriver", "user": "hadoop", "password": ""}

    3. 配置信息添加完成后,单击确定

  3. 保存配置。

    1. 单击右上角的保存

    2. 确认修改对话框,填写执行原因,并开启自动更新配置

    3. 单击确定

  4. 部署配置。

    1. 单击上方的部署客户端配置

    2. 执行集群操作对话框,选择执行范围和失败处理策略,填写执行原因。

    3. 单击确定

    4. 确认对话框,单击确定

      1. 执行集群操作对话框中,输入执行原因,单击确定
      2. 确认对话框,单击确定
      3. 单击右上角查看操作历史查看任务进度,等待任务完成。
  5. 重启Hue。

    1. 在Hue集群服务页面,选择操作 > 重启Hue

    2. 执行集群操作对话框,选择执行范围和失败处理策略,填写执行原因。

    3. 单击确定

    4. 确认对话框,单击确定

      1. 执行集群操作对话框中,输入执行原因,单击确定
      2. 确认对话框,单击确定
      3. 单击右上角查看操作历史查看任务进度,等待任务完成。

通过Hue访问EMR集群的Presto服务

  1. 在左侧导航栏,单击访问链接与端口

  2. 单击Hue所在行的链接。

    Hue_port

    使用默认管理员admin登录,初始密码在Hue配置页面获取admin_pwd参数的值,详细信息请参见查看初始密码

  3. 在Hue页面已显示Presto。

    表示您可以通过Hue访问EMR集群的Presto服务。

  4. 可选:测试连通性。

    在Presto SQL中输入以下命令,查询集群上Schema的列表。

    show schemas

    当正确返回信息时,表示连通性正常。