1. ambari中knox代理配置
Knox->Configs->Advanced topology
2. 代理yarn UI界面
代理前用户需访问http://xx.xx.103.56:8088/cluster进入ResourceManager界面
在knox中配置代理:
<service>
<role>YARNUI</role>
<url>http://xx.xx.103.56:8088</url> //注:xx.xx是为了隐藏我的IP地址,大家配置的时候需写完整的IP或者主机名
</service>
在ambari中重启knox服务
访问https://knoxip:8443/gateway/default/yarn 输入用户名密码即可跳到yarn UI界面,输入用户名密码
3. 代理HDFSUI界面
代理前用户需访问http://xx.xx.103.54:50070进入HDFS界面
在knox中配置代理:
<service>
<role>HDFSUI</role>
<url>http://xx.xx.103.54:50070</url> //注:xx.xx是为了隐藏我的IP地址,大家配置的时候需写完整的IP或者主机名
</service>
在ambari中重启knox服务
访问https://knoxip:8443/gateway/default/hdfs 输入用户名密码即可跳到hdfs UI界面,输入用户名密码(已经输入过用户名密码后再次访问不再需要输入)
4. 代理SPARKHISTORYUI界面
代理前用户需访问http://xx.xx.103.54:18080进入SPARKHISTORY界面
在knox中配置代理:
<service>
<role>SPARKHISTORYUI</role>
<url>http://xx.xx.103.54:18080/master-status</url> //注:xx.xx是为了隐藏我的IP地址,大家配置的时候需写完整的IP或者主机名
</service>
在ambari中重启knox服务
访问https://knoxip:8443/gateway/default/sparkhistory 输入用户名密码即可跳到sparkhistroy UI界面,输入用户名密码(已经输入过用户名密码后再次访问不再需要输入)
5. 代理HBASEUI界面
代理前用户需访问http://xx.xx.103.54:16010进入HBASEUI界面
在knox中配置代理:
<service>
<role>HBASEUI</role>
<url>http://xx.xx.103.54:16010</url> //注:xx.xx是为了隐藏我的IP地址,大家配置的时候需写完整的IP或者主机名
</service>
在ambari中重启knox服务
访问https://knoxip:8443/gateway/default/hbase/webui 输入用户名密码即可跳到HBASE UI界面,输入用户名密码(已经输入过用户名密码后再次访问不再需要输入)
6. 通过Knox对hdfs文件系统进行操作
在knox中配置代理:
<service>
<role>WEBHDFS</role>
<url>http://xx.xx.103.50070/webhdfs</url> //注:xx.xx是为了隐藏我的IP地址,大家配置的时候需写完整的IP或者主机名
</service>
在ambari中重启knox服务
6.1 获取hdfs的根目录列表(等同于在服务器执行hdfs dfs ls /)
curl -i -k -u admin:admin-password -X GET 'https://node54:8443/gateway/default/webhdfs/v1/?op=LISTSTATUS'
6.2 上传文件到hdfs
curl -i -k -u admin:admin-password -X PUT 'https://node54:8443/gateway/default/webhdfs/v1/tmp/knox-test.log?op=CREATE'
执行后会返回的信息中的Location有一个链接
用上图红框中的链接上传数据
curl -i -k -u admin:admin-password -X PUT 'https://node54:8443/gateway/default/webhdfs/data/v1/webhdfs/v1/tmp/knox-test.log?_=AAAACAAAABAAAACQe_NvcTGs64l7_flvm_ZYP0RUusMAuOzoMLQtBismBz0zHy8AMV8XjMQtPEybx2G6eNitaSzbJYIAoJHr1EKpNbsRErq3t17WNxlEgzegzW9WsUH4Q3skRVfb8-w1Pa82LgEOc_LZugEo_X9INK-tpv1G289ww1pl9tqkBTZqGgFY_VcyA3yXR5k8VU0aMvFaDdRVZ0E4tcM4Yy48NI3H0WFW-DzQE70E' -T 'test.log'
执行完成后会将test.log文件上传到hdfs文件系统的/tmp下,并将文件命名为knox-test.log
6.3 读取hdfs文件系统的文件内容
curl -i -k -u admin:admin-password -X GET 'https://node54:8443/gateway/default/webhdfs/v1/tmp/knox-test.log?op=OPEN'
执行后会返回的信息中的Location有一个链接
用上图红框中的链接读取数据
curl -i -k -u admin:admin-password -X GET 'https://node54:8443/gateway/default/webhdfs/data/v1/webhdfs/v1/tmp/knox-test.log?_=AAAACAAAABAAAABwe_NvcTGs64l7_flvm_ZYP0RUusMAuOzoMLQtBismBz0zHy8AMV8XjMQtPEybx2G6eNitaSzbJYJ095F1WxTU7XLP82cbpd3BmempTdezXX9EMFNrBieytW5JZezvb0654T6DUhC4IJLK_KTg9EONKSjQhtxHsBMyFi0KsmmKNgOBMGZ60ewYzg'