目前 E-MapReduce 中支持了
Hue,选择支持 Hue 的镜像创建集群并且开启公网 IP 即可以在 E-MapReduce 访问和使用 Hue。
准备工作
在 E-MapReduce 上 Hue 的服务端口是 8888 ,由于Hue本身做了安全校验和用户管理,可以有两种方式来访问 E-MapReduce 的 Hue 服务。
打ssh安全隧道
在集群建立出来之后,需要打通 ssh 隧道来访问Hue的服务端口 8888 ,详细步骤请参考:
https://help.aliyun.com/document_detail/28187.html
这里以 Mac 环境为例,使用 Chrome 浏览器实现端口转发(假设集群 master 节点公网 IP 为xx.xx.xx.xx):
登录到 master 节点。[backcolor=transparent]ssh root@xx[backcolor=transparent].[backcolor=transparent]xx[backcolor=transparent].[backcolor=transparent]xx[backcolor=transparent].[backcolor=transparent]xx
输入密码。
查看本机的 id_rsa.pub 内容(注意在本机执行,不要在远程的 master 节点上执行)。
- [backcolor=transparent]cat [backcolor=transparent]~[backcolor=transparent]/.ssh/[backcolor=transparent]id_rsa[backcolor=transparent].[backcolor=transparent]pub
将本机的 id_rsa.pub 内容写入到远程 master 节点的 ~/.ssh/authorized_keys 中(在远端 master 节点上执行)。
- [backcolor=transparent]mkdir [backcolor=transparent]~[backcolor=transparent]/.ssh/
- [backcolor=transparent]vim [backcolor=transparent]~[backcolor=transparent]/.ssh/[backcolor=transparent]authorized_keys
将步骤 2 中看到的内容粘贴进来并保存。现在就可以直接使用 ssh
root@xx.xx.xx.xx 免密登录 master 节点了。
在本机执行以下命令进行端口转发。
- [backcolor=transparent]ssh [backcolor=transparent]-[backcolor=transparent]i [backcolor=transparent]~[backcolor=transparent]/.ssh/[backcolor=transparent]id_rsa [backcolor=transparent]-[backcolor=transparent]ND [backcolor=transparent]8157[backcolor=transparent] root@xx[backcolor=transparent].[backcolor=transparent]xx[backcolor=transparent].[backcolor=transparent]xx[backcolor=transparent].[backcolor=transparent]xx
启动 Chrome(在本机新开 terminal 执行)。
- [backcolor=transparent]/Applications/[backcolor=transparent]Google[backcolor=transparent]\ [backcolor=transparent]Chrome[backcolor=transparent].[backcolor=transparent]app[backcolor=transparent]/[backcolor=transparent]Contents[backcolor=transparent]/[backcolor=transparent]MacOS[backcolor=transparent]/[backcolor=transparent]Google[backcolor=transparent]\ [backcolor=transparent]Chrome[backcolor=transparent] [backcolor=transparent]--[backcolor=transparent]proxy[backcolor=transparent]-[backcolor=transparent]server[backcolor=transparent]=[backcolor=transparent]"socks5://localhost:8157"[backcolor=transparent] [backcolor=transparent]--[backcolor=transparent]host[backcolor=transparent]-[backcolor=transparent]resolver[backcolor=transparent]-[backcolor=transparent]rules[backcolor=transparent]=[backcolor=transparent]"MAP * 0.0.0.0 , EXCLUDE localhost"[backcolor=transparent] [backcolor=transparent]--[backcolor=transparent]user[backcolor=transparent]-[backcolor=transparent]data[backcolor=transparent]-[backcolor=transparent]dir[backcolor=transparent]=/[backcolor=transparent]tmp
开发集群所在安全组的 8888 端口
- 在集群详情中找到集群所在的 ecs 安全组;
- 在ecs控制台修改对应的安全组,在“公网入方向”添加一条规则,打开8888端口:[backcolor=transparent]注意,为了安全原因,这里而设置的授权对象必须是您的一个有限的ip段范围,禁止使用0.0.0.0/0
[backcolor=transparent]注意:打开安全组的8888端口之后,该安全组内的所有机器均会打开公网入方向的 8888 端口,包括非E-MapReduce的ecs机器。
访问 Hue
如果是使用打 ssh 安全隧道的方式,则在进行端口转发的 Chrome 浏览器中访问:xx.xx.xx.xx:8888;如果是开发集群安全组8888端口的方式,直接访问公网 IP:8888