温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

kubernetes实践之三十八:Pod调度

发布时间:2020-08-10 17:30:09 来源:ITPUB博客 阅读:156 作者:百联达 栏目:云计算
一: Deployment/RC: 全自动调度
Deployment或RC的主要功能之一就是自动部署一个容器应用的多份副本,以及持续监控副本的数量,在集群内始终维持用户指定的副本数量。

二: NodeSelector: 定向调度
可以通过Node的标签(Label)和Pod的nodeSelector属性匹配,将Pod调度到指定节点。

三: NodeAffinity: 亲和性调度
用于替换NodeSelector的全新调度策略,目前有两种节点亲和性表达。
1. RequiredDuringSchedulingIgnoredDuringExecution: 必须满足指定的规则才可以调度Pod到Node上,相当于硬限制。
2. PreferredDuringSchedulingIgnoredDuringExecution: 强调优先满足指定规则,调度器会尝试调度Pod到Node上,但并不强求,相当于软限制。多个优先级规则还可以设置权重值,以定义执行的先后顺序。

如果同时定义了nodeSelector和nodeAffinity,那么必须两个条件都得到满足,Pod才能最终运行在指定的Node上。

四:PodAffinity: 亲和与互斥调度策略

五: Taints和Tolerations(污点和容忍)
Taint需要和Toleration配合使用,让Pod避开那些不适合的Node. 在Node上设置一个或多个Taint之后,除非Pod明确生命能够容忍这些“污点”,否则无法在这些Node上运行。Toleration是Pod的属性,让Pod能够运行在标注了Taint的Node上。

六: DaemonSet: 在每个Node上调度一个Pod

七: Job批处理调度
1.Job Template Expansion模式:一个Job对象对应一个待处理的Work item,有几个Work item就产生几个独立的Job,通常适合Work item 数量少,每个Work item处理的数据量比较大的场景。

2.Queue with Pod Per Work Item模式:采用一个任务队列存放Work item,一个Job对象作为消费者去完成这些Work item,在这种模式下,Job会启动N个Pod,每个Pod对应一个Work item.

3.Queue with Variable Pod Count 模式:也是采用一个任务队列存放Work item,一个Job对象作为消费者去完成这些Work item,但与上面的模式不同,Job启动的Pod数量是可变的。

八: Cronjob: 定时任务
类似于Linux Cron的定时任务Cron Job.

九: 自定义调度
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI