资源管理用户手册
目前用户的jar包、python等资源文件使用HttpFs来进行管理。目前可以使用命令行或者Restful API来管理这些资源。
HttpFs服务端口的获取
从分析集群的“集群详情”页面获取HttpFs的连接串:
为了使用合理,建议HttpFS的用户名为:resource;resource上传的根目录为/resourcesdir/,该目录后面可以创建子目录- 注意:rename和append暂时不支持
命令行的方式
使用HdfsCLI连接HttpFs服务通过命令行方式管理资源,具体操作如下:
- 安装command
pip install hdfs
- 配置客户端:配置~/.hdfscli.cfg文件如下内容,其中spark是一个别名,可按照实际情况配置
[global]
default.alias = dev
[dev.alias]
url = http://ap-xxx-master2-001.spark.9b78df04-b.rds.aliyuncs.com:14000
user = resource
后续进入hdfscli的command line进行相关的操作
- 创建目录
[root@xxx ~]# hdfscli
>>> CLIENT.makedirs('/resourcesdir/')
- 上传文件或者目录
进入hdfscli的交互式命令行,使用CLIENT.upload()上传本地文件或者目录到HTTPFs的目录
下面分别上传本地的文件'./spark-examples-0.0.1-SNAPSHOT.jar'、目录'./files'到HTTPFs的目录/resourcesdir/
[root@xxx jars]# hdfscli
>>> CLIENT.upload('/resourcesdir/','./spark-examples-0.0.1-SNAPSHOT.jar')
'/resourcesdir/spark-examples-0.0.1-SNAPSHOT.jar'
>>> CLIENT.upload('/resourcesdir/','./files')
'/resourcesdir/files'
>>> CLIENT.list('/resourcesdir/')
[u'files', u'spark-examples-0.0.1-SNAPSHOT.jar']
- 下载文件或者目录:
进入hdfscli的交互式命令行,使用CLIENT.download()下载HTTPFs的文件到本地
下面分别下载文件'/resourcesdir/spark-examples-0.0.1-SNAPSHOT.jar'、目录'/resourcesdir/files'到本地的./download/目录
[root@xxx jars]# hdfscli
>>> CLIENT.download('/resourcesdir/spark-examples-0.0.1-SNAPSHOT.jar','./download/')
'/root/jars/download/spark-examples-0.0.1-SNAPSHOT.jar'
>>> CLIENT.download('/resourcesdir/files','./download/')
'/root/jars/download/files'
- 查看文件:
进入hdfscli的交互式命令行,使用CLIENT.list()查看对应目录下文件
[root@xxx ~]# hdfscli
>>> CLIENT.list('/resourcesdir/')
[u'pppp', u'qqq']
- 删除文件:
进入hdfscli的交互式命令行,使用CLIENT.list()查看对应目录下文件
[root@xxx ~]# hdfscli
>>> CLIENT.list('/resourcesdir/')
[u'pppp', u'qqq']
>>> CLIENT.delete('/resourcesdir/qqq')
True
>>> CLIENT.list('/resourcesdir/')
[u'pppp']
- 注意:可以通过hdfscli —help查看其它高级参数。同时进入hdfscli后可以通过help(CLIENT) 查看交互式的命令帮助
Restful API的方式
也就是WebHDFS的接口,常用的操作包括如下:
- 上传文件
curl -i -X PUT -T ./examples/jars/spark-examples_2.11-2.3.2.jar "http://ap-xxx-.9b78df04-b.rds.aliyuncs.com:14000/webhdfs/v1/resourcesdir/spark-examples_2.11-2.3.2.jar?op=CREATE&data=true&user.name=resource" -H "Content-Type:application/octet-stream"
- 查看文件
curl -i "http://ap-xxx-master2-001.spark.9b78df04-b.rds.aliyuncs.com:14000/webhdfs/v1/resourcesdir/?op=LISTSTATUS&user.name=resource"
- 删除文件
curl -i -X DELETE "http://ap-xxx-master2-001.spark.9b78df04-b.rds.aliyuncs.com:14000/webhdfs/v1/resourcesdir/spark-examples_2.11-2.3.2.jar?op=DELETE&user.name=resource"
- 创建目录
curl -i -X PUT "http://ap-xxx-master2-001.spark.9b78df04-b.rds.aliyuncs.com:14000/webhdfs/v1/resourcesdir/test?op=MKDIRS&user.name=resource"
- 下载文件
wget "http://ap-wz93xg6zn7q1jzoae-master2-001.spark.9b78df04-b.rds.aliyuncs.com:14000/webhdfs/v1/resourcesdir/ossutil64?op=OPEN&user.name=resource"
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
评论