K8s调度策略、标签、资源配额、metrics插件

Kubernetes

1.Pod调度策略

什么是调度分配?

将Pod分配到合适的计算节点上 ,对应节点上的kubelet运行这些Pod

Scheduler是如何工作的?

Scheduler通过watch机制来发现集群中尚未被调度到节点上的Pod,再根据调度原则将Pod分配到合适的节点上运行

Scheduler调度流程(过滤和打分)
  • 过滤:筛选出满足Pod所有资源请求的节点,包含(计算资源、内存、存储、网络、端口号等)

    ​ 如果没有节点满足Pod的需求,Pod将一直处于Pending的状态,直到Scheduler找到合适的节点 运行它

  • 打分:Scheduler根据打分规则为每个调度节点打分,选出得分最高的节点来运行Pod,

    ​ 如果存在得分相同的Pod,Scheduler会随机选择一个节点

    ​ 确定了某个节点运行Pod后,Scheduler会将决定通知给apiServer,这个过程叫做绑定

2.Pod定向调度

在这里插入图片描述
缺点:节点单一,没有冗余性,如果指定的节点不能运行Pod,不会迁移到其他节点,会一直等待下去

  • 基于标签的Pod调度

    标签是什么?

    标签(labels)是附加在Kubernetes上的键值对

    标签的用途

    使用节点名称调度不够灵活,标签可以更加灵活的方式完成调度任务

    标签能够以松散耦合的方式将它们的组织结构映射到系统,无需客户端存储这些映射

    标签可以在创建时附加到对象,也可以在创建之后随时添加和修改

    标签可以用于组织和选择对象的子集

#使用show-lables查询标签
kubelet -n kube-system get pods --show-labels
#使用-l筛选标签
kubelet -n kube-system get pods -l 标签名称
#查看标签
kubectl get 资源类型 [资源名称] --show-lables
#设置标签
kubectl label 资源类型 [资源名称] <label-key>=<lable-value>
#删除标签
kubectl label 资源类型 [资源名称] <label-key>-

在这里插入图片描述

标签选择运算符(yaml中标签的key相同会被覆盖)

在这里插入图片描述
在这里插入图片描述

3.资源配额

为什么要资源配额?

当多个应用共享固定节点数目的集群时,人们会担心某些应用多度的使用资源,从而影响到其他的服务,我们需要设定一些规则,用来保证应用能获得其运行所需要的合理资源

CPU资源类型

CPU的约束请求以毫核(m)为单位。在K8S中1m是最小的调度单元,CPU的一个核心是1000m

内存资源类型

memory的约束和请求以字节为单位

内存的表示单位:E、P、T、G、M、k

也可以使用对应的2的幂数:Ei、Pi、Ti、Gi、Mi、Ki

例如:以下表达式所代表的是相同的值

​ 1k==1000

​ 1Ki==1024

最小资源配额

在这里插入图片描述
在这里插入图片描述

备注:比如一个2CPU、4GB内存的服务器,只能创建3个*1200Mi的Pod,第四个就会处于Pending的状态

​ 2个CPU2个核心1000毫核,所以800毫核只能创建2个Pod,第三个处于Pending

最大资源配额

在这里插入图片描述

#内存超过限额服务会被强制杀死

全局资源配额

如果大量容器需要设置资源配额,为每个Pod设置资源配策略不方便且不好管理,管理员可以以名称空间为单位(namespace),限制其资源的使用及创建。在该名称空间中创建的容器都会受到规则的限制

K8S支持的全局配额方式有:

  • 对内存、CPU、存储资源进行配额:LimitRange
  • 对Pod进行配额:ResourceQuota

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.资源监控工具

K8S中的Metrics-server组件提供有关节点和Pod的资源使用情况

Metrics-server是什么?

是集群核心监控数据的聚合器,存储了各个节点和Pod的监控数据,并且提供了API以供查询和使用

通过kubelet获取node和Pod的CPU,内存等监控数据。为调度器、弹性控制器、以及Dashboard等UI组件提供数据来源

安装条件

kube-apiServer必须启用聚合服务,或使用kube-proxy代理转发

节点必须启用身份验证和授权。kubelet证书需要由集群证书颁发机构签名

监控数据。为调度器、弹性控制器、以及Dashboard等UI组件提供数据来源

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

故辞运维

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值