使用网盘工作流示例
基因分析平台支持和网盘打通数据流。
网盘使用支持 外网 和 百度内网 两种使用方式。
前置工作
1、外网方式:
请确保节点能正常访问外网,推荐配置NAT网关访问外网,请参考NAT网关
视频教程:https://cloud.baidu.com/video-center/video/726。
2、百度内网方式:
需要在VPC控制台购买两张服务网卡,分别用于访问网盘控制流及数据流服务。请参考:https://cloud.baidu.com/doc/VPC/s/6jwvyu1dn#%E5%88%9B%E5%BB%BA%E6%9C%8D%E5%8A%A1%E7%BD%91%E5%8D%A1
服务网卡参数填写说明:
1、控制流服务网卡:
- 购买入口:https://console.bce.baidu.com/network/?_=1705038976282#/vpc/endpoint/create
-
字段说明:
- 网卡名称:自定义名称,建议关键字带有网盘控制流服务,以方便区分
- 所在网络:和您新建的 hpc 集群,vpc & 子网保持一致
- IP 地址:自动分配
- 安全组:普通安全组
- 挂载服务:选择公共服务,百度网盘,域名带有 control 关键字(yq.baidupan-control.com)
- 关联添加解析:关闭
- 内网带宽:默认 1000 Mbps
- 公网IP:暂不需要
2、数据流服务网卡:
- 购买入口:https://console.bce.baidu.com/network/?_=1705038976282#/vpc/endpoint/create
-
字段说明:
- 网卡名称:自定义名称,建议关键字带有网盘数据流服务,以方便区分
- 所在网络:和您新建的 hpc 集群,vpc & 子网保持一致
- IP 地址:自动分配
- 安全组:普通安全组
- 挂载服务:选择公共服务,百度网盘,域名不带有 control 关键字(yq.baidupan.com)
- 关联添加解析:关闭
- 内网带宽:默认 1000 Mbps
- 公网IP:暂不需要
3、服务网卡管理页:
WDL支持网盘相关参数及示例
1、外网方式:
WDL支持网盘相关参数,如下表:
注意事项:
1. 请您提前接入网盘,完成认证,获取 appid 与 spacetoken
a. 用户接入需要完成企业认证、开发者认证, 创建应用(appid), 详见: 使用教学
b. 然后通过相关接口从相应的 appid 进行账号初始化, 同时获取 spacetoken, 详见: 账户系统
2. local_address路径请不要修改,保持共享存储路径为/chpcdata/。如更改可能导致计算节点无法读取网盘下载的文件。
3. local_upload_address上传网盘文件夹名称,请确保和本地文件夹名称一致。例如:共享存储文件夹名称为output:/chpcdata/output,则网盘文件夹名称也为netdisk://test/output
示例WDL文件如下:
version 1.0
workflow myWorkflow {
input {
String guest = "input"
}
call myTask {
input:
who = guest
}
}
task myTask {
input {
String who
# Int i = 0
# Float f = 27.3
# Boolean b = true
}
command {
echo "hello world"
}
runtime {
memory: "100 MB"
cpu: "1"
queue: "default_queue"
# 网盘的appId
netdisk_appId: "1111111"
# 网盘的Spacetoken
netdisk_spaceToken: "xxxx"
# 网盘地址,在执行工作流前,将该文件下载到本地
remote_address: "netdisk://test/test.json"
# 共享存储地址,在执行工作流前,下载到本地的路径
local_address: "/chpcdata/"
# 共享存储地址,在执行工作流后,将该路径下文件都上传到网盘
local_upload_address: "/chpcdata/output"
# 网盘地址,在执行工作流后,文件上传的地址
upload_address: "netdisk://test/output"
}
output {
String out = "${who}"
}
}
2、百度内网方式:
WDL支持网盘相关参数,如下表:
注意事项:
1. 请您提前接入网盘,完成认证,获取 appid 与 spacetoken
a. 用户接入需要完成企业认证、开发者认证, 创建应用(appid), 详见: 使用教学
b. 然后通过相关接口从相应的 appid 进行账号初始化, 同时获取 spacetoken, 详见: 账户系统
2. 网盘使用内网,需提前创建服务网卡,并且在工作流参数中配置数据流网卡ip和控制流网卡ip。data_inner_ip为网盘内网访问的数据流网卡ip、control_inner_ip为网盘内网访问的控制流网卡ip。
3. local_address路径请不要修改,保持共享存储路径为/chpcdata/。如更改可能导致计算节点无法读取网盘下载的文件。
4. local_upload_address上传网盘文件夹名称,请确保和本地文件夹名称一致。例如:共享存储文件夹名称为output:/chpcdata/output,则网盘文件夹名称也为netdisk://test/output
示例WDL文件如下:
version 1.0
workflow myWorkflow {
input {
String guest = "input"
}
call myTask {
input:
who = guest
}
}
task myTask {
input {
String who
# Int i = 0
# Float f = 27.3
# Boolean b = true
}
command {
echo "hello world"
}
runtime {
memory: "100 MB"
cpu: "1"
queue: "default_queue"
# 网盘内网访问的数据流网卡ip,如果您需要内网访问,该值必填
data_inner_ip: "xxxxx"
# 网盘内网访问的控制流网卡ip,如果您需要内网访问,该值必填
control_inner_ip: "xxxxx"
# 网盘的appId
netdisk_appId: "1111111"
# 网盘的Spacetoken
netdisk_spaceToken: "xxxx"
# 网盘地址,在执行工作流前,将该文件下载到本地
remote_address: "netdisk://test/test.json"
# 共享存储地址,在执行工作流前,下载到本地的路径
local_address: "/chpcdata/"
# 共享存储地址,在执行工作流后,将该路径下文件都上传到网盘
local_upload_address: "/chpcdata/output"
# 网盘地址,在执行工作流后,文件上传的地址
upload_address: "netdisk://test/output"
}
output {
String out = "${who}"
}
}