【K8s】整体认识K8s之pod调度

将pod调度到特定节点有哪些方法:

节点标签匹配的nodeSelector(spec.nodeSelector)--硬性:如果不存在匹配的标签,pod将被挂起

亲和性和反亲和性(spec.affinity)--可硬可软

Nodename字段(spec.nodeName)--硬性

Pod拓扑分布约束定义Pod 在指定拓扑域spec.topologySpreadConstraints[]

亲和性

Pod的一种特性,使pod被吸引到一类特定的节点。

举个栗子

apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-app
spec:
  replicas: 3
  selector:
    matchLabels:
      app: web-app
  template:
    metadata:
      labels:
        app: web-app
    spec:
      containers:
      - name: nginx
        image: nginx:latest
      affinity: # 这里是 Pod spec 的 affinity 字段
        podAntiAffinity: # 定义 Pod 反亲和性
          requiredDuringSchedulingIgnoredDuringExecution: # 硬性要求
          - labelSelector:
              matchExpressions:
              - key: app # 匹配所有带有 `app=web-app` 标签的 Pod
                operator: In
                values:
                - web-app
            topologyKey: kubernetes.io/hostname # 拓扑域为“主机名”,即避免调度到同一台节点

污点、容忍度

污点用来排斥一类特定的pod,每个节点可以有一个或多个污点,不接受污点的pod会被节点排斥。容忍度是pod的一种特性,让pod可以忽略节点的污点排斥。污点和容忍度结合使用,可以让pod分配到更合适的节点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值