kubernetes
  • Introduction
  • 安装
    • 组件端口
    • 二进制安装
    • Kubeadm
      • 安装单Master集群
      • 安装高可用集群(手动分发证书)
      • 安装高可用集群(自动上传证书)
      • 安装ETCD集群
      • 安装高可用集群(外部ETCD)
    • 启动参数解析
      • ETCD相关参数
  • 负载均衡
    • Service
    • Ingress
    • 安装MetalLB
    • Nginx-ingress-controller
      • 转发TCP与UDP服务
      • 启动参数
      • 自定义Nginx模板
  • 存储
    • Volume
    • PV与PVC
    • StorageClass
    • Local-PV
      • Static-Provisioner
    • 实践
      • Ceph-RBD
      • NFS
  • 有状态服务
    • Mysql实践
    • Operator
      • Etcd
      • Zookeeper
      • Mysql
  • 认证与授权
    • 认证
      • 实践
    • 授权
  • Helm
    • 安装
    • Chart
      • 依赖
    • Helm命令
    • Repository
  • 日志
  • 监控
    • Prometheus体系
      • Prometheus
        • 内置函数
        • 配置
          • 规则文件
        • PromQL
      • Exporter
        • Metrics
      • Grafana
        • 配置
      • AlertManager
        • 配置
    • 容器监控
      • Cadvisor的指标
      • k8s中部署Prom与Cadvisor
  • Istio
  • 资源预留
    • imagefs与nodefs
    • 总结
  • 集群联邦
    • 联邦DNS原理
    • 联邦DNS安装
    • 安装federation-v1
  • Other
    • ImagePullSecret
    • QOS
    • Apiserver的代理
    • 资源配额
Powered by GitBook
On this page

Was this helpful?

  1. Other

QOS

QOS的全称为Quality Of Service,意思为服务质量,我们可以通俗地理解为Pod的级别。QOS有三个值:

  • Guaranteed

  • Burstable

  • BestEffort

当主机资源不够时(比如CPU、内存),kubelet会对主机上的Pod进行驱逐,kubelet会最先驱逐 BestEffort 的Pod,如果资源还紧张则再驱逐Burstable的Pod,最后才驱逐Guaranteed的Pod。所以,在实际生产中,我们一般会把重要Pod的QOS设置为Guaranteed,比如k8s的网络插件、dns插件、负载均衡插件等等。

Guaranteed

当Pod满足以下两个条件,则该Pod的QOS为Guaranteed

  • Pod中每一个Container都有requests.cpu与limits.cpu,且它们的值一样

  • Pod中每一个Container都有requests.memory与limits.memory,且它们的值一样

比如,下面的这个Pod就是Guaranteed

apiVersion: v1
kind: Pod
metadata:
name: qos-demo
spec:
containers:
- name: qos-demo-ctr
image: nginx
resources:
limits:
memory: "200Mi"
cpu: "700m"
requests:
memory: "200Mi"
cpu: "700m"

当在集群中创建这个Pod后,可以通过命令查看它的QOS

$ kubectl get pod qos-demo -o yaml
...
spec:
containers:
...
resources:
limits:
cpu: 700m
memory: 200Mi
requests:
cpu: 700m
memory: 200Mi
...
qosClass: Guaranteed
PreviousImagePullSecretNextApiserver的代理

Last updated 5 years ago

Was this helpful?