1-2 给容器和PODS 分配CPU资源

这一小节讲述 如何对容器分配CPU资源和对CPU资源使用作限制。
一个容器被保证有足够的CPU资源能够被调用,可是也不容许使用超过CPU资源的限制。api

建立一个命名空间ide

kubectl create namespace cpu-examplespa

定义一个CPU资源请求和CPU资源限制内存

资源请求
resources:requests资源

资源限制
resources:limitsget

在这个练习中,你建立了一个POD拥有 0.5cpu和1cpu的限制
apiVersion: v1
kind: Pod
metadata:
name: cpu-demo
namespace: cpu-example
spec:
containers:requests

  • name: cpu-demo-ctr
    image: vish/stress
    resources:
    limits:
    cpu: "1"
    requests:
    cpu: "0.5"
    args:
    • -cpus
    • "2"

args 设置了分配2个CPUit

建立PODio

kubectl create -f https://k8s.io/examples/pods/resource/cpu-request-limit.yaml --namespace=cpu-exampleclass

验证POD是否在运行

kubectl get pod cpu-demo --namespace=cpu-example

查看POD的详细信息

kubectl get pod cpu-demo --output=yaml --namespace=cpu-example

显示POD的资源分配为 500 milliCPU 和 1 CPU的限制

resources:
limits:
cpu: "1"
requests:
cpu: 500m

能够使用如下命令来获取容器的指标

kubectl top pod cpu-demo --namespace=cpu-example

如下为显示的内存分配指标
NAME CPU(cores) MEMORY(bytes)
cpu-demo 974m <something>

能够看到,虽然CPU设置了请求分配是2,可是限制是1,因此多于的资源请求会被砍掉。

CPU 单元

CPU资源使用CPU单元来衡量。在k8s里面,一个CPU至关于:

相关文章
相关标签/搜索