当前位置: 首页 > news >正文

K8S学习之基础五:k8s中node节点亲和性

pod调度具体会调度到哪个节点呢?这里就涉及到node亲和性的问题

node节点亲和性nodeAffinity

硬亲和性:requiredDuringSchedulingIgnoredDuringExecution,必须满足

软亲和性:preferredDuringSchedulingIgnoredDuringExecution,最好满足

# 硬亲和性
vi pod-nodeaffinity-demo.yaml 
kind: Pod
metadata:
  name:  pod-node-affinity-demo
  namespace: default
  labels:
    app: myapp
    tier: frontend
spec:
  affinity:
    nodeAffinity:
     requiredDuringSchedulingIgnoredDuringExecution:
       nodeSelectorTerms:
       - matchExpressions:
         - key: zone
           operator: In
           values:
           - foo
           - bar
  containers:
  - name: myapp
    image: 172.16.80.140/nginx/nginx:1.26
    imagePullPolicy: IfNotPresent
kubectl describe pod pod-node-affinity-demo

# pod处于pending状态,原因是没有符合硬亲和性条件的node节点

# 在node02上打上标签 zone=foo或者zone=bar,那先pod被调度到node02节点

# 软亲和性,如果没有符合条件的就忽略,weight是相对权重,权重越高,pod调度的几率越大
vi pod-nodeaffinity-demo-2.yaml
kind: Pod
metadata:
  name: pod-node-affinity-demo-2
  namespace: default
  labels:
    app: myapp
    tier: frontend
spec:
  containers:
  - name: myapp
    image: 172.16.80.140/nginx/nginx:1.26
    imagePullPolicy: IfNotPresent
  affinity:
    nodeAffinity:
      preferredDuringSchedulingIgnoredDuringExecution:
      - preference:
          matchExpressions:
          - key: zone1
            operator: In
            values:
            - foo1
            - bar1
        weight: 10
      - preference:
          matchExpressions:
          - key: zone2
            operator: In
            values:
            - foo2
            - bar2
        weight: 20
kubectl apply -f pod-nodeaffinity-demo-2.yaml

http://www.dtcms.com/a/48253.html

相关文章:

  • Nginx1.19.2不适配OPENSSL3.0问题
  • DeepSeek 助力 Vue3 开发:打造丝滑的时间选择器(Time Picker)
  • 17.9 LangSmith Tracing 深度实战:构建透明可观测的大模型应用
  • 蓝桥杯刷题(Cows in a Skyscraper G,炮兵阵营)
  • ffmpeg源码编译支持cuda
  • STM32-GPIO详解
  • 主时钟与虚拟时钟约束
  • 【UCB CS 61B SP24】Lecture 19 20: Hashing Hashing II 学习笔记
  • YOLOv11融合YOLOv12中的R-ELAN结构
  • 通过continue插件实现vscode接入本地离线部署的deepseek
  • chromadb向量数据库使用 (2)
  • DeepSeek 配合 Mermaid,自动生成甘特图
  • Linux常见命令
  • Mac远程桌面软件哪个好用?
  • 服务器和本地电脑之间如何传输文件
  • 基于SpringBoot的“数据驱动的资产管理系统站”的设计与实现(源码+数据库+文档+PPT)
  • Android视频流畅播放要素
  • 19.5、C++11新特性有哪些⑤【模板的改进】
  • 科技查新有不通过的情况吗?为什么?
  • JAVA网络协议1
  • C++蓝桥杯基础篇(七)
  • 在单片机上部署的 k3s - agent 中遇到 `Failed to create pod sandbox` 错误
  • windows系统中大容量硬盘分区为1TB的方法
  • ECU抽象-I/O硬件抽象
  • 40岁开始学Java:Java中单例模式(Singleton Pattern),适用场景有哪些?
  • 【星云 Orbit • STM32F4】08. 用判断数据头来接收据的串口通用程序框架
  • K8S学习之基础六:k8s中pod亲和性
  • qt实践教学(编写一个代码生成工具)持续更新至完成———
  • 力扣:1.两数之和(O(n)复杂度)
  • [Computer Vision]实验七:图像检索