开始使用开发机

开发机简介

在英博云中,开发机以Pod形式启动运行,鉴于原生 K8S Pod 职责相对单一,无法支持开发机的SSH连接、jupyer访问等功能,英博云自研了 Custom Resourceopen in new window:ContainerServer。

一个开发机等同于一个 ContainerServer 类型的资源,通过 ContainerServer Controller 调谐开发机的 Pod,并负责添加网络访问通路等功能。

相比普通的pod,ContainerServer 开发机的额外功能包括:

  • 关机自动持久化系统盘,保存用户数据。
  • 支持ssh tunnel进行登录访问。
  • 支持jupyterlab通路,通过web进行访问。
  • 支持将开发机制作为镜像。
  • 支持通过dind的方式,在开发机内运行 docker 容器,以及通过 docker build 制作镜像。

创建开发机

创建开发机的入口位于:英博云控制台:资源管理 -> 开发机 -> 创建开发机,选择合适的集群,填写开发机名称,选择合适的配置及镜像,点击确定,即可完成开发机创建。 开发机创建,通常需要10~20秒的时间,开发机创建成功后,在开发机列表中展示的状态会变成运行中

为开发机挂载存储

在创建开发机页面,可以选择将已有的共享存储卷或者块存储卷挂载到开发机的某个目录下,挂载目前通常设置为:/data/data2,以此类推。

开启Docker支持

若是希望在开发机内通过docker builddocker run命令,制作镜像或者运行容器,可以在创建开发机时,打开Docker容器开关。示例如下:

开启docker

注意:

  • 开发机的docker服务,是外挂的docker server,性能有限,仅用于构建/拉取/推送镜像,不适用于启动镜像,并在其中执行推理训练等服务。
  • 开发机启动docker容器,不支持通过 -v 参数,mount开发机的路径到docker容器中。

关于开发机的计费模式

  • 按量付费:这类工作负载会被英博云调度到serverless节点池。这种模式无需特别的前置操作,直接在集群中创建即可。
  • 竞价实例:这类工作负载会被英博云调度到serverless节点池,并标记为可抢占。使用前需要首先将集群打开竞价实例,参考集群管理
  • 包年包月:这类工作负载会被英博云调度到专属节点池(包年月包月节点)。需要首先购买包年包月节点池,参考购买专属节点
  • 预约实例:这类工作负载会被英博云调度到专属节点池(预约节点)。需要首先购买预约节点池,参考购买专属节点

连接开发机

英博云提供3种连接连接开发机的方式:

  • JupyterLab
  • SSH连接
  • kubectl连接

您可以通过:英博云控制台:资源管理 -> 开发机 -> 具体开发机列表项(操作) -> 远程连接 或 JupyterLab 页面,获取具体连接方式,示例如下:

连接到开发机

连接到开发机弹窗

关于SSH连接保活配置

SSH连接建立后,若是长时间没有命令操作,服务端会自动断开以保证安全性。

若是希望关闭这个feature,你可以在发起ssh连接时,附加参数:-o ServerAliveInterval=60 来启用“保活”信号,具体操作如下所示:

# 原始命令
ssh -p 59999 root@ssh-cn-huabei1.ebcloud.com

# 优化命令
ssh -o ServerAliveInterval=60 -p 59999 root@ssh-cn-huabei1.ebcloud.com

这将使得SSH客户端,每隔60秒(你可以调整这个数字),就向服务端发送一个保活数据包,从而避免因为空闲导致的连接断开。

文件传输

可以采用 scp 命令通过 SSH 连接通道进行文件传输,示例如下:

# 上传文件至开发机
scp -P 35832 ./notes.txt root@ssh-cn-huanbei1.ebcloud.com:/data/

# 从开发机下载文件
scp -P 35832 root@ssh-cn-huanbei1.ebcloud.com:/data/notes.txt  ./notes_copy.txt

注意:

  • 这里端口号、密码均与上面介绍的 SSH 连接方式相同。

开发机关机

您可以通过:英博云控制台:资源管理 -> 开发机 -> 具体开发机列表项(操作) -> 更多 -> 关机 按钮,关闭开发机,开发机关机会自动保存数据。

对于按量付费场景,开发机关机后,实例会停止计费,详见价格与计费

注意:

  • 若是开发机使用了系统盘,这部分会在开发关机后继续计费。
  • 系统盘会跟随开发机的生命周期,在开发机删除后自动清理。
设置定时关机

您可以通过:英博云控制台:资源管理 -> 开发机 -> 具体开发机列表项(停机时间) -> 设置定时关机 按钮,开启开发机定时关机的功能,并配置定时关机的时间。 定时关机功能,支持修改关机时间,支持取消。

调整开发机配置

您可以通过:英博云控制台:资源管理 -> 开发机 -> 具体开发机列表项(操作) -> 更多 -> 更改实例配置 页面,执行配置调整。

查看开发机事件

您可以通过:英博云控制台:资源管理 -> 开发机 -> 具体开发机列表项(事件) -> 查看 按钮,查看开发机的事件。

开发机内置公共数据

英博云为每个开发机默认添加了/public目录,这是一个共享目录,存放英博云内置的模型、数据集、网络加速脚本、安装包等。具体如下所示:

public数据

注意:

  • 开发机内,/public目录以只读的方式挂载,用户可以读取、拷贝其中的内容,无法进行写入。
  • 关于/public目录的更多信息,参考这里

制作镜像

博云支持将开发机制作为镜像,方便后续快速恢复训练环境。

您可以通过英博云控制台:资源管理 -> 开发机 -> 具体开发机列表项(操作) -> 更多 -> 保存镜像,将开发机保存为镜像。

制作的镜像,会存储在

注意:

  • 目前将开发机保存为镜像,仅支持在关机状态下操作。

下一步操作建议

开始模型训练:基于DeepSeek进行模型微调的例子。

部署推理服务:部署Higgs Audio v2模型,实现在线推理。