1. 版本申明

版本 修改内容 修改时间
v1.0 初始化 5/12/2022
v1.1 新增二次开发说明 5/22/2023
v1.2 更新组件文档说明 6/25/2023
v1.3 更新组件说明 7/03/2023
v1.4 更新一些词语 12/12/2023
v1.5 更新一些格式以及内容 4/8/2024

2. 简介

GCU 是燧原的 AI 计算加速设备,TopsCloud 是基于 GCU 的K8S以及容器化解决方案。TopsCloud 支持 k8s部署和运维,包括enflame-container-toolkit,k8s-device-plugin,gcu-exporter,gcu-operator等主要组件,其中enflame-container-toolkit与k8s-device-plugin用于支持GCU k8s调度, gcu-exporter是gcu运行数据采集组件,gcu-operator负责部署GCU相关组件。

3. 专有名词解释

名词 描述
TopsCloud 燧原基于GCU的K8S集群化解决方案
enflame-container-toolkit 燧原基于GCU的容器化插件,用于在非特权模式下提供容器内GCU设备的支持
k8s-device-plugin 燧原基于GCU的k8s插件,向k8s集群注册GCU资源
gcu-exporter 燧原GCU的数据采集组件,提供gcu设备运行相关指标的时序数据
gcu-feature-discovery 用于给GCU设备打上标签
node-feature-discovery 用于给服务器设备打上标签
gcu-operator 自定义资源GcuResource用于自动化管理gcu软件

4. 文档使用说明

4.1. k8s-device-plugin使用说明

见《K8S Plugin用户使用手册》。

4.2. enflame-container-toolkit使用说明

见《Container Toolkit用户使用手册》。

4.3. gcu-operater使用说明

见《GCU Operator用户使用手册》。

4.4. gcu-exporter使用说明

见《GCU Exporter用户使用手册》。

4.5. gcu-feature-discovery使用说明

见《GCU Feature Discovery用户使用手册》。

4.6. node-feature-discovery使用说明

见《Node Feature Discovery用户使用手册》。

4.7. 其他组件

其他独立组件见相应的组件文档,确认依赖组件已就绪后,依照用户手册进行安装使用。

5. 二次开发用户使用说明

5.1. 一般用户(内网用户)

见相应的独立组件用户使用手册。

5.2. 需要二次开发的外网用户

除了参考相应的独立组件用户使用手册之外,安装包的Yaml配置文件里涉及容器镜像填写的地方需要用户自我定义以及根据实际使用情况来修改,例如以下yaml文件:

./gcu-feature-discovery/deployments/gcu-feature-discovery-daemonset.yaml:        - image: artifact.enflame.cn/enflame_docker_images/enflame/gcu-gfd:latest
./k8s-operator/gcu-operator_2.0/enflame-resources/exporter/gcu-exporter-ds.yaml:          image: artifact.enflame.cn/enflame_docker_images/enflame/gcu-exporter:default
./k8s-operator/gcu-operator_2.0/enflame-resources/gcushare-scheduler-extender/deployment.yaml:          image: "artifact.enflame.cn/enflame_docker_images/enflame/gcushare-scheduler-extender:default"
./k8s-operator/gcu-operator_2.0/enflame-resources/gcushare-scheduler-extender/daemonset-config.yaml:      - image: "artifact.enflame.cn/enflame_docker_images/enflame/gcushare-config-manager:latest"
./k8s-operator/gcu-operator_2.0/enflame-resources/gcu-feature-discovery/gcu-feature-discovery-ds.yaml:        - image: artifact.enflame.cn/enflame_docker_images/enflame/gcu-gfd:default
./k8s-operator/gcu-operator_2.0/enflame-resources/driver/gcu-driver.yaml:          image: artifact.enflame.cn/enflame_docker_images/enflame/gcu-driver:default
./k8s-operator/gcu-operator_2.0/enflame-resources/node-feature-discovery/nfd-ds.yaml:          image: "artifact.enflame.cn/enflame_docker_images/enflame/node-feature-discovery:v0.11.3"
./k8s-operator/gcu-operator_2.0/enflame-resources/node-feature-discovery/nfd-ds.yaml:          image: "artifact.enflame.cn/enflame_docker_images/enflame/node-feature-discovery:v0.11.3"
./k8s-operator/gcu-operator_2.0/enflame-resources/gcushare-device-plugin/daemonset.yaml:      - image: "artifact.enflame.cn/enflame_docker_images/enflame/gcushare-device-plugin:default"
./k8s-operator/gcu-operator_2.0/enflame-resources/container-toolkit/gcu-docker-plugin.yaml:          image: artifact.enflame.cn/enflame_docker_images/enflame/gcu-runtime:default
./k8s-operator/gcu-operator_2.0/enflame-resources/k8s-device-plugin/enflame-device-plugin.yaml:          image: artifact.enflame.cn/enflame_docker_images/enflame/gcu-plugin:default
./prometheus/gcu-exporter/yaml/gcu-exporter.yaml:          image: artifact.enflame.cn/enflame_docker_images/enflame/gcu-exporter:latest
./prometheus/gcu-exporter/yaml/gcu-exporter-for-arm.yaml:          image: artifact.enflame.cn/enflame_docker_images/enflame/gcu-exporter:latest
./k8s-device-plugin/yaml/enflame-device-plugin.yaml:      - image: artifact.enflame.cn/enflame_docker_images/enflame/k8s-device-plugin:latest
./k8s-device-plugin/yaml/enflame-vdevice-plugin.yaml:      - image: artifact.enflame.cn/enflame_docker_images/enflame/k8s-device-plugin:latest
./k8s-device-plugin/yaml/enflame-device-plugin-compat-with-cpumanager.yaml:      - image: artifact.enflame.cn/enflame_docker_images/enflame/k8s-device-plugin:latest

注:除了以上文件,也需要二次开发用户根据自己的实际使用情况梳理且修改相应的镜像,避免遗漏。