3.5.3. 配置首选的节点关联性规则


偏好规则指定在满足规则时调度程序会尝试强制执行规则,但不保证一定能强制执行成功。

流程

以下步骤演示了一个简单的配置,此配置会创建一个节点,以及调度程序尝试放置到该节点上的 pod。

  1. 使用 oc label node 命令给节点添加标签:

    $ oc label node node1 e2e-az-name=e2e-az3
  2. Pod spec 中,使用 nodeAffinity 小节来配置 preferredDuringSchedulingIgnoredDuringExecution 参数:

    1. 为节点指定一个权重,值为 1 到 100 的数字。优先选择权重最高的节点。
    2. 指定必须满足的键和值。如果希望新 pod 调度到您编辑的节点上,请使用与节点中标签相同的 keyvalue 参数:

      spec:
        affinity:
          nodeAffinity:
            preferredDuringSchedulingIgnoredDuringExecution:
            - weight: 1
              preference:
                matchExpressions:
                - key: e2e-az-name
                  operator: In
                  values:
                  - e2e-az3
    3. 指定一个 operator。运算符可以是 InNotInExistsDoesNotExistLtGt。例如,使用运算符 In 来要求节点上存在该标签:
  3. 创建 pod。

    $ oc create -f e2e-az3.yaml
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.