11.1.k8s中pod的调度-介绍及nodeName节点选择器

目录

一、k8s调度简介

二、影响kubernetes调度的因素

三、nodeName(不推荐使用)


一、k8s调度简介

  1. 调度器通过 kubernetes 的 watch 机制来发现集群中新创建且尚未被调度到 Node 上的 Pod。调度器会将发现的每一个未调度的 Pod 调度到一个合适的 Node 上来运行。
  2. kube-scheduler 是 Kubernetes 集群的默认调度器,并且是集群控制面的一部分。如果真的希望或者有这方面的需求,kube-scheduler 在设计上是允许你自己写一个调度组件并替换原有的 kube-scheduler。
  3. 在做调度决定时需要考虑的因素包括:单独和整体的资源请求、硬件/软件/策略限制、亲和以及反亲和要求(使用更多)、数据局域性、负载间的干扰等等。

二、影响kubernetes调度的因素

1.nodeName

2.nodeSelector

3.亲和与反亲和

4.Taints:污点

5.cordon、drain、delete

后面的文章会逐个介绍

三、nodeName(不推荐使用)

nodeName 是节点选择约束的最简单方法,但一般不推荐。如果 nodeName 在 PodSpec 中指定了,则它优先于其他的节点选择方法。

使用 nodeName 来选择节点的一些限制:(都会报错)

  1. 如果指定的节点不存在。
  2. 如果指定的节点没有资源来容纳 pod,则pod 调度失败。
  3. 云环境中的节点名称并非总是可预测或稳定的。
[root@k8s1 k8s-yaml]# vi nodename.yaml
 
apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    app: nginx
spec:
  containers:
  - name: nginx
    image: registry.cn-hangzhou.aliyuncs.com/oslee-dockerhub/nginx:1.27-alpine3.19
  # 指定k8s2如果找不到指定的节点pod会出现pending
  nodeName: k8s2
 
[root@k8s1 k8s-yaml]# kubectl apply -f nodename.yaml

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值