ACK上使用抢占式实例训练模型

简介: 模型训练通常会使用GPU,而GPU价格是较高的,为了降低模型训练的费用成本,可以使用阿里云抢占式实例运行训练任务。本文介绍如何使用Arena在阿里云ACK上,基于ECS抢占式实例,运行训练任务。

环境准备

  1. 在阿里云ACK上创建集群,集群规格选择Pro版,Kubernetes版本选择1.20或以上版本。
  2. 在ACK控制台,点击左侧菜单应用 - AI工程加速,进入云原生AI套件安装页面。
  3. 点击一键部署,交互方式中默认已勾选Arena,其他组件可根据需要自行勾选安装。
  4. 点击页面最下方部署云原生AI套件按钮即可,安装成功后,可以在组件管理页面看到当前安装的组件信息。

基于ECS抢占式实例的训练任务

使用ECS抢占式实例训练模型,需要先在ACK中创建节点池,并给节点池打标。然后在Arena提交训练任务时,通过--selector 参数指定把训练任务调度到抢占式实例上。


操作步骤如下:

  1. 在ACK控制台,点击左侧菜单节点管理 - 节点池,进入节点池页面。首次创建节点池,需要先点击页面右上角集群自动弹性伸缩配置按钮,根据提示完成配置。


  1. 在节点池页面,点击右上角创建节点池按钮,在弹出的创建节点池窗口中完成配置。其中付费类型要选择抢占式实例

11111111.png


然后点击页面最下方的显示高级选项。

2222222.png


在展开的配置项中,节点标签部分,为节点添加标签,这样节点池中的所有抢占式实例都被打上了instance=spot的标签。

3333333.png


最后指定节点池中实例规格和数量,点击确认配置,完成节点池创建。


  1. 使用Arena提交训练任务到抢占式实例上,这里以提交一个tensorflow单机训练任务为例说明。
arena \
  submit \
  tfjob \
--gpus=1 \
--selector=instance=spot \
--name=tf-standalone-test-with-git \
--env=TEST_TMPDIR=code/tensorflow-sample-code/ \
--sync-mode=git \
--sync-source=https://github.com/happy2048/tensorflow-sample-code.git \
--logdir=/training_logs \
--image="registry.cn-beijing.aliyuncs.com/ai-samples/tensorflow:1.5.0-devel-gpu" \
"'python code/tensorflow-sample-code/tfjob/docker/mnist/main.py --max_steps 5000'"

执行上面的命令,注意其中的--selector=instance=spot参数,通过设置该参数就可以把训练任务调度到抢占式实例上。

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
弹性计算 Kubernetes 安全
在K8S上部署可扩展的基于Occlum的安全推理实例
机密计算是指通过在基于硬件的可信执行环境(TEE)中执行计算来保护数据应用中的隐私安全,是目前最火热的隐私保护技术之一。在云上运行TEE应用也得到了云厂商的广泛支持,包括阿里云,微软Azure云,都提供了基于SGX技术的机密安全实例服务。用户可以在这些云上申请带SGX支持的安全实例,然后部署自己的机密安全服务,既可以避免隐私数据泄露,也无需操心繁琐的基础架构层的配置。无论哪种云,最流行的分布式部署
在K8S上部署可扩展的基于Occlum的安全推理实例
|
机器学习/深度学习 Kubernetes PyTorch
解决在Docker或者Kubernetes中使用PyTorch训练深度学习模型共享内存不足的问题
异常信息 ERROR: Unexpected bus error encountered in worker. This might be caused by insufficient shared memory (shm) 问题原因
|
2月前
|
存储 运维 Kubernetes
容器服务ACK常见问题之在ALB中看不到新的实例如何解决
容器服务ACK(阿里云容器服务 Kubernetes 版)是阿里云提供的一种托管式Kubernetes服务,帮助用户轻松使用Kubernetes进行应用部署、管理和扩展。本汇总收集了容器服务ACK使用中的常见问题及答案,包括集群管理、应用部署、服务访问、网络配置、存储使用、安全保障等方面,旨在帮助用户快速解决使用过程中遇到的难题,提升容器管理和运维效率。
|
9月前
|
容器
阿里云最新产品手册——云基础产品与基础设施——计算——弹性容器实例——通用部署ACK虚拟节点组件创建ECI Pot——ECI Pot——特殊实例
阿里云最新产品手册——云基础产品与基础设施——计算——弹性容器实例——通用部署ACK虚拟节点组件创建ECI Pot——ECI Pot——特殊实例自制脑图
355 4
|
4月前
|
人工智能 Cloud Native PyTorch
阿里云 ACK 云原生 AI 套件中的分布式弹性训练实践
阿里云 ACK 云原生 AI 套件中的分布式弹性训练实践
148661 4
|
7月前
|
Kubernetes jenkins 测试技术
【Kubernetes的DevOps自动化,Jenkins上的Pipeline实现自动化构建、测试、部署、发布以及Bookinginfo实例的部署灰度发布故障注入流量】
【Kubernetes的DevOps自动化,Jenkins上的Pipeline实现自动化构建、测试、部署、发布以及Bookinginfo实例的部署灰度发布故障注入流量】
127 1
|
8月前
|
存储 弹性计算 Kubernetes
基于 ACK Fluid 的混合云优化数据访问(二):搭建弹性计算实例与第三方存储的桥梁
基于 ACK Fluid 的混合云优化数据访问(二):搭建弹性计算实例与第三方存储的桥梁
|
11月前
|
存储 机器学习/深度学习 人工智能
DeepSpeed + Kubernetes 如何轻松落地大规模分布式训练
DeepSpeed + Kubernetes 如何轻松落地大规模分布式训练
|
12月前
|
弹性计算 运维 Kubernetes
计算巢Kubernetes集群部署(Ack-Distro)服务实例部署文档
## 概述 Kubernetes集群部署(Ack-Distro)是计算巢官方提供的基于Ack-Distro部署K8S集群的服务。关于Ack-Distro,请参见[Ack-Distro](https://github.com/AliyunContainerService/ackdistro/)。 本文向您介绍根据该服务部署实例的流程和使用说明。 ## 计费说明 Kubernetes集群部署(A
237 0
|
弹性计算 人工智能 Serverless
如何在阿里云ACK上使用Arena提交ECI训练任务
使用ECI运行AI训练任务,利用比较强力的Serverless能力。本文介绍使用Arena提交在ECI上运行的分布式训练任务的流程。
237 0

推荐镜像

更多