在 Kubernetes 集群中安装 Xinference#

基于原生 Helm 的方式#

Xinference 提供基于原生 Helm 在 Kubernetes 集群中安装的方式。

准备条件#

  • 一个可用的 Kubernetes 集群。

  • 在 Kubernetes 中开启 GPU 支持,参考 这里

  • 正确安装 Helm

具体步骤#

  1. 新增 Xinference Helm 仓库

    helm repo add xinference https://xorbitsai.github.io/xinference-helm-charts
    
  2. 更新仓库索引,查询可安装版本

    helm repo update xinference
    helm search repo xinference/xinference --devel --versions
    
  3. 安装

    helm install xinference xinference/xinference -n xinference --version <helm_charts_version>
    

自定义安装#

上述安装方式安装了一个类似单机的 Xinference ,也就是只有一个节点,同时其他启动参数均保持默认。

下面展示了一些常见的自定义安装配置。

  1. 我需要从 ModelScope 下载模型。

    helm install xinference xinference/xinference -n xinference --version <helm_charts_version> --set config.model_src="modelscope"
    
  2. 我想使用 cpu 版本的 Xinference 镜像(或者其他版本的镜像)。

    helm install xinference xinference/xinference -n xinference --version <helm_charts_version> --set config.xinference_image="<xinference_docker_image>"
    
  3. 我需要启动 4 个 Xinference worker 节点,每个 worker 管理 4 个 GPU。

    helm install xinference xinference/xinference -n xinference --version <helm_charts_version> --set config.worker_num=4 --set config.gpu_per_worker="4"
    

上面的安装方式基于 Helm --set 选项。对于更加复杂的自定义安装场景,例如多个 worker 共享存储,非常推荐使用你自己的 values.yaml 文件,然后通过 Helm -f 选项进行安装。

The default values.yaml file is located here. Some examples can be found here.

基于第三方 KubeBlocks 的方式#

你也可以通过第三方的 KubeBlocks 来在 K8s 集群中安装 Xinference 。这种方式不是 Xinference 官方维护的,因此无法严格保证实时更新和可用性。请参考 文档