学习笔记十八:污点、容忍度

污点、容忍度

  • 污点、容忍度
  • 管理节点污点
      • 把k8snode2当成是生产环境专用的,其他node是测试的
      • 给k8snode1也打上污点

污点、容忍度

  • 给了节点选则的主动权,我们给节点打一个污点,不容忍的pod就运行不上来,污点就是定义在节点上的键值属性数据,可以定决定拒绝那些pod;
  • taints是键值数据,用在节点上,定义污点;
  • tolerations是键值数据,用在pod上,定义容忍度,能容忍哪些污点
  • pod亲和性是pod属性;但是污点是节点的属性,污点定义在k8s集群的节点上的一个字段
kubectl explain node.spec.taints
KIND:     Node
VERSION:  v1
RESOURCE: taints <[]Object>
DESCRIPTION:If specified, the node's taints.The node this Taint is attached to has the "effect" on any pod that doesnot tolerate the Taint.
FIELDS:effect	<string> -required-key	<string> -required-timeAdded	<string>value	<string>taints的effect用来定义对pod对象的排斥等级(效果):NoSchedule:
仅影响pod调度过程,当pod能容忍这个节点污点,就可以调度到当前节点,后来这个节点的污点改了,加了一个新的污点,使得之前调度的pod不能容忍了,那这个pod会怎么处理,对现存的pod对象不产生影响NoExecute:
既影响调度过程,又影响现存的pod对象,如果现存的pod不能容忍节点后来加的污点,这个pod就会被驱逐PreferNoSchedule:
最好不,也可以,是NoSchedule的柔性版本

查看master这个节点是否有污点,显示如下:

kubectl describe nodes k8smaster1
Taints:             node-role.kubernetes.io/control-plane:NoSchedule

上面可以看到master这个节点的污点是Noschedule
所以我们创建的pod都不会调度到master上,因为我们创建的pod没有容忍度

kubectl describe pods kube-apiserver-k8smaster1 -n kube-system

显示如下:

Tolerations:       :NoExecute op=Exists

可以看到这个pod的容忍度是NoExecute,则可以调度到k8smaster1上

管理节点污点

kubectl taint –help

把k8snode2当成是生产环境专用的,其他node是测试的

给k8snode2打污点,pod如果不能容忍就不会调度过来

kubectl taint node k8snode2 node-type=production:NoSchedule
vim pod-taint.yaml 
apiVersion: v1
kind: Pod
metadata:name: taint-podnamespace: defaultlabels:tomcat:  tomcat-pod
spec:containers:- name:  taint-podports:- containerPort: 8080image: tomcat:8.5-jre8-alpine
imagePullPolicy: IfNotPresent 
kubectl apply -f pod-taint.yaml
kubectl get pods -o wide 

显示如下:

taint-pod   running    k8snode1

可以看到都被调度到k8snode1上了,因为k8snode2这个节点打了污点,而我们在创建pod的时候没有容忍度,所以k8snode2上不会有pod调度上去的

给k8snode1也打上污点

kubectl taint node k8snode1 node-type=dev:NoExecute
kubectl get pods -o wide 

显示如下:可以看到已经存在的pod节点都被撵走了

taint-pod   termaitering
vim pod-demo-1.yaml 
apiVersion: v1
kind: Pod
metadata:name: myapp-deploynamespace: defaultlabels:app: myapprelease: canary
spec:containers:- name: myappimage: ikubernetes/myapp:v1imagePullPolicy: IfNotPresentports:- name: httpcontainerPort: 80tolerations:- key: "node-type"operator: "Equal"value: "production"effect: "NoExecute"tolerationSeconds: 3600
kubectl apply -f pod-demo-1.yaml
kubectl get pods
myapp-deploy   1/1     Pending   0          11s  k8snode2

还是显示pending,因为我们使用的是equal(等值匹配),所以key和value,effect必须和node节点定义的污点完全匹配才可以,把上面配置effect: "NoExecute"变成effect: “NoSchedule”;
tolerationSeconds: 3600这行去掉

修改后重新生成pod

kubectl delete -f pod-demo-1.yaml
kubectl apply -f pod-demo-1.yaml
kubectl get pods
myapp-deploy   1/1     running  0          11s  k8snode2

上面就可以调度到k8snode2上了,因为在pod中定义的容忍度能容忍node节点上的污点

删除污点:

kubectl taint nodes xianchaonode1 node-type:NoExecute-
kubectl taint nodes xianchaonode2 node-type-

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/40357.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用python读Excel文件并写入另一个xls模版

效果如下&#xff1a; 原文件内容 转化后的内容 大致代码如下&#xff1a; 1. load_it.py #!/usr/bin/env python import re from datetime import datetime from io import BytesIO from pathlib import Path from typing import List, Unionfrom fastapi import HTTPExcep…

睿趣科技:抖音开网店现在做还来得及吗

随着社交媒体的迅速发展&#xff0c;抖音作为一款短视频平台&#xff0c;已经在年轻人中间取得了巨大的成功。而近年来&#xff0c;越来越多的人开始考虑在抖音上开设网店&#xff0c;以迎合这一潮流。那么&#xff0c;抖音开网店现在还来得及吗? 首先&#xff0c;要明确的是&…

一篇文章教会你搭建私人kindle图书馆,并内网穿透实现公网访问

搭建私人kindle图书馆&#xff0c;并内网穿透实现公网访问 在电子书风靡的时期&#xff0c;大部分人都购买了一本电子书&#xff0c;虽然这本电子书更多的时候是被搁置在储物架上吃灰&#xff0c;或者成为盖泡面的神器&#xff0c;但当亚马逊发布消息将放弃电子书在中国的服务…

Kubernetes部署Wordpress时碰到的两个问题解决

文章目录 小结问题1解决问题2解决参考 小结 在使用Kubernetes部署Wordpress时返回了两个问题: Function not implemented: AH00141: Could not initialize random number generator chown: changing ownership of .: Operation not permitted 对这个两个返回错误&#xff0…

利用Python隧道爬虫ip轻松构建全局爬虫网络

嘿&#xff0c;爬虫程序员们&#xff01;你们有没有碰到过需要大规模数据爬取的情况&#xff1f;也许你们之前遇到过网站的反爬措施&#xff0c;卡住你们的进度。别担心&#xff0c;今天我来分享一个利用Python隧道爬虫ip实现的方法&#xff0c;帮助你们轻松搭建全局爬虫ip网络…

jmeter界面设置为中文

jmeter版本&#xff1a;5.6.2 找到jmeter下的bin目录&#xff0c;打开jmeter.properties 文件 第39行修改为 languagezh_CN去掉前面的#&#xff0c;以后打开就是中文界面了

IC设计仿真云架构

对于IC仿真来说&#xff0c;最重要的是要安全、可维护、高性能的的HPC环境环境。 那么云上如何搭建起一套完整的IC仿真云环境呢&#xff1f; 这种架构应该长什么样子&#xff1f; 桌面虚拟化基础架构 将所有桌面虚拟机在数据中心进行托管并统一管理&#xff1b;同时用户能够…

RxJava 复刻简版之三,map 多次中转数据

案例代码&#xff1a;https://gitee.com/bobidali/lite-rx-java/commit/292e9227a5491f7ec6a07f395292ef8e6ff69290 RxJava 的调用第一步是封装了观察者接受了数据的处理&#xff0c;进一步就是使用 map 将数据操作传递给上下游 1、类似Observer.create 创建一个简单的观察者…

神经网络基础-神经网络补充概念-05-导数

概念 导数是微积分中的一个概念&#xff0c;用于描述函数在某一点的变化率。在数学中&#xff0c;函数的导数表示函数值随着自变量的微小变化而产生的变化量&#xff0c;即斜率或变化率。 假设有一个函数 f(x)&#xff0c;其中 x 是自变量&#xff0c;y f(x) 是因变量。函数…

如何评价机械革命?

机械革命是在全球顶尖IT厂商蓝天、intel、nvidia、Microsoft等联手的打造下推出的中高端品牌。&#xff08;零件组装&#xff09; 机械革命研发实力雄厚&#xff0c;糟糕的外观设计和极致的游戏性能一样出名。图片皆来自于未来世界。

【0214】postgres后端进程session退出,如何通过日志分析其会话信息

文章目录 1. postgres进程session退出2. 开启日志记录postgres进程会话状态3. postgres进程会话结束,记录日志的实现原理1. postgres进程session退出 默认情况下,新建一个postgres后端进程会话(session),或是postgres进程正常/异常退出时,日志中没有很明显的记录用于说明…

嵌入式:ARM Day4

一、自己编写代码实现三盏灯点亮 源码&#xff1a; .text .global _start _start: 进行一次初始化bl RCC_INITbl LED1_INITbl LED2_INITbl LED3_INITb looploop: 循环开关灯bl LED1_ONbl delay_1sbl LED1_OFFbl delay_1sbl LED2_ONbl delay_1sbl LED2_OFFbl delay_1sbl…

如何进行网络活动监控

组织的 IT 基础架构中的每个网络设备上都发生了大量活动&#xff0c;例如数据包传输、来自网络协议的消息、设备状态事件等。网络活动成为在检测到问题时识别网络瓶颈的面包屑&#xff0c;因此即使是最微小的网络活动也应受到监控&#xff0c;因为它直接影响整体网络性能、运行…

UI设计师个人工作总结范文精选

UI设计师个人工作总结范文(一) 在忙忙碌碌中&#xff0c;2019年又将过去了&#xff0c;在这一年当中&#xff0c;设计部无论是在运作模式、设计产值、还是人员结构&#xff0c;各方面的变化都比较大。 设计部的运作模式是从7月底开始进行调整的&#xff0c;以独立承包制的运营方…

爬虫抓取数据时显示超时,是代理IP质量不行?

很多人在做数据抓取的时候&#xff0c;会遇到显示超时了&#xff0c;然后就没有响应了。这是什么原因的&#xff1f;有的人回答是使用的代理IP质量不行&#xff0c;这种答案&#xff0c;对也不对。 数据抓取时&#xff0c;出现超时的原因时多方面影响的&#xff0c;主要分为目标…

python爬虫5:requests库-案例3

python爬虫5&#xff1a;requests库-案例3 前言 ​ python实现网络爬虫非常简单&#xff0c;只需要掌握一定的基础知识和一定的库使用技巧即可。本系列目标旨在梳理相关知识点&#xff0c;方便以后复习。 申明 ​ 本系列所涉及的代码仅用于个人研究与讨论&#xff0c;并不会对网…

hivesql-dayofweek 函数

返回日期或时间戳的星期几。 此函数是 extract(DAYOFWEEK FROM expr) 的同义函数。 语法 dayofweek(expr) 参数 expr&#xff1a;一个 DATE 或 TIMESTAMP 表达式。 返回 一个 INTEGER&#xff0c;其中 1 Sunday 和 7 Saturday。 示例 > SELECT dayofweek(2009-07-30)…

mysql 01.三范式,数据类型

01.概念的区分&#xff1a; mysql是属于DBMS层次的&#xff0c;sql语句是用于DBMS的语句。 02.sql语句详细介绍&#xff1a; SQL的概述Structure Query Language(结构化查询语言)简称SQL&#xff0c;它被美国国家标准局(ANSI)确定为关系型数据库语言的美国标准&#xff0c;后…

神经网络基础-神经网络补充概念-37-其他正则化方法

概念 L1 正则化&#xff08;Lasso Regularization&#xff09;&#xff1a;L1 正则化通过在损失函数中添加参数的绝对值之和作为惩罚项&#xff0c;促使部分参数变为零&#xff0c;实现特征选择。适用于稀疏性特征选择问题。 L2 正则化&#xff08;Ridge Regularization&…

conda常用命令及国内镜像源

conda命令使用介绍 启动conda source ~/.bashrc帮助目录 conda create -h检查conda版本 conda --version升级当前版本的conda conda update conda环境管理 列出所有的环境 conda info -e conda env list安装一个不同版本的python新环境 conda create --name py27 pytho…