安装
开始之前
确保满足以下条件:
- 运行版本为 1.29 或更新的 Kubernetes 集群。了解如何安装 Kubernetes 工具。
 - kubectl 命令行工具已与你的集群通信。
 
Kueue 发布指标以监控其控制器组件。 你可以使用 Prometheus 采集这些指标。 如果你没有自己的监控系统,请使用 kube-prometheus。
Kueue 中的 Webhook 服务使用内部证书管理来配置证书。如果你想使用第三方证书,例如 cert-manager,请遵循证书管理指南。
安装正式版本
通过 kubectl 安装
要通过 kubectl 在集群中安装已发布的 Kueue 版本,请运行以下命令:
kubectl apply --server-side -f https://github.com/kubernetes-sigs/kueue/releases/download/v0.14.3/manifests.yaml
要等待 Kueue 完全可用,请运行:
kubectl wait deploy/kueue-controller-manager -nkueue-system --for=condition=available --timeout=5m
通过 Helm 安装
要通过 Helm 在集群中安装已发布的 Kueue 版本,请运行以下命令:
helm install kueue oci://registry.k8s.io/kueue/charts/kueue \
  --version=0.14.3 \
  --namespace  kueue-system \
  --create-namespace \
  --wait --timeout 300s
你还可以使用以下命令:
helm install kueue https://github.com/kubernetes-sigs/kueue/releases/download/v0.14.3/kueue-0.14.3.tgz \
  --namespace kueue-system \
  --create-namespace \
  --wait --timeout 300s
为 Prometheus-Operator 添加指标采集
要允许 prometheus-operator 从 Kueue 组件中采集指标,请运行以下命令:
kubectl apply --server-side -f https://github.com/kubernetes-sigs/kueue/releases/download/v0.14.3/prometheus.yaml
为可见性 API 添加 API 优先级和公平性配置
有关更多详细信息,请参阅配置 API 优先级和公平性。
卸载
要通过 kubectl 从集群中卸载已发布的 Kueue 版本,请运行以下命令:
kubectl delete -f https://github.com/kubernetes-sigs/kueue/releases/download/v0.14.3/manifests.yaml
要通过 Helm 从集群中卸载已发布的 Kueue 版本,请运行以下命令:
helm uninstall kueue --namespace kueue-system
安装自定义配置的正式版本
要安装自定义配置的已发布版本的 Kueue,请执行以下步骤:
- 下载发布的 
manifests.yaml文件: 
wget https://github.com/kubernetes-sigs/kueue/releases/download/v0.14.3/manifests.yaml
- 使用你喜欢的编辑器打开 
manifests.yaml。 - 在 
kueue-manager-configConfigMap 清单中,编辑controller_manager_config.yaml数据条目。该条目代表默认的 KueueConfiguration。 ConfigMap 的内容类似于以下内容: 
apiVersion: v1
kind: ConfigMap
metadata:
  name: kueue-manager-config
  namespace: kueue-system
data:
  controller_manager_config.yaml: |
    apiVersion: config.kueue.x-k8s.io/v1beta2
    kind: Configuration
    namespace: kueue-system
    health:
      healthProbeBindAddress: :8081
    metrics:
      bindAddress: :8443
      # enableClusterQueueResources: true
    webhook:
      port: 9443
    manageJobsWithoutQueueName: true
    internalCertManagement:
      enable: true
      webhookServiceName: kueue-webhook-service
      webhookSecretName: kueue-webhook-server-cert
    waitForPodsReady:
      enable: true
      timeout: 10m
    integrations:
      frameworks:
      - "batch/job"
integrations.externalFrameworks 字段在 Kueue v0.7.0 及更高版本中可用。
Note
某些 Kubernetes 发行版可能会使用 batch/jobs 执行维护操作。 对于这些发行版,将manageJobsWithoutQueueName 设置为 true 而不禁用
batch/job 集成可能会阻止系统创建的作业执行。
- 将自定义清单应用于集群:
 
kubectl apply --server-side -f manifests.yaml
安装最新开发版本
要安装最新开发版本的 Kueue,请运行以下命令:
kubectl apply --server-side -k "github.com/kubernetes-sigs/kueue/config/default?ref=main"
控制器在 kueue-system 命名空间中运行。
卸载
要卸载 Kueue,请运行以下命令:
kubectl delete -k "github.com/kubernetes-sigs/kueue/config/default?ref=main"
从源代码构建和安装
要从源代码构建 Kueue 并将其安装在你的集群中,请运行以下命令:
git clone https://github.com/kubernetes-sigs/kueue.git
cd kueue
IMAGE_REGISTRY=registry.example.com/my-user make image-local-push deploy
为 Prometheus-Operator 添加指标采集
要允许 prometheus-operator 从 Kueue 组件中采集指标,请运行以下命令:
make prometheus
卸载
要卸载 Kueue,请运行以下命令:
make undeploy
通过 Helm 安装
更改特性门控配置
Kueue 使用类似于 Kubernetes 特性门控 中描述的机制来配置功能。
为了更改功能的默认值,你需要编辑 kueue 安装命名空间中的 kueue-controller-manager 部署,
并更改 manager 容器参数以包括
--feature-gates=...,<FeatureName>=<true|false>
例如,要启用 PartialAdmission,你应该按如下方式更改管理器部署:
kind: Deployment
...
spec:
  ...
  template:
    ...
    spec:
      containers:
      - name: manager
        args:
        - --config=/controller_manager_config.yaml
        - --zap-log-level=2
+       - --feature-gates=PartialAdmission=true
Alpha 和 Beta 级别特性的特性门控
| 功能 | 默认值 | 阶段 | 起始版本 | 截止版本 | 
|---|---|---|---|---|
FlavorFungibility | 
          true | 
          Beta | 0.5 | |
MultiKueue | 
          false | 
          Alpha | 0.6 | 0.8 | 
MultiKueue | 
          true | 
          Beta | 0.9 | |
MultiKueueBatchJobWithManagedBy | 
          false | 
          Alpha | 0.8 | |
PartialAdmission | 
          false | 
          Alpha | 0.4 | 0.4 | 
PartialAdmission | 
          true | 
          Beta | 0.5 | |
VisibilityOnDemand | 
          false | 
          Alpha | 0.6 | 0.8 | 
VisibilityOnDemand | 
          true | 
          Beta | 0.9 | |
PrioritySortingWithinCohort | 
          true | 
          Beta | 0.6 | |
LendingLimit | 
          false | 
          Alpha | 0.6 | 0.8 | 
LendingLimit | 
          true | 
          Beta | 0.9 | |
TopologyAwareScheduling | 
          false | 
          Alpha | 0.9 | |
LocalQueueDefaulting | 
          false | 
          Alpha | 0.10 | 0.11 | 
LocalQueueDefaulting | 
          true | 
          Beta | 0.12 | |
LocalQueueMetrics | 
          false | 
          Alpha | 0.10 | |
HierarchicalCohort | 
          true | 
          Beta | 0.11 | |
ObjectRetentionPolicies | 
          false | 
          Alpha | 0.12 | 0.12 | 
ObjectRetentionPolicies | 
          true | 
          Beta | 0.13 | |
TASFailedNodeReplacement | 
          false | 
          Alpha | 0.12 | |
AdmissionFairSharing | 
          false | 
          Alpha | 0.12 | |
TASFailedNodeReplacementFailFast | 
          false | 
          Alpha | 0.12 | |
TASReplaceNodeOnPodTermination | 
          false | 
          Alpha | 0.13 | |
ElasticJobsViaWorkloadSlices | 
          false | 
          Alpha | 0.13 | |
ManagedJobsNamespaceSelectorAlwaysRespected | 
          false | 
          Alpha | 0.13 | |
FlavorFungibilityImplicitPreferenceDefault | 
          false | 
          Alpha | 0.13 | |
WorkloadRequestUseMergePatch | 
          false | 
          Alpha | 0.14 | |
SanitizePodSets | 
          true | 
          Beta | 0.13 | |
MultiKueueAllowInsecureKubeconfigs | 
          false | 
          Alpha | 0.15 | 
已毕业或已弃用特性的特性门控
| 功能 | 默认值 | 阶段 | 起始版本 | 截止版本 | 
|---|---|---|---|---|
ManagedJobsNamespaceSelector | 
          true | 
          Beta | 0.10 | 0.13 | 
ManagedJobsNamespaceSelector | 
          true | 
          GA | 0.13 | |
ProvisioningACC | 
          false | 
          Alpha | 0.5 | 0.6 | 
ProvisioningACC | 
          true | 
          Beta | 0.7 | |
ProvisioningACC | 
          true | 
          GA | 0.14 | |
ConfigurableResourceTransformations | 
          false | 
          Alpha | 0.9 | 0.9 | 
ConfigurableResourceTransformations | 
          true | 
          Beta | 0.10 | 0.13 | 
ConfigurableResourceTransformations | 
          true | 
          GA | 0.14 | |
TASProfileMostFreeCapacity | 
          false | 
          Deprecated | 0.11 | 0.13 | 
TASProfileLeastFreeCapacity | 
          false | 
          Deprecated | 0.11 | |
TASProfileMixed | 
          false | 
          Deprecated | 0.11 | 
接下来是什么
反馈
这个页面有帮助吗?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.