【免费下载】 Cube Studio 项目内网离线部署完全指南

Cube Studio 项目内网离线部署完全指南

【免费下载链接】cube-studio cube studio开源云原生一站式机器学习/深度学习/大模型AI平台,支持sso登录,大数据平台对接,notebook在线开发,拖拉拽任务流pipeline编排,多机多卡分布式训练,超参搜索,推理服务VGPU,边缘计算,标注平台,自动化标注,大模型微调,vllm大模型推理,llmops,私有知识库,AI模型应用商店,支持模型一键开发/推理/微调,支持国产cpu/gpu/npu芯片,支持RDMA,支持pytorch/tf/mxnet/deepspeed/paddle/colossalai/horovod/spark/ray/volcano分布式,deepseek微调推理 【免费下载链接】cube-studio 项目地址: https://gitcode.com/gh_mirrors/cub/cube-studio

前言

在企业级AI开发环境中,出于安全和合规考虑,很多生产环境都是完全隔离的内网环境。本文将详细介绍如何在完全无外网连接的内网环境中部署Cube Studio项目,以及在内网中存在部分联网机器时的混合部署方案。

一、准备工作

1.1 基础环境要求

在开始部署前,请确保内网机器已安装以下组件:

  • Docker:容器运行时环境
  • Docker Compose:容器编排工具
  • iptables:网络流量控制工具

1.2 离线资源准备

在外网机器上执行以下步骤准备离线资源包:

mkdir offline
cd offline
# 下载基础工具
wget https://cube-studio.oss-cn-hangzhou.aliyuncs.com/install/kubectl
wget https://githubfast.com/goharbor/harbor/releases/download/v2.11.1/harbor-offline-installer-v2.11.1.tgz

# 下载预训练模型
wget https://cube-studio.oss-cn-hangzhou.aliyuncs.com/inference/resnet50.onnx
wget https://cube-studio.oss-cn-hangzhou.aliyuncs.com/inference/resnet50-torchscript.pt
wget https://cube-studio.oss-cn-hangzhou.aliyuncs.com/inference/resnet50.mar
wget https://cube-studio.oss-cn-hangzhou.aliyuncs.com/inference/tf-mnist.tar.gz
wget https://cube-studio.oss-cn-hangzhou.aliyuncs.com/inference/decisionTree_model.pkl

# 下载训练数据集
wget https://cube-studio.oss-cn-hangzhou.aliyuncs.com/pipeline/coco.zip
wget https://docker-76009.sz.gfp.tencent-cloud.com/github/cube-studio/aihub/deeplearning/cv-tinynas-object-detection-damoyolo/dataset/coco2014.zip

将准备好的offline目录完整拷贝到内网机器上。

二、内网环境基础配置

2.1 安装kubectl工具

在内网机器上安装kubectl:

cd offline
chmod +x kubectl && cp kubectl /usr/bin/ && cp kubectl /usr/local/bin/

2.2 部署内网镜像仓库

  1. 安装Harbor作为内网私有镜像仓库
  2. 创建cube-studio和rancher两个项目,分别用于存储相关镜像
  3. 在所有机器上配置Docker信任该私有仓库(非HTTPS需要额外配置)

2.3 数据目录准备

将离线资源转移到工作目录:

cp -r offline /data/k8s/kubeflow/pipeline/workspace/admin/

三、镜像迁移方案

3.1 Rancher镜像迁移

有两种方式将Rancher镜像迁移到内网:

方式一:直接推送至内网仓库

  1. 修改all_image.py中的仓库地址
  2. 在外网机器执行pull_rancher_images.sh推送镜像

方式二:离线文件传输

  1. 在外网机器执行rancher_image_save.sh打包镜像
  2. 将打包文件传输到内网
  3. 在内网执行rancher_image_load.sh导入镜像

3.2 Cube Studio基础镜像迁移

同样有两种迁移方式:

方式一:直接推送

  1. 修改all_image.py中的仓库地址
  2. 在外网执行push_harbor.sh推送镜像

方式二:离线文件传输

  1. 在外网执行image_save.sh打包镜像
  2. 传输到内网后执行image_load.sh导入

四、构建内网专用Cube Studio镜像

4.1 修改镜像配置

在install/kubernetes目录下执行Python脚本替换镜像地址:

cube_repo='<内网镜像仓库ip>:<内网镜像仓库端口>/cube-studio/'
import os
def fix_file(file_path):
    # 实现文件内容替换
    ...
    
fix_file('cube/overlays/config/config.py')
fix_file('../../myapp/init')
fix_file('../../myapp/init-en')

4.2 构建前后端镜像

cube_repo='<内网镜像仓库ip>:<内网镜像仓库端口>/cube-studio/'
# 构建前端镜像
docker build --network=host -t ${cube_repo}kubeflow-dashboard-frontend:offline -f install/docker/dockerFrontend/Dockerfile .
docker push ${cube_repo}kubeflow-dashboard-frontend:offline

# 构建后端镜像
docker build --network=host -t ${cube_repo}kubeflow-dashboard:offline --build-arg TARGETARCH=amd64 -f install/docker/Dockerfile .
docker push ${cube_repo}kubeflow-dashboard:offline

五、内网部署Cube Studio

5.1 修改部署脚本

  1. 修改init_node.sh中的pull_images.sh为pull_harbor.sh
  2. 注释掉start.sh中的kubectl下载部分
  3. 修改cube/overlays/kustomization.yml中的镜像地址

5.2 执行部署

按照标准部署流程进行部署,但使用内网镜像仓库中的镜像。

六、内网环境特殊配置

6.1 Web界面配置

  1. 修改hubsecret为内网仓库的认证信息
  2. 更新配置文件中的仓库地址和IP信息
  3. 修改内置pipeline中的数据获取命令为本地拷贝

6.2 推理服务调整

将推理服务启动命令中的在线下载改为从本地目录拷贝:

# 原命令
wget https://xxxx/xx/.zip
# 修改为
cp /mnt/admin/offline/xx.zip ./

七、混合网络环境部署方案

对于内网中存在部分可联网机器的情况,可采用中转方案。

7.1 设置中转服务器

在可联网机器上部署Nginx中转:

docker run --name proxy-repo -d --restart=always --network=host \
  -v $PWD/nginx-https/apt-yum-pip-source.conf:/etc/nginx/nginx.conf nginx

7.2 配置内网机器Host

在内网机器上配置Host指向中转服务器:

<中转服务器IP>    mirrors.aliyun.com
<中转服务器IP>    registry-1.docker.io
...

7.3 Kubernetes DNS配置

修改CoreDNS配置,添加域名解析:

hosts {
    <中转服务器IP>    mirrors.aliyun.com
    <中转服务器IP>    registry-1.docker.io
    ...
    fallthrough
}

7.4 容器内软件源配置

配置容器内的软件源使用中转:

pip源配置

pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple

apt源配置(Ubuntu 20.04示例):

deb https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
...

总结

本文详细介绍了Cube Studio项目在内网环境中的完整部署方案,包括完全离线环境和混合网络环境两种场景。通过合理的镜像迁移、配置调整和中转设置,可以在严格的内网环境中成功部署Cube Studio,为企业的AI开发提供安全可靠的平台支持。

【免费下载链接】cube-studio cube studio开源云原生一站式机器学习/深度学习/大模型AI平台,支持sso登录,大数据平台对接,notebook在线开发,拖拉拽任务流pipeline编排,多机多卡分布式训练,超参搜索,推理服务VGPU,边缘计算,标注平台,自动化标注,大模型微调,vllm大模型推理,llmops,私有知识库,AI模型应用商店,支持模型一键开发/推理/微调,支持国产cpu/gpu/npu芯片,支持RDMA,支持pytorch/tf/mxnet/deepspeed/paddle/colossalai/horovod/spark/ray/volcano分布式,deepseek微调推理 【免费下载链接】cube-studio 项目地址: https://gitcode.com/gh_mirrors/cub/cube-studio

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值