安装 JobSet

本页面介绍如何通过 Operator Hub 在 Alauda Container Platform 上安装 Alauda Build of JobSet。JobSet 以基于 Helm 的 operator 形式提供:从 Operator Hub 安装后会部署 jobset-operator controller;随后创建 JobSetOperatorCtl 实例会部署 JobSet controller 和 webhook,用于协调 JobSet 自定义资源。

上架软件包

下载 JobSet Operator 软件包,然后按照 上架软件包 中的说明上传该软件包。

安装 operator

管理员 视图中:

  1. 转到 Marketplace / Operator Hub
  2. 选择目标集群。
  3. 搜索 Alauda Build of JobSet(Marketplace 中的软件包名称为 jobset-operator)。
  4. 单击 Install
  5. 保持默认安装设置。operator 默认安装到 jobset-system 命名空间。
  6. 完成安装。

确认 operator controller 正在运行:

kubectl get pods -n jobset-system

jobset-operator pod 应处于 Running 状态,例如:

NAME                              READY   STATUS    RESTARTS   AGE
jobset-operator-xxxxxxxxxx-xxxxx  1/1     Running   0          1m

创建 JobSetOperatorCtl 实例

仅安装 operator 并不会部署 JobSet controller——operator 只会协调 JobSetOperatorCtl 资源,并且只有在该资源存在时才会部署 JobSet controller 和 webhook。

将以下内容保存为 jobsetoperatorctl.yaml

apiVersion: jobset-operator.alauda.io/v1
kind: JobSetOperatorCtl
metadata:
  name: jobset
  namespace: jobset-system
spec:
  controller:
    replicas: 1
    leaderElection:
      enable: true
  certManager:
    enable: true
  prometheus:
    enable: false

应用该文件:

kubectl apply -f jobsetoperatorctl.yaml

在 operator 协调该资源后,JobSet controller pod 会部署到同一个命名空间中:

kubectl get pods -n jobset-system

预期输出如下(operator pod 和 JobSet controller pod 并排显示):

NAME                                READY   STATUS    RESTARTS   AGE
jobset-operator-xxxxxxxxxx-xxxxx    1/1     Running   0          5m
jobset-controller-xxxxxxxxxx-xxxxx  1/1     Running   0          1m

JobSet CRD 由 operator 注册,可通过以下命令进行验证:

kubectl get crd jobsets.jobset.x-k8s.io

后续步骤

当 JobSet controller 运行后,即可提交 JobSet 自定义资源来运行分布式 AI/ML 和 HPC 工作负载。

继续阅读 快速开始,运行一个简单的 JobSet 演示。