26Kubernetes资源pod污点和容忍度1_第1页
26Kubernetes资源pod污点和容忍度1_第2页
26Kubernetes资源pod污点和容忍度1_第3页
26Kubernetes资源pod污点和容忍度1_第4页
26Kubernetes资源pod污点和容忍度1_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Kubernetes资源Pod污点和容忍度1目录Node节点亲和性01任务Node节点选择器02任务学习目标【知识目标】掌握Kubernetes资源对象pod的基本使用。【技能目标】能够掌握Kubernetes资源对象pod污点和容忍度。1node节点选择器1默认pod会根据schduler默认调度到随机的一个工作节点,使用pod中的nodeName或者nodeSelector字段指定要调度到的node节点。node节点选择器1nodeName指定pod节点运行在哪个具体node上把tomcat.tar.gz上传到node1和node2,手动解压:[root@node1~]#dockerload-itomcat.tar.gzLoadedimage:tomcat:8.5-jre8-alpine[root@node2~]#dockerload-itomcat.tar.gzLoadedimage:tomcat:8.5-jre8-alpine#把busybox.tar.gz上传到node1和node2,手动解压:[root@node1~]#dockerload-ibusybox.tar.gz[root@node2~]#dockerload-ibusybox.tar.gznode节点选择器nodeName1[root@master1~]#catpod-node.yamlspec:

nodeName:node1containers:-name:tomcat-pod-javaports:-containerPort:8080image:tomcat:8.5-jre8-alpineimagePullPolicy:IfNotPresent-name:busyboximage:busybox:latestcommand:-"/bin/sh"-"-c"-"sleep3600"node节点选择器nodeName1[root@master1~]#kubectlapply-fpod-node.yaml查看pod调度到哪个节点:[root@master1~]#kubectlgetpods-owideNAME

READY

STATUSRESTARTSAGEIP

NODE

NOMINATEDNODEREADINESSGATESdemo-pod1/1Running015m10.244.0.34node1<none>

<none>node节点选择器nodeName1nodeSelector指定pod调度到具有哪些标签的node节点上给node节点打标签,打个具有disk=ceph的标签:[root@master1~]#kubectllabelnodesnode2disk=cephnode/node2labelednode节点选择器nodeSelector1定义pod的时候指定要调度到具有disk=ceph标签的node上:[root@master1~]#catpod-1.yaml。。。spec:

nodeSelector:disk:cephcontainers:-name:tomcat-pod-javaports:-containerPort:8080image:tomcat:8.5-jre8-alpineimagePullPolicy:IfNotPresentnode节点选择器nodeSelector1[root@master1~]#kubectlapply-fpod-1.yaml查看pod调度到哪个节点:[root@master1~]#kubectlgetpods-owideNAME

READY

STATUSRESTARTSAGEIP

NODE

NOMINATEDNODEREADINESSGATESdemo-pod-11/1Running018m10.244.0.35node2

<none>

<none>node节点选择器nodeSelector2node节点亲和性2affinity:指定Pod亲和性调度规则节点亲和性nodeAffinity:用来控制Pod要部署在哪些节点上,以及不能部署在哪些节点上node节点亲和性2在Pod上定义节点亲和规则时有两种类型的节点亲和关系:强制required亲和和首选preferred亲和,或分别称为硬亲和与软亲和。硬亲和:限定调度Pod资源时必须要满足的规则,无可用节点时Pod对象会被置为Pending状态,直到满足规则的节点出现。软亲和:将Pod运行在某类特定的节点之上,但无法满足调度需求时,调度器将选择一个无法匹配规则的节点,而非将Pod置于Pending状态。node节点亲和性2查看node节点亲和性调度字段[root@master1~]#kubectlexplainpods.spec.affinity。。。FIELDS:

nodeAffinity <Object>podAffinity <Object>podAntiAffinity <Object>[root@master1~]#kubectlexplainpods.spec.affinity.nodeAffinity。。。FIELDS:

preferredDuringSchedulingIgnoredDuringExecution <[]Object>

requiredDuringSchedulingIgnoredDuringExecution <Object>node节点亲和性nodeAffinity2软亲和preferredDuringSchedulingIgnoredDuringExecution 硬亲和requiredDuringSchedulingIgnoredDuringExecution 字段名字中的后半段符串IgnoredDuringExecution表示亲和调度仅在调度执行的过程中进行一次即时的判断,而非持续地监视亲和规则是否能够得以满足。node节点亲和性nodeAffinity2查看硬亲和字段[root@master1~]#kubectlexplainpods.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution。。。FIELDS:

nodeSelectorTerms <[]Object>-required-Required.Alistofnodeselectorterms.ThetermsareORed.[root@master1~]#kubectlexplainpods.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms。。。FIELDS:

matchExpressions <[]Object>#匹配表达式

matchFields <[]Object>#匹配字段node节点亲和性nodeAffinity2matchExpressions:标签选择器表达式,基于节点标签进行过滤;可重复使用以表达不同的匹配条件,各条件间为“或”关系。matchFields:以字段选择器表达的节点选择器;可重复使用以表达不同的匹配条件,各条件间为“或”关系。node节点亲和性nodeAffinity2注意:每个匹配条件可由一到多个匹配规则组成,同一条件下的各条规则彼此间为“逻辑与”关系。这意味着某节点满足nodeSelectorTerms中的任意一个条件即可,但满足某个条件指的是可完全匹配该条件下定义的所有规则。node节点亲和性nodeAffinity2查看matchFields和matchExpressions字段[root@master1~]#kubectlexplainpods.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchFields。。。FIELDS:

key <string>-required-

values <[]string>[root@master1~]#kubectlexplainpods.spec.affinity.nodeAffinity.requiredDuringSchedulingIgnoredDuringExecution.nodeSelectorTerms.matchExpressions。。。FIELDS:

key <string>-required-#检查label

operator <string>-required-#做等值选则还是不等值选则

values <[]string>#给定值node节点亲和性nodeAffinity2node节点亲和性硬亲和示例使用requiredDuringSchedulingIgnoredDuringExecution硬亲和性把myapp-v1.tar.gz上传到node2和node1上,手动解压:[root@node1~]#dockerload-imyapp-v1.tar.gzLoadedimage:iKubernetes/myapp:v1[root@node2~]#dockerload-imyapp-v1.tar.gzLoadedimage:iKubernetes/myapp:v12node节点亲和性硬亲和示例编辑yaml文件,设置node亲和度[root@master1~]#catpod-nodeaffinity-demo.yaml。。。spec:containers:-name:myappimage:iKubernetes/myapp:v1affinity:nodeAffinity:requiredDuringSchedulingIgnoredDuringExecution:nodeSelectorTerms:-matchExpressions:-key:zoneoperator:Invalues:-foo-bar2node节点亲和性硬亲和示例部署应用检查调度,结果不成功[root@master1~]#kubectlapply-fpod-nodeaffinity-demo.yaml[root@master1~]#kubectlgetpods-owide|greppod-nodepod-node-affinity-demo0/1Pending0node12node节点亲和性硬亲和示例给节点打标签,检查调度,成功[root@master1~]#kubectllabelnodesnode1zone=foo[root@master1~]#kubectlgetpods-owidepod-node-affinity-demo1/1Running0node12node节点亲和性软亲和多个柔性亲和条件并存时,支持为每个条件定义weight属性以区别它们优先级,取值范围是1~100,数字越大优先级越高。2node节点亲和性软亲和示例使用preferredDuringSchedulingIgnoredDuringExecution软亲和性[root@master1~]#catpod-nodeaffini

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论