c语言sscanf函数的用法是什么
259
2022-10-10
kubernetes集群常用POD调度策略实践
1、kubernetes集群POD调度策略(1)、NoSchedule: 一定不能被调度(2)、PreferNoSchedule: 尽量不要调度(3)、NoExecute: 不仅不会调度, 还会驱逐Node上已有的Pod2、将master节点设置为可调度POD,即去除污点kubectl describe no 192.168.1.12 # 查看节点Taints值kubectl taint node 192.168.1.12 node-role.kubernetes.io/master-# 执行结果[root@192 kubeadm]# kubectl taint node 192.168.1.12 node-role.kubernetes.io/master-node/192.168.1.12 untainted3、将master节点设置为不可调度POD,即设置为污点kubectl taint node 192.168.1.12 node-role.kubernetes.io/master=:NoSchedule# 执行结果[root@192 kubeadm]# kubectl taint node 192.168.1.12 node-role.kubernetes.io/master=:NoSchedulenode/192.168.1.12 tainted4、驱逐已经运行的POD容器kubectl drain --ignore-daemonsets 192.168.1.135、k8s集群node打污点,不被调度kubectl cordon 192.168.1.13kubectl taint nodes 192.168.1.13 node.kubernetes.io/unschedulable=:NoSchedule6、k8s集群node去除污点kubectl uncordon 192.168.1.13或 kubectl taint nodes 192.168.1.13 node.kubernetes.io/unschedulable:NoSchedule-7、将POD调度到指定工作节点的三种方法第一:先创建label名称,再在deploy配置关联label名称kubectl label node 192.168.1.13 learn.org/role=online # 创建labelkubectl label node 192.168.1.13 learn.org/role- # 删除labelkubectl get node 192.168.1.13 --show-labels #查看节所有标签# nodeSelector为已创建labelkubectl get node 192.168.1.13 --show-labels #查看节所有标签# nodeSelector为已创建labelapiVersion: apps/v1kind: Deploymentmetadata: labels: name: nginx-volume name: nginx-volume namespace: defaultspec: replicas: 1 selector: matchLabels: name: nginx-volume strategy: rollingUpdate: maxSurge: 1 maxUnavailable: 1 type: RollingUpdate template: metadata: labels: name: nginx-volume spec: containers: nodeSelector: learn.org/role: online 第二:nodeSelector配置为节点hostname spec: template: spec: containers: nodeSelector: kubernetes.io/hostname: 192.168.1.13 第三:nodeName配置为节点IP spec: template: spec: containers: nodeName: 192.168.1.13
更多k8s学习资料:
1、kubernetes原理精讲【基础原理+实践篇】
2、kubernetes原理精讲【自签证书原理+实践篇】
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~