如何在 openshift 中使用带有构建配置的节点选择器?

How do I use a node selector with a build config in openshift?

我正在 运行宁一个大世界跨越 openshift 集群。当我 运行 从 BuildConfig 构建时,它会将构建随机分配给整个集群中的任何节点。这是有问题的,因为许多区域具有更高的延迟,这会大大减慢构建时间和图像上传速度。我在文档中找不到有关在此级别使用节点选择器标签的任何信息。我尝试将 openshift.io/node-selector: dc=mex01 添加到注释中,因为它是用项目级节点选择器完成的,但无济于事。任何帮助都会很棒。谢谢!

项目节点选择器是目前控制构建发生位置的唯一方法。

因为这是第一个出现在 Google 上的问题:

这现在是可能的(显然是因为 1.3):https://docs.openshift.org/latest/dev_guide/builds/advanced_build_operations.html#dev-guide-assigning-builds-to-nodes

为了详细说明 mhutter 的回答,这里是使用节点选择器的示例 yaml 片段:

一个构建配置:

apiVersion: "v1"
kind: "BuildConfig"
metadata:
  name: "sample-build"
spec:
  nodeSelector:
    canbuild: yes

和一个节点:

apiVersion: v1
kind: Node
metadata:
  creationTimestamp: null
  labels:
    beta.kubernetes.io/arch: amd64
    beta.kubernetes.io/os: linux
    kubernetes.io/hostname: mybestnodeever
    canbuild: yes

自 OCPv3.6 以来,有 taints and tolerations,可以应用于节点和 pods,但我还没有找到任何关于将容忍度应用于构建配置(或它们是否传播到构建器 pods)。 https://docs.openshift.com/container-