默认情况下,scheduler会将pod调度到所有可用的Node,不过有些情况我们希望将 Pod 部署到指定的 Node,比如将有大量磁盘 I/O 的 Pod 部署到配置了 SSD 的 Node;或者 Pod 需要 GPU,需要运行在配置了 GPU 的节点上。

kubernetes通过label来实现这个功能

label 是 key-value 对,各种资源都可以设置 label,灵活添加各种自定义属性。比如执行如下命令标注 k8s-node1 是配置了 SSD 的节点

首先我们给k8s-node1节点打上一个ssd的标签

kubectl label node k8s-node1 disktype=ssd

通过 kubectl get node --show-labels

disktype=ssd 已经成功添加到 k8s-node1,除了 disktype,Node 还有几个 Kubernetes 自己维护的 label。

有了自定义的disktype=ssd 这个标签,只需要在配置文件中定义 nodeselector 为这个自定义标签,就可以指定pod在k8s-node1中运行

部署deployment验证

全部 6 个副本都运行在 k8s-node1 上,符合我们的预期。

要删除 label disktype,执行如下命令:

kubectl label node k8s-node1 disktype-

node/k8s-node1 labeled

不过删除标签 并不会重新部署,所以pod依旧是在k8s-node1上。

要想让k8s-node2也参与到工作负载,则必须删掉当前的deployment,并删除或注释掉配置文件中的 nodeSelector配置。

我们看到之前的pod会被全部删除掉,并重新调度到不同的k8s节点上。

转载于:https://www.cnblogs.com/benjamin77/p/9901912.html

k8s通过label来控制pod的位置相关推荐

  1. 5、kubernetes Scale Up/Down在线增加或减少 Pod 的副本数、Failover故障转移、用 label(标签)控制 Pod 的位置

    伸缩(Scale Up/Down)是指在线增加或减少 Pod 的副本数. Deployment nginx-app 初始是两个副本 [root@master ~]# kubectl apply -f ...

  2. 用 label 控制 Pod 的位置 - 每天5分钟玩转 Docker 容器技术(128)

    默认配置下,Scheduler 会将 Pod 调度到所有可用的 Node.不过有些情况我们希望将 Pod 部署到指定的 Node,比如将有大量磁盘 I/O 的 Pod 部署到配置了 SSD 的 Nod ...

  3. docker(11、Docker Swarm4)11、副本数量(replicated 和 global )12、Label 控制 Service 的位置 13、如何配置 Health Check

    11.副本数量模式(replicated mode 和 global mode) Swarm 可以在 Service 创建和运行过程中灵活的通过 --replicas 调整容器副本数量,内部调度器则会 ...

  4. python plt legend并排_matplotlib如何控制legend的位置之二

    在使用matplotlib做图时,总免不了和图例(legend)打交道,那图例到底该放在哪?该如何放到指定的位置?(本文只讨论legend的坐标系为axes的情况) 上篇文章介绍了如何通过loc参数设 ...

  5. k8s集群核心概念pod

    文章目录 k8s集群核心概念pod 1.pod介绍 什么是pod 网络: 存储: pod的使用 2.pod的生命周期 了解 Init 容器 使用 Init 容器 状态和策略 容器探针的类型 3.查看p ...

  6. k8s系列 之 容器安全pod安全 集群安全

    原文:https://blog.csdn.net/bloodzero_new/article/details/110328113 一 容器本身安全 Docker Security Capability ...

  7. ios 位置服务器,iOS 14 隐私保护:管理和控制共享的位置信息

    在使用 iPhone 时,可以选择是否允许应用使用您的位置信息.如果将设备升级到 iOS 14 之后,还可以仅允许应用访问大致的位置.不妨来了解下在 iOS 14 中如何控制共享的位置信息,以便保护您 ...

  8. 海康威视SDK二次开发通过云台参数设置控制摄像机的位置

    海康威视SDK二次开发通过云台参数设置控制摄像机的位置 由于最近在开发海康威视摄像头,特此记录一下通过云台参数控制摄像机的位置,我这里是通过properties配置文件输入的参数,也可以不用配置文件, ...

  9. 开关磁阻电机控制仿真 开关磁阻电机传统控制:电流斩波控制、电压PWM控制、角度位置控制。 智能控制:12/8三相开关磁阻电机有限元分析本体建模

    开关磁阻电机控制仿真(matlab 2016b版本仿真模型 自用) 模型包涵: 开关磁阻电机传统控制:电流斩波控制.电压PWM控制.角度位置控制. 智能控制:12/8三相开关磁阻电机有限元分析本体建模 ...

最新文章

  1. flask+gunicorn+supervisor+nginx环境安装,裸Centos
  2. 为自己的网站添加RSS功能(转载)
  3. ALEIDoc EDI(3)--change point01
  4. VS2017桌面应用程序打包成.msi或者.exe
  5. python定义构造函数、包括颜色价格品牌_《Python编程与算法基础教程》(第二版),蒋洪宇,青松,第9章:课后练习,程序设计,版江红余,第九章,习题,答案...
  6. JS过滤表单数据中的特殊字符
  7. 2017提高组D1T1 洛谷P3951 小凯的疑惑
  8. oracle architeture,ORACLE 11G Process Architecture(一)
  9. 使用Lua 局部变量来优化性能,同一时候比較局部变量和全局变量
  10. 计算机 标量,标量关系
  11. CAD画虚线怎么调比例?CAD画虚线教程
  12. Java开源文件病毒扫描_使用多种反病毒引擎扫描文件
  13. Oracle语句优化规则
  14. ply文件 java_ply之解析java文件,找出包名、类名、依赖类
  15. Win10自带杀毒功能如何打开
  16. iptables 之-m -state
  17. 【跨境必备】五分钟学会设定Facebook Chatbot
  18. 小程序随意设置字体粗细(一行代码)
  19. Android studio 中删除git 版本控制
  20. 构建之法 第三版 17 章 部分草稿

热门文章

  1. 解决:MVC对象转json包含\r \n
  2. MySQL INSERT INTO...ON DUPLICATE KEY UPDATE的使用
  3. Ubuntu常用APT命令参数
  4. 在cds学到的(非技术)
  5. 如何防御DDoS攻击
  6. SQLServer更改sa用户名
  7. cannot和can not的区别 666666
  8. 研究生申请:就一个字
  9. 数据结构【图】—022邻接矩阵的深度和广度遍历
  10. MariaDB(MySQL)数据库的介绍及使用示例