跳转至

离线升级大模型服务平台

本页说明下载大模型服务平台模块后,应该如何安装或升级。

Info

下述命令或脚本内出现的 hydra 字样是大模型服务平台模块的内部开发代号。

解压下载的包得到 bundle 包

tar -xvf hydra_v0.9.0_amd64.tar

解压后可得到 hydra、 hydra-agent、web-search-agent 对应 3 个 bundle.tar 包

$ ll hydra_v0.9.0_amd64
-rw-r--r--@ 1 nicole  staff    72M Sep 12 12:05 hydra_v0.9.0.bundle.tar
-rw-r--r--@ 1 nicole  staff   502M Sep 12 12:05 hydra-agent_v0.9.0.bundle.tar
-rw-r--r--@ 1 nicole  staff   105M Sep 12 12:05 web-search-agent_v0.9.0.bundle.tar

从安装包中加载镜像

您可以根据下面两种方式之一加载镜像,当环境中存在镜像仓库时,建议选择 chart-syncer 同步镜像到镜像仓库,该方法更加高效便捷。

chart-syncer 同步镜像到镜像仓库

  1. 创建 load-image.yaml

    Note

    该 YAML 文件中的各项参数均为必填项。您需要一个私有的镜像仓库,并修改相关配置。

    若当前环境已安装 chart repo,chart-syncer 也支持将 chart 导出为 tgz 文件。

    load-image.yaml
    source:
      intermediateBundlesPath: hydra-offline # (1)!
    target:
      containerRegistry: 10.16.10.111 # (2)!
      containerRepository: release.daocloud.io/hydra # (3)1
      repo:
        kind: HARBOR # (4)!
        url: http://10.16.10.111/chartrepo/release.daocloud.io # (5)!
        auth:
          username: "admin" # (6)!
          password: "Harbor12345" # (7)!
      containers:
        auth:
          username: "admin" # (8)!
          password: "Harbor12345" # (9)!
    
    1. 到执行 charts-syncer 命令的相对路径,而不是此 YAML 文件和离线包之间的相对路径
    2. 需更改为你的镜像仓库 url
    3. 需更改为你的镜像仓库
    4. 也可以是任何其他支持的 Helm Chart 仓库类别
    5. 需更改为 chart repo url
    6. 你的镜像仓库用户名
    7. 你的镜像仓库密码
    8. 你的镜像仓库用户名
    9. 你的镜像仓库密码

    若当前环境未安装 chart repo,chart-syncer 也支持将 chart 导出为 tgz 文件,并存放在指定路径。

    load-image.yaml
    source:
      intermediateBundlesPath: hydra-offline # (1)!
    target:
      containerRegistry: 10.16.10.111 # (2)!
      containerRepository: release.daocloud.io/hydra # (3)!
      repo:
        kind: LOCAL
        path: ./local-repo # (4)!
      containers:
        auth:
          username: "admin" # (5)!
          password: "Harbor12345" # (6)!
    
    1. 到执行 charts-syncer 命令的相对路径,而不是此 YAML 文件和离线包之间的相对路径
    2. 需更改为你的镜像仓库 url
    3. 需更改为你的镜像仓库
    4. chart 本地路径
    5. 你的镜像仓库用户名
    6. 你的镜像仓库密码
  2. 执行同步镜像命令。

    charts-syncer sync --config load-image.yaml
    

Docker 或 containerd 直接加载

解压并加载镜像文件。

  1. 解压 tar 压缩包。

    tar xvf hydra.bundle.tar
    

    解压成功后会得到 3 个文件:

    • hints.yaml
    • images.tar
    • original-chart
  2. 从本地加载镜像到 Docker 或 containerd。

    docker load -i images.tar
    
    ctr -n k8s.io image import images.tar
    

Note

每个 node 都需要做 Docker 或 containerd 加载镜像操作, 加载完成后需要 tag 镜像,保持 Registry、Repository 与安装时一致。

升级

升级前注意预先备份网格的配置文件,也就是 --set 参数,避免升级时配置丢失导致的问题。

检查本地是否存在 hydra-release 仓库

helm repo list | grep hydra-release

若返回结果为空或如下提示,则进行下一步;反之则跳过下一步,直接进行更新即可。

Error: no repositories to show

添加 helm 仓库

helm repo add hydra-release http://{harbor_url}/chartrepo/{project}

更新大模型服务平台的 helm 仓库。

helm repo update hydra-release

选择您想安装的大模型服务平台版本(建议安装最新版本)。

# 更新 hydra-release 仓库内的镜像版本
helm update repo

# 获取最新大模型服务平台的版本
helm search repo hydra-release/hydra --versions

# 工作集群大模型服务平台组件
helm search repo hydra-release/hydra-agent --versions

# 工作集群可选支持网页搜索组件
helm search repo hydra-release/web-search-agent --versions
NAME                        CHART VERSION   APP VERSION DESCRIPTION
hydra-release/hydra         v0.9.0          v0.9.0      A Helm chart for Kubernetes
...

备份 --set 参数

在升级大模型服务平台版本之前,建议您执行如下命令,备份老版本的 --set 参数。

helm get values hydra -n hydra-system -o yaml > bak.yaml

执行 helm upgrade

升级前建议您覆盖 bak.yaml 中的 global.imageRegistry 字段为当前使用的镜像仓库地址。

export imageRegistry={YOUR_IMAGE_REGISTRY}
helm upgrade hydra hydra-release/hydra \
    -n hydra-system \
    -f ./bak.yaml \
    --set global.imageRegistry=$imageRegistry \
    --version v0.9.0

评论