常见问题 FAQ
本篇由社区常见问答整理而来,按问题域分组。每条以 Q: 提问、随后给出答复。涉及具体配置项/路径处已对照当前代码核实,发现与代码不一致的地方用 ⚠️ 标出。
来源:
docs/运维/常见问题.csv(约 150 条)。
一、部署与安装
Q: 单机部署 rancher 之后进不去 web 页面
如果是刚部署完就进不去 web 界面,可能是 rancher server 还没启动起来,稍等片刻。如果是运行一段时间后突然进不去,或因 docker 重启、机器重启等原因进不去,可参考 wiki 中 rancher 部署 k8s 部分的文章,配置 rancher 的单机高可用。
Q: rancher 单集群多机一直卡在 "Waiting to register with Kubernetes"
机器需要先把镜像拉取好,再加入 k8s 集群,这样加入集群会快很多。
Q: rancher 主机注册的时候一直卡在 "[remove/etcd-fix-perm] Successfully removed container on host"
rancher 部署时会自动在机器上部署 agent 来完成 k8s 节点初始化。部署需要提前拉取好镜像,准备至少 16 核的机器;如果部署失败,使用 reset_docker 脚本重置 docker 后重启,再重新部署。
Q: rancher 创建失败,等了好久也不成功,"Cluster health check failed: cluster agent is not ready"
同上:rancher 部署会自动部署 agent 完成节点初始化。需提前拉取镜像、准备至少 16 核机器,失败则用 reset_docker 脚本重置 docker 后重启重新部署。
Q: 搭建单机版出现 "cluster health check failed cluster agent is not ready"
机器资源问题。提前拉取镜像,reset_docker 重置 docker 重启后重试。
Q: myrancher 运行 docker 启动后不断重启
可能是资源不足造成,建议扩大资源至少 16 核,然后按 wiki 中 rancher 单机高可用方案部署。
Q: 机器重启或机器上的 docker 服务重启后,rancher web 界面打不开了
这是 rancher 的一个 bug,需参考 wiki 部署 rancher 文章中的单机高可用方案来解决。
Q: 单机版部署 rancher 后无法访问 web 页面,日志出现 "error syncing 'validating-webhook-configuration': handler need-a-cert"
建议提前拉取镜像后重新部署,并把 iptables 放开。
Q: rancher 部署的时候不成功,等了很久一直失败
需提前拉取好镜像、准备至少 16 核机器,失败则用 reset_docker 脚本重置 docker 后重启重新部署。
Q: rancher 443 拒绝访问
rancher server 是第一个运行的容器(即 rancher web 界面),部署可能需要等待几秒钟;并且打开 web 界面时要跳过 https 限制。
Q: 目前最新版用哪个 rancher 和 kubernetes 版本好?
rancher 2.6.2、k8s 1.21 最好。
Q: K8S 高版本的支持
目前支持 1.18 到 1.24 的 k8s 版本。高低版本部分组件要微调,可参考 start 脚本中的内容。
Q: sudo sh start.sh x.x.x.x 这种安装方式是不是只适用单机通过 rancher 安装?已有 k8s 集群能用吗?
已有的 k8s 集群也是这种安装方式。
Q: 运行 start.sh 安装时报错
如果报“删除对象不存在”可以忽略;如果报“api server 服务不可达”,检查 config 文件是否正常、是否能正常下载 kubectl。start 脚本会先拉取镜像和基础软件,然后按步骤安装云原生基础组件,最后配置 istio ingressgateway 代理。详见 start.sh 脚本内容。
Q: start 脚本部署不完整,缺部分组件(本地虚拟机资源不足?connection refused)
start 脚本可以重复多次运行,多运行几次即可;部署前提前把镜像拉取好。
Q: worker 节点的机器上是否需要 pull_image_kubeflow.sh 里的镜像?
是的,worker 节点上需要拉取镜像,并为机器打上对应的 tag。
Q: 多机器部署时,worker 需不需要运行 start.sh?
worker 节点不需要运行 start.sh,只需要把 worker 节点加入到 k8s 集群即可。
Q: 部署后 kubeflow dashboard 报错 mysql 数据库链接不上,域名无法解析
应该是机器防火墙的问题,可用以下命令放开防火墙;由于各家公司网络可能会自动恢复,iptables 的放开可以设为定时任务:
iptables -P FORWARD ACCEPT
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
Q: core-dns 出错,service name 无法解析,集群启动但 pod 之间无法通信
同样是机器防火墙的问题,用上面的 iptables -P ... ACCEPT 放开防火墙,并把放开设为定时任务防止被自动恢复。
Q: myapp-1 docker 运行启动后不断重启
myapp 容器不断重启有可能是连不上数据库,可根据日志信息提供更多内容排查。
Q: myapp fab create-admin 报错
create-admin 是初始化阶段创建数据库 admin 账户,如果之前已经存在 admin 会报错,可以忽略。
Q: 单机部署 myapp/home 无法进入 / 访问 http://xxxx/mysqpp/home 进不去
新版本首页不是 myapp/home,直接用 http + ip 访问会自动跳转到首页。如果进不去,按 wiki “单机部署”文章末尾的部署后排查流程逐步排查。
Q: 部署后 some namespaces without pods
pipeline、service、jupyter、automl 这些命名空间是预留给用户应用的,并非系统应用占用,所以刚部署起来后是没有 pod 的,属正常现象。
Q: 平台部署完成后 ml-pipeline-viewer-crd 起不来,demo 跑不起来
新版本已不再需要 ml-pipeline-viewer-crd,建议部署新版本。
Q: metadata-grpc-deployment 报错 "mysql_real_connect failed ... Unknown MySQL server host 'mysql-service.infra'"
新版本已不再使用 metadata-grpc 服务,建议升级到新版本。
Q: 部署后 kubeflow-dashboard 一直报错缺 ab_user_role 表
如果是新部署的集群,可从主机 /data/k8s/infra/mysql 删除 mysql 的存储,然后重新用 start 脚本部署 CubeStudio。
Q: stat /data/k8s/kubeflow/pipeline/workspace: no such file or directory
/data/k8s/ 是分布式存储目录,单机部署时可以是主机目录。先确保主机该目录存在,并且 docker start kubelet 后保证 kubelet 容器中该目录也存在。
Q: metric-server 默认镜像拉取是 Always,rancher 中改不动 yaml 怎么办?
rancher 的 metric-server 默认拉取策略确实是 Always。如果 rancher web 界面上改不成功,可直接用 kubectl 命令去修改。
Q: 部署最后的 CubeStudio 组件时,kubernetes-config 配置是否必须?报错找不到 kubernetes-config
start 脚本最开始会创建 kubeconfig 目录,并将该目录内容创建为 configmap。虽然 configmap 内容为空,但 kubeconfig 目录是必须存在的。
Q: kubernetes 1.22.16 版本 kubeflow-batch 部署报错,只部署 volcano 可以吗?
现在平台不依赖 kube-batch,替代方案使用 volcano。
Q: master 节点打哪些服务的 label?worker 上哪些 label 是 true?
机器通过 label 进行管理,所有调度机器由平台控制,不由用户直接控制。
- 开发训练服务机器:cpu 的 train/notebook/service 选
cpu=true;gpu 的选gpu=true;vgpu 的 service 选vgpu=true;训练任务选train=true;notebook 选notebook=true;服务化选service=true;不同项目任务选对应org=xx(默认org=public)。 - gpu 型号用
gpu-type=xx标识,如gpu-type=V100、gpu-type=T4,配置 gpu 算力时可同步配置型号(如2(T4)表示 2 张 T4 卡)。 - 控制器机器:
mysql=true(部署 mysql)、redis=true(部署 redis)、kubeflow-dashboard=true(部署 CubeStudio 服务)、kubeflow=true(部署 kubeflow)、istio=true(部署 istio)、monitoring=true(部署 prometheus)。
Q: 部署 k8s 集群,在某个 worker 节点执行了 start.sh 本地 ip 后,此节点与其他节点 ip 不通了
可能是 k8s 使用的网络 ip 域与主机本身网络 ip 域重复了,可在 rancher 中修改节点和服务 pod 的 ip 范围,参考 wiki rancher 章节。
Q: 服务发布之后 ExternalIP 为 master ip 导致集群故障
主要出现在平台入口使用 nodeport 模式时,端口相互冲突占用导致。
Q: 如何部署 CubeStudio 平台?是否有完整详细的部署文档?
wiki 文档有详细的部署文档:先部署 k8s 集群,再部署 CubeStudio 平台,再把多台机器加入集群。
Q: 能否提供一个一键部署的 docker-compose?
在 install/docker 中提供了本地一键启动的 docker-compose,但因为 CubeStudio 平台很多地方需要 k8s 作为基底,本地启动后部分功能仍需连接远程 k8s 才能正常运行。
Q: 开始部署前需要准备哪些镜像?
主要为 rancher 的镜像和 CubeStudio 的镜像,可参考部署文档中的 all_image.py 文件一次性生成镜像列表。
Q: 怎么卸载 CubeStudio?
install/kubernetes/rancher 中包含 reset_docker.sh 脚本,可以快速把 k8s 集群卸载掉。
Q: 默认下载 master 分支代码就可以吗?
用最新的 release 版本会更稳一些。
Q: 有升级文档吗?
每个版本发布可能涉及架构变更,统一可以把原平台的数据库导出,然后在新数据库的基础上部署新版本的平台。
Q: 部署 triton-server 的教程
wiki 中有 triton 服务部署的相关资料。
Q: 服务器的 IP 地址换了怎么改?
如果服务器上部署了 rancher server,需要按 wiki “部署 rancher”章节内容更换 master 服务器。
Q: 报错 cannot connect to MySQL server on 'host.docker.internal'
host.docker.internal 是 mac/windows 上 docker 容器中“本机 ip”的域名表示。可换成自己机器的内网 ip,但不要使用 127.0.0.1。
二、镜像与打包构建
Q: Dockerfile-base 打包出错 / 构建 dockerfile-base 时报错
基础环境镜像打包失败可能是网络问题,可以配置国内 apt 源(或相应的软件源),多构建几次;也可以直接基于 base 镜像再次构建自己的环境镜像。
Q: 构建 vision 和 visionPlus 失败
前端代码构建失败可能是网络问题,建议添加国内 node 源后再构建,可多试几次。
Q: when frontend run yarn & yarn build, an error happens! / vision 前端页面运行不起来
可联系社区管理员协助。
Q: 总有一个镜像拉取有问题 / 总有一个镜像拉取不到
可以先在主机上把该镜像拉取好。
Q: 似乎没有找到这个镜像,哪里需要这个镜像?
如果是 CubeStudio 的镜像,可联系管理员;如果是其他开源项目或自己的镜像,先尝试在机器上能否拉取,再排查平台拉不到的原因。可能是账号密码问题,也可能是镜像名错误。
Q: 更新到最新版后还是拉取镜像失败 / 拉取镜像失败的原因
可能原因:镜像名写错、镜像在仓库中不存在、镜像没有设为 public、未配置拉取账号密码,或国内网络问题无法拉取。
Q: 拉取 rancher 依赖镜像很多都失败,需要换源吗?
不需要。rancher 镜像是 docker hub 官方镜像,拉取失败主要是 docker hub 做了限频。可以先 docker login 登录,再多试几次。
Q: 镜像太大传不上 docker hub 怎么办?
可以自己部署内网 harbor,或尝试把镜像每一层减小一些。
Q: 希望作者更新 cuda11 的镜像
已经支持 cuda11 的 gpu 镜像。
Q: 如何在之前的 notebook 镜像上添加插件并重启后生效? / 如何修改 notebook 的镜像?
在本地机器上用容器运行 notebook,浏览器打开后安装插件,再把容器 commit 成镜像并推送到仓库,这样线上就能用新的 notebook 镜像了。
三、网络、网关与证书
Q: 路由增加 https 反代后,login 跳转返回 http 协议
目前仅支持 http 协议,代码中做了限制。
Q: istio-ingressgateway 报错,无法通过健康检查
需看具体日志才能定位。可能原因:istiod 没有正常启动导致 ingressgateway 连不上 istiod;使用了第三方证书;或证书过期。可根据具体日志信息搜索解决。
Q: 部署以后 cert-manager pod 不正常,导致 istio 组件缺少挂载
现在 CubeStudio 使用第一个证书(自带证书),不需要 cert-manager。
Q: 80 端口被占用,如何修改为其他端口?
可以使用 nodePort 模式,把 istio-system 命名空间下的 istio-ingressgateway 服务的服务类型配置为 nodeport。
Q: 所有服务都没问题,可输入本机 ip 还是进入 rancher,进不去 CubeStudio 界面
rancher 界面是 https 协议,CubeStudio 界面是 http 协议,浏览器会记忆之前的网址。手动在浏览器中输入 http://ip 来打开 CubeStudio。
Q: kubectl patch svc istio-ingressgateway 设置 externalIP 后创建了和物理机冲突的 ip,集群崩了
可能是 rancher 创建的 k8s 集群网络和主机内网 ip 网络重叠了,可参考 wiki 部署 rancher 章节里的 rancher 集群配置。
Q: 安装 CubeStudio 后访问 web 端返回 301?
301 是重定向,一般是用户没有登录,所以重定向到登录地址。
Q: 用内外网双网卡安装,外网安装顺利但打不开 CubeStudio 界面,内网很多服务一直 pending?
先保证所有 pod 正常 running,再排查外网 ip 打开问题。部署时使用内网 ip,浏览器打开时使用外网 ip,并且云上安全组需要放开权限。
Q: 502 Bad Gateway,nginx 报错
CubeStudio 只在前端界面上使用 nginx(前端镜像基于 nginx:latest,版本随构建时间变化,见 myapp/frontend/Dockerfile:1,不是固定版本)。如果能打开前端界面 logo 但 nginx 报错,说明后端 pod 启动异常,排查后端 pod;如果报错的 nginx 不是前端镜像里的版本,可能是自己额外添加的 nginx 代理导致。
四、服务化与推理部署
Q: 服务化 -> 服务上线部署之后无法访问服务
内部服务和推理服务部署后访问不了,几个可能原因(按此顺序排查):pod 没有正常启动、pod 端口配置错误、ip 端口被网络限制、域名和 ip 混用。
Q: CubeStudio 的服务化在内网中根据 ip 和端口访问不到?
内部服务和推理服务的端口是自动生成的。部署后无法访问,首先确认 pod 是否正常启动。端口规则见 端口使用情况。
Q: 内部服务添加云原生服务,把默认端口 80 改为 30021 后首页打不开
内部服务和推理服务的端口配置是业务代码的监听端口,不是客户端访问的 ip 和端口。客户端可访问的端口是自动生成的,会转发到容器的业务监听端口。改成 80 会和平台入口冲突,导致首页打不开。
Q: 开源版能部署 tfserving 吗?
开源版本可以部署 tfserving、torch-server、triton 等推理框架,或自定义推理镜像。
Q: 推理服务部署上线,接口入参在哪里配置?
推理服务有启动命令,可统一配置在启动命令中。
Q: 是否支持 CV 项目的线上推理可视化?
支持。
Q: 自定义模板报错 "OCI runtime create failed ... exec: images: executable file not found"
说明自定义模板中的镜像没有配置启动命令,所以容器运行时找不到可执行文件。
Q: 创建自定义模板后无法正常调用,修改原有模板后也无法使用?
模板修改要配合镜像一起改才能正常使用;自定义镜像的模板不能直接改。
五、平台功能使用(notebook / pipeline / 数据ETL / 大数据 / aihub)
Q: 在平台部署 notebook 直接提示 unknown,选 reset 会报错
notebook unknown 说明 notebook 没有运行;reset 报错需要提供进一步信息排查。
Q: notebook 模块进入报错
notebook 进不去可以通过 notebook 记录后面的 reset 按钮重启、配置 notebook。
Q: notebook 到期后进行 reset 会出现 404
404 多出现在多域名、或域名与 ip 混用的场景。建议只使用一个,在 config 文件中配置好域名。
Q: 部署完成后创建 notebook 后无法进入,提示 "no healthy upstream"
管理员可在状态按钮中进入 k8s dashboard,查看 pod 拉取是否正常、运行是否正常等。
Q: 启动 jupyter-ubuntu-deeplearning 无法调用 cuda? / jupyter 调不了 GPU
只有 gpu 版本的 jupyter 可以调用 gpu,其他版本的 jupyter 均是 cpu 版本。
Q: 在 jupyter lab 中加入大数据功能
提供了大数据版本的 jupyter,配置好 hadoop 和 spark 集群信息后,就可以在 notebook 中查询大数据平台数据做 etl 和数据分析;大数据版本的 notebook 还集成了常用数据分析工具。
Q: 模型训练结果可视化(类似 tensorboard)打算怎么实现?
任务结果可视化目前是商业版功能。不过 tensorboard 在 jupyter 中做了集成:打开深度学习版本的 jupyter,在左侧文件目录先打开训练日志目录,再点 tensorboard 图标按钮,即可查看实时/离线训练结果。
Q: 如何进行算子的编排?
分任务级别和函数级别。任务级别要求前一个结束才运行下一个,主要在训练菜单的“任务流”模块拖拉拽算子实现。如果只做编排(定义上下游逻辑关系),可用“数据 ETL”中的任务流编排(通用能力,不一定用在数据 ETL 场景),不过要进行二次开发。
Q: 如何自定义算子?
部署平台后,参考首页的“自定义模板”视频,或参考 CubeStudio 视频号中的部分视频教程。
Q: 样例任务流运行完成后,中间过程(如 yolov3)的容器没有被清除?
pipeline 实例运行结束后会在三个小时后删除,并不是立刻删除。
Q: pipeline 容器启动时可以加参数指定端口映射吗?
pipeline 中的任务都是离线任务,不是服务,所以不能也不需要配置端口映射。
Q: 怎样启动 volcano 调度?
使用 volcano 任务模板,任务启动时会现场部署一个服务要求的分布式集群,这个集群由 volcano-controller 部署。
Q: 工作任务流里,任务之间的变量传递有什么方式?
开源版本不提供任务之间输入输出参数变量的传递,只有商业版本支持。
Q: 数据 ETL 模块不可用 / 任务 ETL 开源能用吗?
开源版本数据 ETL 只提供了算子模板化、拖拉拽编排的能力,使用者需要二开对接自己公司的调度系统才能正常运行。
Q: 有没有在线开发里数据 ETL 的例子?
目前还没有现成示例。
Q: 怎么对接已有的数据中台?
对接数据中台包含计算引擎(sqllab)、调度引擎(数据 ETL)、元数据(离线库表/指标/维表)、血缘关系(血缘链路)、存储(任务模板)等各部分。
Q: 使用 datax 时,job.json 文件是外部传入还是打包进镜像?
不需要打进镜像。在 notebook 里写就可以,pipeline 里写上地址即可。
Q: 怎么支持大数据组件(hive/spark 等)的定时调度任务?pipeline 可以直接调吗?
pipeline 中包含提交 hive、spark 任务,可参考 hadoop 模板,该模板用于提交大数据生态相关任务。
Q: 做增量训练怎么使用 huggingface 上下载的开源模型?
huggingface 模型在其介绍页一般会说明如何微调,可在 notebook 或 pipeline 中运行你的微调代码。
Q: aihub 运行中存在的前端 bug
aihub 前端 bug 仍在修复中,有 bug 也可在 github 提出。
Q: aihub deeplearning 的算法包,有可以直接跑的吗?
目前 aihub 的功能只能在商业版中正常使用。
Q: 操作中通过“更多”里的删除无法删除,但批量操作中的删除可以?
“更多”菜单中的删除是单条目删除,与批量操作中的删除应是一样的。如果删不掉,建议查看是否有其他类型条目的绑定。
Q: 有从数据导入到模型部署完整任务流的案例吗?
可参考 CubeStudio 视频号,里面有各种教程和示例。
Q: 页面有些功能不可点击
部分功能尚未补齐,或为商业版功能,所以不可点击。
六、GPU、硬件与架构兼容
Q: 有没有类似 TKE vCUDA、阿里 cGPU 的 cuda 劫持虚拟 GPU 计划? / VGPU
目前支持 vgpu 能力,可参考 wiki “加入 gpu 机器”这篇文章。
Q: CubeStudio 的 VGPU 需要授权许可 license 吗?
不需要。
Q: 如何支持更多型号的 GPU? / 怎么支持 gpu 机器加入集群被正常调度? / 集群加入 gpu 后服务报错
参考 wiki “添加 GPU 节点 / 加入 gpu 机器”文章。流程:机器上安装 gpu 驱动 → 加入 k8s 集群 → 打对应标签(主要是 gpu=true 和 gpu-type=V100 等卡型)→ 在 k8s 中安装对应驱动插件 → 在业务镜像中安装驱动调用库(如 cuda),这样才能在平台里使用机器上的 gpu。
Q: CubeStudio 支持 A10 这款显卡吗?
支持。
Q: CubeStudio 是否支持 arm64 架构、国产芯片、华为麒麟服务器?
CubeStudio 类似 ai 中台,架构相对复杂,目前只有商业版本支持 arm64 架构。
Q: 平台支持 arm 吗?
开源版支持 amd64,商业版支持 arm64 和 amd64。
Q: 有边缘计算部署到车机/手机端的案例吗?
目前还没有边缘计算到车载/手机端的案例。平台支持 arm64 架构,可联系管理员一同测试。
Q: windows 下基于 wsl2 的 ubuntu,cpu 长期打满?
wsl2 只能开 gpu docker,用不了 nvidia k8s plugins。也可以扩内存或用 ssd。
七、配置与运维
Q: 关于将 CubeStudio 嵌入其他云平台的 cookie 作用域问题
可以在配置文件 config.py 中配置 COOKIE_DOMAIN 参数(myapp/config.py:1377),它是你想共享给其他平台的域名后缀。
Q: 如何配置内网运行时镜像拉取不使用 Always 而用 IfNotPresent?
平台通过配置文件中的 IMAGE_PULL_POLICY 参数控制调度任务容器时是否拉取(myapp/config.py:968,默认 Always,可改为 IfNotPresent)。可参考 wiki “自定义配置文件”。
Q: 能否隔离部署,让各服务镜像不会自动拉取更新?
内网部署需先把所需镜像拉到内网机器,最好配置内网镜像仓库。同时需修改 config.py 中的镜像拉取策略(IMAGE_PULL_POLICY 改为 IfNotPresent),并更新到 k8s 集群。
Q: 配置文件在哪里?如何修改并在生产上生效?
配置文件位于 install/docker/config.py(本地开发)和 install/kubernetes/cube/overlays/config/config.py(线上配置)。线上也可以直接修改 infra 命名空间下的 kubeflow-dashboard-config 这个 configmap。
已核实:
install/kubernetes/cube/overlays/config/config.py存在;configmap 名kubeflow-dashboard-config(install/kubernetes/cube/overlays/kustomization.yml:6),在infra命名空间。
Q: 本地部署,项目配置的 expand 字段里公网 ip 和内网 ip 指哪个?
配置一个内网 ip 就行;有公网 ip 或域名的才配置公网 ip。
Q: 平台有资源审核模块吗?
目前平台限制普通用户最高可配置 50 核 CPU、100G 内存、8 卡 GPU(MAX_TASK_CPU=50 / MAX_TASK_MEM=100(单位 G)/ MAX_TASK_GPU=8,见 myapp/config.py:1126-1128),更高配置只有管理员可设置,但并没有单独的资源审核模块。
八、数据与存储
Q: CubeStudio 是否提供共享存储功能(包括前端页面展示)?
CubeStudio 依赖分布式存储,但并没有提供分布式存储的管理能力。
Q: juicefs 需要其他的文件存储吗?
juicefs 本身就是分布式存储文件,不需要更底层的分布式存储了。
Q: k8s 集群里删不掉 PVC?
PVC 删不掉一般是因为有 pod 挂载该 pvc,需要先找到对应 pod,删除 pod 后才能删除 pvc。
九、账号与认证
Q: 登录失败
如果能打开页面但登录失败,可点右上角退出按钮重新进入登录界面。系统默认自动注册新用户,自带账户密码 admin/admin。忘记密码可联系管理员修改或进入数据库修改。
Q: 安装完 pod 都正常,但登录 web 提示 Internal Server Error?
右上角退出后重新登录试试。
Q: 如何去掉登录验证?
无法去除登录验证。很多界面都要验证用户后才能获取数据,去掉验证这些界面将无法正常访问。
Q: 用户认证系统支持哪些?
现在 CubeStudio 支持 AUTH_OID / AUTH_LDAP / AUTH_REMOTE_USER 等登录注册方式。
Q: 有认证/多用户/用户空间这些功能吗?
有。
Q: 目前支持多租户吗?
支持多租户、多项目组、RBAC 权限划分。
Q: 体验账户和密码在哪里获取? / 体验账号是什么?
体验账户密码为 admin/admin。
十、监控与资源排查
Q: 没有运行的作业,但 cpu 居高不下,如何释放资源?
不确定是什么任务占用资源时,可先在 k8s dashboard 进入主机界面,看主机上有什么 pod;或在 prometheus 上查看所有 pod 的 cpu/内存/gpu 资源。如果没发现 pod,再到机器上查看什么进程占用资源。
Q: Grafana 模块监控异常
- 打不开 grafana 页面:先排查
monitoring命名空间下 grafana pod 是否正常,浏览器是否为 http 协议。 - 能打开但页面显示不正常:强制刷新浏览器、清空缓存。
- 页面正常但指标查询异常:看 prometheus pod 是否正常,进入 prometheus 页面手动查询指标,确认指标是否被正常采集,以及 rule、service discovery、target 等是否正常。
Q: 一主三从,前端页面当前负载只显示一台机器?
负载界面显示的机器与机器标签有关,需要按项目分组和功能分类配置好机器的 label 标签。
十一、架构与技术栈
Q: CubeStudio 是基于 kubeflow 开发的吗?
CubeStudio 和 kubeflow 生态目前没有太多关系,最开始基于 kubeflow 开发,现在只使用了 kubeflow 的 train-operator。
Q: CubeStudio 项目有用到 go 吗?
CubeStudio 自己的代码前端是 react、后端是 python,没有 go 代码;但依赖的相关组件(k8s 基础组件)是用 go 写的开源组件。
Q: argo 中的数据存到 etcd 吗?etcd 存储有限制吗?
argo 是云原生调度系统,定义 workflow 等 crd,crd 实例存储在 etcd 中。etcd 的存储限制属于 k8s 基础架构范畴,不在 CubeStudio 的技术范围内。
Q: pipeline 用的原生 kfp 吗?
pipeline 目前与 kfp 没有关系。
Q: pipeline 调度底层用的是什么?
训练 pipeline 的底层调度是 argo;数据 etl 的 pipeline 没有定义底层调度,需要用户二开对接自己公司的调度系统。
Q: CubeStudio 和 KubeSphere 是什么关系?多租户/资源管理是自己做的还是依赖 KubeSphere?
CubeStudio 的账号密码是自己的一套;kubesphere/rancher 是容器编排产品,有自己独立的账号密码,与 CubeStudio 的账号体系无关。
十二、商业版、社区与通用咨询
Q: 二次开发
二次开发需要进一步学习源码,或购买商业版二开咨询服务。
Q: 定制化二次开发是腾讯的人吗?能驻场开发吗?
定制化二次开发不是腾讯的人,是由社区开发者组成,详细情况可联系社区管理员栾鹏。
Q: 商业版和开源版的主要区别是什么? / 商业版定价多少? / 报价是按项目收费吗?
可联系社区管理员。项目报价收费比较灵活。
Q: demo 演示环境的问题,有公共体验环境吗?
社区用 docker-compose 部署了开源版 demo 体验环境 www.data-master.net,但因为没有 k8s 集群,公共体验环境中与 k8s 相关的功能无法正常体验。想体验完整开源版或商业版功能可联系管理员。
Q: CubeStudio 社区见面会
目前还没有定时的社区见面会,可随时关注群里消息。
Q: 全部功能支持私有化部署吗?
目前所有功能均支持私有化部署。
Q: 哪个版本支持数据血缘?
目前只有商业版支持血缘链路。
Q: 是否考虑把 HPC 场景加进来?
目前只有商业版支持 HPC 的任务模板。
Q: 对 AIGC 大模型训练与推理(SFT/Megatron/Deepspeed/prompt 等)有支持计划吗?
目前商业版支持大模型的一键微调、多机多卡训练和服务部署。
Q: Wiki 上的公司使用的是开源版还是商业版?
github 中的公司示例是部署开源版本的公司示例。
Q: github 和 gitee 上的文档版本有什么差异?
看 github,维护更好。
Q: CubeStudio 用的什么开源协议?
MIT。
Q: 哪里有详细教程或 wiki 文档地址?
github 上有 wiki 文档:https://github.com/data-infra/cube-studio/wiki 。