zoukankan      html  css  js  c++  java
  • K8s 资源范围管理对象 LimitRange

     默认情况下如果创建一个 Pod 没有设置 LimitsRequests 对其加以限制,那么这个 Pod 可能能够使用 Kubernetes 集群中全部资源, 但是每创建 Pod 资源时都加上这个动作是繁琐的,考虑到这点 Kubernetes 提供了 LimitRange 对象,它能够对一个 Namespace 下的全部 Pod 使用资源设置默认值、并且设置上限大小和下限大小等操作。这里演示将使用 LimitRange 来限制某个 namespace 下的资源的测试用例。

    考虑到 LimitRange 是作用于 Namespace 的,所以这里提前创建一个用于测试的 Namespace。
    
    $ kubectl create namespace limit-namespace


    创建 LimitRange 对 Namespace 资源限制
    创建一个 LimitRange 对象限制 Namespace 下的资源使用,其中 limit 的类型有两种:

    1.对 Container 使用资源进行限制,在 Pod 中的每一个容器都受此限制。
    2.对 Pod 进行限制,即 Pod 中全部 Container 使用资源总和来进行限制。

    资源对象 limit-range.yaml 内容如下:

    apiVersion: v1
    kind: LimitRange
    metadata:
      name: limit-test
    spec:
      limits:
        - type: Pod        #对Pod中所有容器资源总和进行限制
          max:
            cpu: 4000m
            memory: 2048Mi 
          min:
            cpu: 10m
            memory: 128Mi 
          maxLimitRequestRatio:
            cpu: 5
            memory: 5
        - type: Container  #对Pod中所有容器资源进行限制
          max:
            cpu: 2000m
            memory: 1024Mi
          min:
            cpu: 10m
            memory: 128Mi 
          maxLimitRequestRatio:
            cpu: 5
            memory: 5
          default:
            cpu: 1000m
            memory: 512Mi
          defaultRequest:
            cpu: 500m
            memory: 256Mi
    执行 Kubectl 创建 LimitRange:
    
    $ kubectl apply -f limit-range.yaml -n limit-namespace

    Container 参数:

    max: Pod 中所有容器的 Limits 值上限。
    min: Pod 中所有容器的 Requests 值下限。
    default: Pod 中容器未指定 Limits 时,将此值设置为默认值。
    defaultRequest: Pod 中容器未指定 Requests 是,将此值设置为默认值。
    maxLimitRequestRatio: Pod 中的容器设置 Limits 与 Requests 的比例的值不能超过 maxLimitRequestRatio 参数设置的值,即 Limits/Requests ≤ maxLimitRequestRatio。
    Pod 参数:

    max: Pod 中所有容器资源总和值上限。
    min: Pod 中所有容器资源总和值下限。
    maxLimitRequestRatio: Pod 中全部容器设置 Limits 总和与 Requests 总和的比例的值不能超过 maxLimitRequestRatio 参数设置的值,即 (All Container Limits)/(All Container Requests) ≤ maxLimitRequestRatio。

    作者:tigergao
    功不唐捐 玉汝于成
  • 相关阅读:
    OCX控件的注册卸载,以及判断是否注册
    SimpleJdbcTemplate批量更新(BeanPropertySqlParameterSource)
    hibernateTemplate封装jdbc的一个简单思路
    Dao层查询
    ==与equals方法的区别(Java基础)
    中文乱码解决办法
    spring核心配置文件_ActiveMQ消息队列配置
    spring核心配置文件_Elasticsearch搜索配置
    spring核心配置文件_数据库连接信息
    spring核心配置文件_数据库连接信息_数据库信息
  • 原文地址:https://www.cnblogs.com/tigergaonotes/p/14740168.html
Copyright © 2011-2022 走看看