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

【kubernetes】kubernetes中的调度

1 调度过程

调度的本来含义是指决定某个任务交给某人来做的过程,kubernetes中的调度是指决定Pod在哪个Node上运行。

k8s的调度分为2个过程:

  • 预选:去掉不满足条件的节点
  • 优选:对剩下符合条件的节点按照一些策略进行排序,选择最优的节点运行Pod

2 亲和性

亲和性是指Pod调度时更倾向于调度到满足某些条件的节点。

亲和性按照对象不同分为节点亲和性和Pod亲和性:

  • 节点亲和性:Pod更倾向于调度到某类节点上运行
  • Pod亲和性:Pod更倾向于调度到跟某类Pod运行到同一个节点

亲和性按照满足条件的程度又分为软亲和性和硬亲和性:

  • 软亲和性:如果有满足条件的节点,则在这些节点上运行如果没有,也可以调度到不满足条件的节点上运行
  • 硬亲和性:必须调度到满足条件的节点上运行

亲和性的配置位于Pod.spec.affinity,节点亲和性位于Pod.spec.affinity.nodeAffinity,pod亲和性位于Pod.spec.affinity.podAffinity

3 污点和容忍度

3.1 污点和容忍度的含义

节点亲和性是指Pod必须或者可以被调度到带有某些标签的节点,是一种节点吸引Pod的能力。而污点则是节点排斥Pod的能力。

污点:节点拥有的属性,可以给节点打上污点,当Pod调度时就不会被调度到带有污点的节点。

容忍:创建Pod时指定的容忍度,当Pod调度时可以将Pod调度到带有这些污点的节点,当然也可以不调度到带有这些污点的节点。

污点由三部分组成:key=value:effect,其中value可以为空,effect描述污点的作用:

  • NoSchedule:k8s不会将Pod调度到有该污点的节点
  • PreferNoSchedule:k8s尽量避免将Pod调度到有该污点的节点(当节点资源不足时,也可以被调度)
  • NoExecute:k8s不会将Pod调度到有该污点的节点,同时会将节点上已经存在的Pod驱逐
3.2 如何设置

污点的设置:

# 设置污点
kubectl taint nodes node-name key=value:effect# 查看污点
kubectl describe pod pod-name# 删除污点
kubectl taint nodes node-name key:effect-

容忍度的设置:

Pod.spec.tolerations

tolerations:
- key: "key1"operator: "Equal"value: "value1"effect: "NoSchedule"tolerationSeconds: 3600
- key: "key2"operator: "Exists"effect: "NoSchedule"

注意:

  • key、value、effect需要与节点上设置的污点一致
  • tolerationSeconds表示当污点设置为NoExecute时,Pod被驱逐前可以继续保留运行的时间

4 固定节点调度

在某些场景下,可能需要将Pod调度到某些固定的节点上:

  • 节点托管:用户将服务器托管给云平台,这些服务器只能用户自己使用,云平台给节点打上标签,用户在提交yaml时在其中配置好节点选择标签
  • 集群分区:对单个集群分区,分别打上标签

因此,k8s支持两种指定节点的方式:

Pod.spec.nodeName:指定节点名称,Pod就会只运行在该节点上。

Pod.spec.nodeSelector:指定节点带有的标签,Pod就只会运行在带有这些标签的节点上。

5 节点驱逐

当需要对节点进行维护时,需要让k8s不将Pod调度到该节点,k8s提供三种驱逐节点的操作:

  • cordon
  • drain
  • delete
5.1 cordon

kubectl cordon NodeName

将节点设置为SchedulingDisabled,后续新创建的Pod不会再调度到该节点,原来跑在上面的Pod仍可以对外提供服务。可以使用uncordon恢复调度。

5.2 drain

kubectl drain NodeName

将节点设置为SchedulingDisabled,后续新创建的Pod不会再调度到该节点,并且,原来跑在上面的Pod会被优雅终止。可以使用uncordon恢复调度。

5.3 delete

kubectl delete node NodeName

驱逐节点上的Pod,在其他节点上重建,然后将该节点从集群中删除。如果需要重新加入集群,需要将kubelet进程重启。

相关文章:

【kubernetes】kubernetes中的调度

1 调度过程 调度的本来含义是指决定某个任务交给某人来做的过程,kubernetes中的调度是指决定Pod在哪个Node上运行。 k8s的调度分为2个过程: 预选:去掉不满足条件的节点优选:对剩下符合条件的节点按照一些策略进行排序&#xff…...

java读取csv文件或者java读取字符串,找出引号内容,采用正则表达式书写

将一个csv文件复制出来将后缀改变为txt,我们就得到了一个文件文件打开这个txt文件,可以看到每一个字段之间都是用英文逗号隔开 正常的内容形似 20,C4,Pm,tem,tion,21,A4,E,H,"1,2,3,NA,aaa,bbbb,cccc,ddd,N/A,aaa,bbbb,cccc,ddd,tttttt对于这种我们只需要进行…...

【寻找关键钥匙】python实现-附ChatGPT解析

1.题目 寻找关键钥匙 知识点字符串、编程基础、正则表达式、排序 时间限制:1s 空间限制: 256MB 限定语言:不限 题目描述: 小强正在参加《密室逃生》游戏,当前关卡要求找到符合给定 密码K(升序的不重复小写字母组成)的箱子,并给出箱子编号,箱子编号为1~N。 每个箱子中都有一个…...

基于 QT 实现一个 Ikun 专属桌面宠物

Step0、实现思路 想到的思路有两种: 1、使用 QT 的状态机模式,参考官网文档,这个模式的解耦最佳 2、使用原生 Wigets,将窗口设置为透明无框,循环播放桌面宠物的状态 本文采用第二种思路,实现一个极简版…...

新闻报道的未来:自动化新闻生成与爬虫技术

概述 自动化新闻生成是一种利用自然语言处理和机器学习技术,从结构化数据中提取信息并生成新闻文章的方法。它可以实现大规模、高效、多样的新闻内容生产。然而,要实现自动化新闻生成,首先需要获取可靠的数据源。这就需要使用爬虫技术&#…...

C++ 并发编程实战 第八章 设计并发代码 二

目录 8.3 设计数据结构以提升多线程程序的性能 8.3.1 针对复杂操作的数据划分 8.3.2 其他数据结构的访问模式 8.4 设计并发代码时要额外考虑的因素 8.4.1 并行算法代码中的异常安全 8.4.2 可扩展性和Amdahl定律 8.4.3 利用多线程隐藏等待行为 8.4.4 借并发特性改进响应…...

list(链表)

文章目录 功能迭代器的分类sort函数(排序)merage(归并)unique(去重)removesplice(转移) 功能 这里没有“[]"的实现;原因:实现较麻烦;这里使用迭代器来实…...

使用代理IP进行安全高效的竞争情报收集,为企业赢得竞争优势

在激烈的市场竞争中,知己知彼方能百战百胜。竞争对手的信息对于企业来说至关重要,它提供了洞察竞争环境和市场的窗口。在这个信息时代,代理IP是一种实用的工具,可以帮助企业收集竞争对手的产品信息和营销活动数据,为企…...

【数学知识】一些数学知识,以供学习

矩阵的特征值和特征向量 https://zhuanlan.zhihu.com/p/104980382 矩阵的逆 https://zhuanlan.zhihu.com/p/163748569 对数似然方程(log-likelihood equation),简称“似然方程”: https://baike.baidu.com/item/%E5%AF%B9%E6%95%B0%E4%BC%BC%E7%84%B6%E6%96%B9%E7…...

JKChangeCapture swift 版本的捕捉属性变化的工具

在OC的时代里,大家捕捉属性的变化通常是通过KVO机制来实现的,KVO把所有的属性变化都放在了一个方法进行相应处理,并不友好,之前基于KVO的机制实现了一套属性变化工具JKKVOHelper,这里不就在过多介绍这个了,在swift的时…...

RISC-V 指令

RISC-V指令都是32位长。 文章目录 R-Type指令格式:I-Type指令格式:S-Type指令格式:B-Type指令格式:U-Type指令格式:UJ-Type指令格式:J-Type指令格式:R4-Type指令格式:F-Type指令格式:vC-Type指令格式:CB-Type指令格式:CIW-Type指令格式:CL-Type指令格式:R-Type指…...

[NOIP2011 提高组] 选择客栈

[NOIP2011 提高组] 选择客栈 题目描述 丽江河边有 n n n 家很有特色的客栈,客栈按照其位置顺序从 1 1 1 到 n n n 编号。每家客栈都按照某一种色调进行装饰(总共 k k k 种,用整数 0 ∼ k − 1 0 \sim k-1 0∼k−1 表示)&am…...

桂院校园导航 静态项目 二次开发教程 1.2

Gitee代码仓库:桂院校园导航小程序 GitHub代码仓库:GLU-Campus-Guide 先 假装 大伙都成功安装了静态项目,并能在 微信开发者工具 和 手机 上正确运行。 接着就是 将项目 改成自己的学校。 代码里的注释我就不说明了,有提到 我…...

private static final long serialVersionUID = 1L的作用是什么?

1.作用是什么? 当一个类被序列化后,存储在文件或通过网络传输时,这些序列化数据会包含该类的结构信息。当反序列化操作发生时,Java虚拟机会根据序列化数据中的结构信息来还原对象。 但是,如果在序列化之后&#xff0c…...

leetCode 122.买卖股票的最佳时机 II 贪心算法

122. 买卖股票的最佳时机 II - 力扣(LeetCode) 给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。 在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买&…...

阿里云ACP知识点(三)

1、弹性伸缩不仅提供了在业务需求高峰或低谷时自动调节ECS实例数量的能力,而且提供了ECS实例上自动部署应用的能力。弹性伸缩的伸缩配置支持多种特性,例如______,帮助您高效、灵活地自定义ECS实例配置,满足业务需求。 标签、密钥对、 实例RAM…...

nmap 扫描内网IP, 系统, 端口

nmap 扫描内网IP, 系统, 端口 扫描内网ip 对内网进行ARP扫描 .\nmap.exe -sn 192.168.110.0/24 # 全网段 .\nmap.exe -sn 192.168.110.100-200 # 100-200范围 扫描端口 .\nmap.exe -sT 192.168.110.130 # 三次握手连接 较慢, 但更有效 .\nmap.exe -sS 192.168.110.130 # 发…...

Llama2-Chinese项目:4-量化模型

一.量化模型调用方式   下面是一个调用FlagAlpha/Llama2-Chinese-13b-Chat[1]的4bit压缩版本FlagAlpha/Llama2-Chinese-13b-Chat-4bit[2]的例子: from transformers import AutoTokenizer from auto_gptq import AutoGPTQForCausalLM model AutoGPTQForCausalLM…...

【深度学习实验】卷积神经网络(六):自定义卷积神经网络模型(VGG)实现图片多分类任务

目录 一、实验介绍 二、实验环境 1. 配置虚拟环境 2. 库版本介绍 三、实验内容 0. 导入必要的工具包 1. 构建数据集(CIFAR10Dataset) a. read_csv_labels() b. CIFAR10Dataset 2. 构建模型(FeedForward&…...

Git/GitHub/Idea的搭配使用

目录 1. Git 下载安装1.1. 下载安装1.2. 配置 GitHub 秘钥 2. Idea 配置 Git3. Idea 配置 GitHub3.1. 获取 GitHub Token3.2. Idea 根据 Token 登录 GitHub3.3. Idea 提交代码到远程仓库3.3.1. 配置本地仓库3.3.2. GitHub 创建远程仓库1. 创建单层目录2. 创建多层目录3. 删除目…...

Android的GNSS功能,搜索卫星数量、并获取每颗卫星的信噪比

一、信噪比概念 信噪比,英文名称叫做SNR或S/N(SIGNAL-NOISE RATIO),又称为讯噪比。是指一个电子设备或者电子系统中信号与噪声的比例。 信噪比越大,此颗卫星越有效(也就是说可以定位)。也就是说&#xff0…...

23-properties文件和xml文件以及dom4j的基本使用操作

特殊文件 我们利用这些特殊文件来存放我们 java 中的数据信息,当数据量比较大的时候,我们可以利用这个文件对数据进行快速的赋值 对于多个用户数据的存储的时候我们要用这个XML来进行存储 关于这些特殊文件,我们主要学什么 了解他们的特点&…...

新型信息基础设施IP追溯:保护隐私与网络安全的平衡

随着信息技术的飞速发展,新型信息基础设施在全球范围内日益普及,互联网已经成为我们社会和经济生活中不可或缺的一部分。然而,随着网络使用的增加,隐私和网络安全问题也引发了广泛关注。在这个背景下,IP(In…...

django 实现:闭包表—树状结构

闭包表—树状结构数据的数据库表设计 闭包表模型 闭包表(Closure Table)是一种通过空间换时间的模型,它是用一个专门的关系表(其实这也是我们推荐的归一化方式)来记录树上节点之间的层级关系以及距离。 场景 我们 …...

Redis与分布式-集群搭建

接上文 Redis与分布式-哨兵模式 1. 集群搭建 搭建简单的redis集群,创建6个配置,开启集群模式,将之前配置过的redis删除,重新复制6份 针对主节点redis 1,redis 2,redis 3都是以上修改内容,只是…...

C++--位图和布隆过滤器

1.什么是位图 所谓位图,就是用每一位来存放某种状态,适用于海量数据,数据无重复的场景。通常是用来判断某个数据存不存在的。比如int 有32位,就可以存放0到31这32个数字在不在某个文件中。当然,其他类型也可以。 2.位…...

linux常识

目录 i.mx6ull开发板配置ip 静态IP配置 命令行配置 配置文件配置 动态IP配置 命令行配置 配置文件配置 为什么编译驱动程序之前要先编译内核? init系统服务 systemv守护进程 systemd守护进程 i.mx6ull开发板配置ip i.mx6ull有两个网卡(eth0和…...

Codeforces Round 901 (Div. 1) B. Jellyfish and Math(思维题/bfs)

题目 t(t<1e5)组样例&#xff0c;每次给出a,b,c,d,m(0<a,b,c,d,m<2的30次方) 初始时&#xff0c;(x,y)(a,b)&#xff0c;每次操作&#xff0c;你可以执行以下四种操作之一 ①xx&y&#xff0c;&为与 ②xx|y&#xff0c;|为或 ③yx^y&#xff0c;^为异或 …...

unity 鼠标标记 左键长按生成标记右键长按清除标记,对象转化为子物体

linerender的标记参考 unity linerenderer在Game窗口中任意画线_游戏内编辑linerender-CSDN博客 让生成的标记转化为ARMarks游戏对象的子物体 LineMark.cs using System.Collections; using System.Collections.Generic; using UnityEngine;public class LineMark : MonoBeh…...

解决mac pro 连接4k显示器严重发烫、卡顿问题

介绍个不用花钱的方法。其实mac自带的风扇散热能力还可以的&#xff0c;但是默认比较懒散&#xff0c;可以用一个软件来控制下&#xff0c;激发下它的潜能。 可以下个stats软件 打开传感器开关&#xff0c;以及同步控制风扇开关 以及cpu显示温度 点击控制台上的温度图标&…...

为政府做网站的公司/韩国电视剧

重新安装ruby即可解决 brew install ruby转载于:https://www.cnblogs.com/kaid/p/7718368.html...

做网站首页ps分辨率多少/sem竞价培训班

艺术风格转换是一种图像的合成问题&#xff0c;其中图像的内容是以另一种风格再现的。 Artistic style transfer is an image synthesis problem where the contentof an image is reproduced with the style of another. 近年来的研究表明&#xff0c;利用预训练卷积神经网络…...

移动网站开发教学大纲/最近一周国内热点新闻

自古以来&#xff0c;不以规矩&#xff0c;不能成方圆。 随着大数据BI行业飞速发展&#xff0c;各类商业智能与大数据分析软件百花齐放&#xff0c;并以惊人的速度在全国各个行业渗透。因此&#xff0c;我们势必要建立起相关的软件技术规范和标准&#xff0c;引领BI行业未来的…...

模板网站修改教程视频/黑龙江头条今日新闻

volatile这个关键字&#xff0c;不仅仅在Java语言中有&#xff0c;在很多语言中都有的&#xff0c;而且其用法和语义也都是不尽相同的。尤其在C语言、C以及Java中&#xff0c;都有volatile关键字。都可以用来声明变量或者对象。 volatile 译为不稳定的,在Java中我们可以理解成…...

中国响应式网站案例/站长工具源码

数据分析--单因子选股策略、多因子选股策略&#xff08;选股&#xff09; 一、单因子选股策略--小市值策略 二、多因子选股策略--市值ROE&#xff08;净资产收益率&#xff09;选股策略 一、单因子选股策略--小市值策略 因子选股策略 因子&#xff1a;选择股票的某种标准 增长…...

建设网站需要什么人员/东莞网络公司电话

随时随地阅读更多技术实战干货&#xff0c;充分利用闲暇时间&#xff0c;请关注源代码社区公众号和技术交流群。 from&#xff1a;http://blog.csdn.net/kaka0930/article/details/68941932 1. phantomjs的镜像网站&#xff1a;http://npm.taobao.org/dist/phantomjs/ 2. pha…...