跳到主要内容

一键部署

1. 开始部署

以下命令用于快速部署 CSGHub 及所有依赖组件,根据服务器网络环境选择对应命令,执行后将自动完成全流程部署,无需手动干预。

curl -sfL http://quick-install.opencsg.com | bash -s -- --domain csghub.example.com

国内环境(无公网或访问境外资源较慢)建议使用如下命令,将自动启用国内镜像加速,提升部署效率:

curl -sfL http://quick-install.opencsg.com | bash -s -- --domain csghub.example.com --install-cn

2. 部署说明

一键部署脚本将自动完成以下所有操作,无需手动配置,全程自动化执行:

  • 安装 K3s Kubernetes 集群,搭建轻量、高效的容器运行环境,为 CSGHub 提供运行基础
  • 配置 NFS 共享存储(RWX 动态 PV),解决多 Pod 共享数据的需求,保障存储稳定性
  • 安装 NVIDIA 容器运行时,为后续 GPU 支持做好环境准备(未启用 GPU 时不影响部署)
  • 安装 CSGHub 依赖的 CRD(自定义资源定义),确保应用组件正常联动
  • 部署 CSGHub 企业版,完成应用核心组件的安装与配置
  • 初始化数据库资源,配置应用所需的数据库环境,确保数据正常存储与访问
  • 配置私有镜像仓库,保障应用镜像的正常拉取与更新
  • 配置 K3s 私有仓库认证,解决私有镜像拉取的权限问题
  • 重启 K3s 使所有配置生效,确保集群与应用正常联动
  • 配置本地域名解析,方便通过自定义域名访问 CSGHub 应用

3. 更多安装示例

根据实际业务需求,可在部署命令中添加对应参数,实现个性化部署,以下为常用场景示例:

3.1 启用 GPU 支持

若服务器配备 NVIDIA 显卡,需启用 GPU 支持以满足模型训练、推理等高性能需求,执行以下命令:

curl -sfL http://quick-install.opencsg.com | bash -s -- --domain csghub.example.com --enable-gpu

说明:

  • 自动安装 NVIDIA 驱动依赖和容器运行时配置,无需手动安装驱动
  • 启动 nvidia-device-plugin 插件,实现 Kubernetes 集群对 GPU 资源的管理与调度
  • 自动标记节点 GPU 能力标签,让 CSGHub 应用能够识别并调用 GPU 资源

3.2 启用 CSGShip

CSGShip 用于实现镜像管理、容器调度等扩展功能,需启用该功能时执行以下命令:

curl -sfL http://quick-install.opencsg.com | bash -s -- --domain csghub.example.com --extra-args "--set csgship.enabled='true'"

3.3 通过 NodePort 暴露服务

默认部署后服务暴露方式可根据集群环境调整,需通过 NodePort 方式暴露服务时,执行以下命令:

curl -sfL http://quick-install.opencsg.com | bash -s -- --domain csghub.example.com --extra-args "--set global.gateway.service.type=='NodePort'"

4. 状态验证

部署完成后,可通过以下命令验证部署状态,确认应用及相关组件正常运行:

4.1 检查安装状态

执行以下命令,查看集群、Pod、服务等核心资源的运行状态,确保无异常:

kubectl get nodes
kubectl get pods -A
kubectl get svc -n csghub
kubectl get gc
kubectl get gtw -n csghub
kubectl get httproutes -n csghub

4.2 查看安装日志

部署过程中所有操作日志会记录在 quick-install.log 文件中,若部署出现异常,可查看日志排查问题:

cat ./quick-install.log

4.3 查看访问信息

部署完成后,访问所需的关键信息会自动生成在 login.txt 文件中,执行以下命令查看:

cat ./login.txt

文件内容包括:

  • CSGHUB 登录地址:用于通过浏览器访问 CSGHub 管理界面
  • 管理员账户与密码:默认管理员账号信息,用于首次登录系统
  • 关键服务端点:应用核心服务的访问地址,便于后续维护与调试

5. 实例升级

CSGHub 支持一键升级,升级命令与安装命令完全一致,脚本将自动检测当前版本,并升级至最新稳定版本。目前暂不支持指定版本安装,升级后将覆盖当前应用配置(数据不会丢失)。

6. 常见问题

部署过程中若出现异常,可参考以下解决方案排查处理:

6.1 脚本执行失败

若直接通过管道执行脚本失败,可先下载脚本至本地,再执行部署,便于排查具体错误:

curl -sfL http://quick-install.opencsg.com -o quick-install.sh
bash quick-install.sh --domain csghub.example.com

6.2 域名无法解析

若部署后无法通过自定义域名访问 CSGHub,可手动添加本地域名解析,临时解决访问问题:

echo "$(hostname -I | awk '{print $1}') csghub.example.com" >> /etc/hosts

6.3 端口冲突

部署过程中若提示端口冲突,可先查看当前端口占用情况,排查冲突端口并释放:

netstat -tulpn | grep :22

6.4 Error on line 138: Command [bash -c "$cmd"]

若脚本执行过程中提示以上报错,并伴有 [WARN] Retry 相关日志,无需手动干预,程序会自动重试失败的命令,耐心等待重试完成即可。