码迷,mamicode.com
首页 > 其他好文 > 详细

针对k8s群集做资源限制

时间:2020-09-09 19:17:51      阅读:44      评论:0      收藏:0      [点我收藏+]

标签:创建   文件中   tran   情况下   control   sts   容器   yaml   code   

前言

Kubernetes对资源的限制实际上是通过cgroup来控制的,cgroup是容器的一组用来控制内核如何运行进程的相关属性集合,针对内存、CPU各种设备都有对应的cgroup。

默认情况下,Pod运行没有CPU和内存的限制,这就意味着系统中的任何pod将能够像执行该pod所在的节点一样,消耗足够多的CPU和内存,一般会针对某些应用的Pod资源进行资源限制,这个资源限制是通过resources的limits来实现的。

注:以下只是在yaml文件中进行资源限制的一个片段,并不是完整的yaml文件!
1、针对pod的资源限制:

[root@master limit]# vim cgroup-pod.yaml 

spec:
  containers:
  - name: xxx
    image: xxx
    ports:
    - protocol: TCP
      containerPort: 80
    resources:
      limits:             //硬限制
        cpu: "4"
        memory: 2Gi
      requests:           //运行pod时请求的资源数量
        cpu: 260m
        memory: 260Mi

2、基于名称空间的资源限制(可以具体制定限制某一个名称空间)
1)计算资源配额

[root@master limit]# vim compute-resource.yaml 

apiVersion: v1
kind: ResourceQuota
metadata:
  name: compute-resources
spec:
  hard:
    pods: "20"         //所有pod数量不可以超过20个
    requests.cpu: "20"          //初始请求的CPU不可以超过20m
    requests.memory: 100Gi    //初始请求的内存不可以超过100G
    limits.cpu: "40"           //CPU的硬限制
    limits.memory: 200Gi        //内存的硬限制

2)资源对象数量配额限制

[root@master limit]# vim object-counts.yaml 

apiVersion: v1
kind: ResourceQuota
metadata:
  name: object-counts
spec:
  hard:
    configmaps: "10"      //最多可以创建10个configmap
    persistentvolumeclaims: "4"      //最多可以创建4个PVC
    replicationcontrollers: "20"              //最多可以创建20个RC资源对象
    secrets: "10"                   //最多可以创建10个secrets   
    service.loadbalancers: "2"      //最多可以创建2个svc

3)配置CPU和内存的limitRange

[root@master limit]# vim limitRange.yaml 

apiVersion: v1
kind: LimitRange
metadata:
  name: mem-limit-range
spec:
  limits:
  - default:        
      memory: 50Gi    //硬限制
      cpu: 5              //硬限制
    defaultRequest:       /初始请求
      memory: 1Gi
      cpu: 1
    type: Container        //限制对象为容器

针对k8s群集做资源限制

标签:创建   文件中   tran   情况下   control   sts   容器   yaml   code   

原文地址:https://blog.51cto.com/14306186/2525580

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!