Shell类型节点支持使用OSS命令行工具OSSUtils。本文将详细介绍如何在Shell和EMR Shell节点中使用OSSUtils命令行工具。
前提条件
EMR Shell节点使用前提条件,详情请参见EMR Shell节点使用前提条件。
通用Shell节点使用前提条件,详情请参见通用Shell节点使用前提条件。
使用限制
EMR Shell节点使用限制,详情请参见EMR Shell节点使用限制。
说明目前,EMR Shell节点的Serverless资源组中的EMR Shell镜像尚未支持OSSUtils命令行工具。若您有相关需求,可考虑使用Shell节点或通过自定义镜像进行安装。如需通过自定义镜像进行安装,详情请参见镜像管理。
通用Shell节点使用限制,详情请参见通用Shell节点使用限制。
通过Shell类型节点使用OSSUtils命令行工具列举账号下的Bucket
在DataWorks平台上,无论是EMR Shell节点还是通用Shell节点,都支持使用OSSUtils命令行工具进行操作,且访问方式相同。以下将以通用Shell节点为例,介绍两种方法来使用OSSUtils命令行工具列举账号下的Bucket。您也可以参考OSSUtils的常用命令,以满足您的具体业务需求。详情请参见相关文档OSSUtils常见命令。
命令行选项方式
新建通用Shell节点。
进入数据开发页面。
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的 ,在下拉框中选择对应工作空间后单击进入数据开发。
新建通用Shell节点。
在数据开发页面右键单击目标业务流程,选择新建节点,在通用目录下选择Shell节点进行创建。
编辑节点内容。
/home/admin/usertools/tools/ossutil64 -e <OSSEndPoint> -i <AccessKeyID> -k <AccessKeySecret> ls -s if [[ $? == 0 ]];then echo "access oss success" else echo "failed" exit 1 fi echo "finished"
说明您需将代码中的
OSSEndPoint
、AccessKeyID
、AccessKeySecret
信息替换成实际值。参数详情请参见配置OSSUtils。结果验证。
点击,选择Serverless资源组,执行通用Shell节点任务。结果如下:
命令配置文件方式
配置并上传OssUtils配置文件至OSS。
准备配置文件。
在本地创建
myconfig.txt
文件,文件内容示例如下:[Credentials] language = CH endpoint = https://oss-cn-hangzhou.aliyuncs.com accessKeyID = <AccessKeyID> accessKeySecret = <AccessKeySecret>
说明您需将代码中的
https://oss-cn-hangzhou.aliyuncs.com
、AccessKeyID
、AccessKeySecret
信息替换成实际值。参数详情请参见配置OSSUtils。上传配置文件。
将
myconfig.txt
文件上传到OSS。详情请参见简单上传。查看下载链接。
单击上传到OSS的文档对应的操作项的详情,关闭使用HTTPS后单击复制文件URL。
下载Config文件至Serverless资源组。
在DataWorks的镜像管理页面,创建自定义镜像,下载Config文件至Serverless资源组。
创建镜像。
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的镜像管理,在镜像管理页面找到自定义镜像页签,单击下方创建镜像按钮进行创建。您可在创建镜像页面参考以下参数进行创建镜像:
参数
示例值
镜像名称
自定义命令名称。
镜像描述
自定义命令描述。
引用类型
DataWorks官方镜像(默认)。
镜像命名空间
DataWorks Default(默认)。
镜像仓库
DataWorks Default(默认)。
镜像名称/ID
选择
dataworks_shell_task_pod:xxx
:DataWorks Shell节点官方镜像。可见范围
您可根据业务情况进行选择:
仅创建者可见。
全域可见。
使用子产品
数据开发(默认)。
支持任务类型
Shell(默认)。
安装包
安装包下拉框选择
Script
方式。并在命令框输入以下命令:# 下载 wget 'http://<yourConfigURL>' -O /home/admin/usertools/tools/<configName>
说明http://<yourConfigURL>
参数您需替换成从OSS的文档详情中复制的文件URL。<configName>
参数您可设置为需从OSS中下载的文件名myconfig.txt
。
单击下方确认按钮完成镜像创建。
测试发布。
单击您所创建的镜像右侧操作列中的发布,进入发布镜像页面,选择测试资源组,单击测试结果右侧的测试。等待测试成功,单击下方发布按钮进行发布。
按照命令配置文件的方式使用OSSUtils命令行工具。
新建通用Shell节点。
进入数据开发页面。
登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的 ,在下拉框中选择对应工作空间后单击进入数据开发。
新建通用Shell节点。
在数据开发页面右键单击目标业务流程,选择新建节点,在通用目录下选择Shell节点进行创建。
编辑节点内容。
/home/admin/usertools/tools/ossutil64 -c /home/admin/usertools/tools/myconfig.txt ls -s
结果验证。
单击,选择您在测试发布镜像过程中测试成功的Serverless资源组和所创建的自定义镜像,执行通用Shell节点任务。结果如下: