zoukankan      html  css  js  c++  java
  • Kubernetes中Pod资源控制

    1、何为资源控制

    Kubenetes中为Pod提供了资源请求和资源限制,当一个Pod被调度到某个k8s节点的中资源请求能够让该Pod至少拥有设定的资源,而资源限制是让该Pod占用资源不能超过其设定的值。通过resources对象进行资源控制

    如果k8s某台节点的资源不满足Pod的资源请求设置的值,则Pod无法被调度

    2、Resources实现

    resources 对象进行资源限制,具体:requests 要分分配的资源,limits为最高请求的资源值。可以简单理解为初始值和最大值。

    apiVersion: extensions/v1beta1
    kind: Deployment
    metadata:
      name: nginx
    spec:
      replicas: 1
      template:
        metadata:
          labels:
            app: nginx-hpa
        spec:
          containers:
          - name: nginx
            image: nginx:latest
            ports:
            - containerPort: 80
              name: http
              protocol: TCP
            resources:
              requests:
                cpu: 50m
                memory: 100Mi
              limits:
                cpu: 100m
                memory: 200Mi
    

    单位后缀m表示千分之一核,也就是说 1 Core = 1000m。因此该资源对象指定容器进程需要 50/1000 核(5%)才能被调度,并且允许最多使用 100/1000 核(10%)。同样,2000m 表示两个完整的 CPU 核心,你也可以写成 2 或者 2.0。

    也可以这样写

    resources:
      requests:
        cpu: 2
        memory: 1Gi
      limits:
        cpu: 4
       memory: 2Gi
    

    还可以这样写

    resources:
      requests:
        cpu: 0.5
        memory: 150mi
      limits:
        cpu: 2.5
       memory: 1Gi
    
  • 相关阅读:
    PAT 甲题 1155 Heap Paths
    PAT甲题 1014 Waiting in Line
    PAT甲题 1014 Waiting in Line
    AcWing 840. 模拟散列表
    2019新生赛 %%%xxh
    AcWing 240. 食物链
    AcWing 143. 最大异或对
    AcWing 838. 堆排序
    AcWing 836. 合并集合
    AcWing 837. 连通块中点的数量
  • 原文地址:https://www.cnblogs.com/jasonminghao/p/12575648.html
Copyright © 2011-2022 走看看