您可以在训练集群中使用数据集加速器来读取挂载的文件,提高数据集访问效率。本文为您介绍如何使用数据集加速器。
前提条件
在开始执行操作之前,请确认您已完成以下准备工作。
-
已创建Kubernetes 1.20及以上版本集群,具体操作,请参见创建Kubernetes托管版集群。
-
已通过kubectl连接到Kubernetes集群,具体操作,请参见获取集群KubeConfig并通过kubectl工具连接集群
-
已安装Kubernetes的包管理器Helm,具体操作,请参见安装Helm。
-
已创建数据集加速槽,具体操作,请参见创建及管理数据集加速槽。
注意事项
训练集群和挂载点需要在同一个VPC内,否则挂载数据会读取失败。
部署数据集加速器客户端
-
下载安装包。
wget http://dlc-release.oss-cn-zhangjiakou.aliyuncs.com/datasetacc/datasetacc-0.1.0.tgz
-
安装客户端。
helm install datasetacc ./datasetacc-0.1.0.tgz
-
验证客户端安装是否成功。
kubectl get pods -n datasetacc-system
类似如下输出结果,说明客户端已安装成功。
其中CSI Pod数量应与集群内Node数量一致。
在集群中创建YAML文件
-
登录PAI控制台。
-
按照下图操作指引,下载YAML文件。
在Kubernetes集群中创建YAML文件。
kubectl create -f /XXXX/dataset-accelerator.yaml
重要
dataset-accelerator.yaml文件中需要包含步骤2中下载的YAML内容。
创建应用容器来使用数据集加速器
准备好数据集加速器客户端和YAML文件之后,您可以参考以下操作步骤使用数据集加速器来读取文件。
-
在Kubernetes集群中创建demo.yaml文件,文件内容如下。
apiVersion: v1 kind: Pod metadata: name: demo-datasetacc-test spec: containers: - name: demo image: nginx volumeMounts: - mountPath: /data name: datasetacctest volumes: - name: datasetacctest persistentVolumeClaim: claimName: rel-1fmcg74oq6dxwdpjup
其中:
-
claimName:应与您创建的数据集加速器客户端名称保持一致。
-
mountPath:数据集挂载的位置。在集群Pod中,您可以通过该位置来访问您需要加速的文件。
-
-
使用demo.yaml文件创建Pod。
kubectl create -f demo.yaml
-
进入Pod内,验证是否能正常读取数据。
kubectl exec -it demo-datasetacc-test -- /bin/bash
进入容器后,使用
ls data/
命令查看挂载目录下的文件与数据集一致,说明数据读取正常。
您可以按照以上方法,将persistentVolumeClaim挂载到您训练任务的Pod上,即可在该Pod内通过挂载的文件夹来访问您需要的文件。
内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家
阿里云企业补贴进行中: 马上申请
腾讯云限时活动1折起,即将结束: 马上收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利:同意关联,立享优惠
转转请注明出处:https://www.yunxiaoer.com/164755.html