學習筆記十八:污點、容忍度

污點、容忍度

  • 污點、容忍度
  • 管理節點污點
      • 把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.pswp.cn/news/40357.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/40357.shtml
英文地址,請注明出處:http://en.pswp.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…