zoukankan      html  css  js  c++  java
  • 设置Kubernetes的Limit Range限制范围

    通过Limit Range,我们可以限制资源消耗和创建,因为默认情况下,容器在Kubernetes集群上以无限制的计算资源运行。一个Pod可以消耗Limit Range所定义的CPU和内存。
    Limit Range提供了以下限制:
    最低和最高资源
    每个PersistentVolumeClaim的最小和最大存储请求。
    命名空间中资源的请求和限制之间的比率。
    设置计算资源的默认请求/限制。
    在本文中,我们将创建一个限制范围,并查看如何为容器和Pods使用的CPU资源设置最小值和最大值。我们将看到在CPU上使用Limit和Request的不同场景。
    先决条件:具有至少1个工作节点的Kubernetes集群。
    我们会怎样做?
    在默认名称空间中创建一个LimitRange。
    在默认名称空间中创建具有CPU限制和范围的Pod。
    在默认名称空间中创建一个LimitRange
    创建一个文件以定义默认名称空间中的限制范围。
    vim set-limit-range.yml

    获取默认名称空间中现有限制范围的列表,并使用在上一步中创建的文件创建一个范围。
    kubectl get limitrange
    kubectl create -f set-limit-range.yml
    kubectl get limitrange
    kubectl describe limitrange set-limit-range

    在上面的屏幕截图中,可以看出我们创建了一个限制范围,将CPU定义为“ Min = 200m”和“ Max = 800m”。
    这意味着默认名称空间中的Pod不能具有“小于Min = 200m”和“大于Max = 800m”的CPU。
    在默认名称空间中创建具有CPU限制和范围的Pod
    有限制的POD
    创建一个Pod定义,请求CPU大于200m且小于800m
    vim pod-with-cpu-within-range.yml

    列出现有的容器,并使用在上述步骤中创建的文件创建一个新的容器。
    kubectl get pods
    kubectl create -f pod-with-cpu-within-range.yml
    kubectl get pods
    kubectl describe pod pod-with-cpu-within-range

    在上面的屏幕截图中,可以看到pod已经被创建,定义了CPU请求和限制。
    具有更多CPU的Pod:
    这次,我们创建一个CPU限制为1.5(即大于800m)的Pod。
    vim pod-with-cpu-more-than-limit.yml

    获取现有容器的列表,然后尝试创建一个新的容器,其CPU限制“ 1.5”大于我们在限制范围内定义的“ 800m”。
    kubectl get pods
    kubectl create -f pod-with-cpu-more-than-limit.yml

    在上面的屏幕截图中,可以看到尚未创建容器。
    具有较少CPU的Pod:
    现在,让我们尝试创建一个Pod,该Pod请求的“ CPU = 100m”小于我们在限制范围内定义的“ 200m”。
    vim pod-with-cpu-less-than-limit.yml

    现在获取现有容器的列表,并尝试使用上述定义文件创建容器。
    kubectl get pods
    kubectl create -f pod-with-cpu-less-than-limit.yml
    这次,由于我们要求的CPU = 100m小于定义的限制范围的200m,因此pod的创建也会失败。
    没有CPU的Pod:
    在这种情况下,我们不要为CPU定义任何请求或限制。
    vim pod-with-no-cpu.yml

    现在,让我们尝试创建一个pod并查看其描述。
    kubectl get pods
    kubectl create -f pod-with-no-cpu.yml
    kubectl describe pods pod-with-no-cpu

    在上面的屏幕截图中,可以看出,如果我们没有为CPU指定任何请求或限制,则POD分配的CPU等于在限制范围内指定的限制,即在此示例中,容器获得了CPU限制和请求等于800m,即在极限范围内指定的极限
    在本文中,我们看到了在默认名称空间中创建限制范围的步骤。然后,我们针对Pod中的CPU限制和请求尝试了不同的方案。

    A5互联https://www.a5idc.net/

  • 相关阅读:
    硬件设计:蓝牙--蓝牙射频测试
    硬件设计:逻辑电平--差分信号(PECL、LVDS、CML)电平匹配
    硬件设计:元器件--二极管
    硬件设计:逻辑电平--CML
    硬件设计:POE--POE受电设备(PD)电路工作原理
    硬件设计:逻辑电平--LVDS
    硬件设计--阻抗匹配
    硬件设计:电路防护--TVS管
    硬件设计:POE--POE基础
    硬件设计:元器件--二极管常用的七种用法
  • 原文地址:https://www.cnblogs.com/a5idc/p/13489141.html
Copyright © 2011-2022 走看看