k8s的资源限制及资源请求

容器的资源需求及限制:
  需求:requests   ##定义容器运行时至少需要资源
  限制:limits     ##定义容器运行时最多能分配的资源
 
  requests:pod.spec.containers.resources.requests
  limits:pod.spec.containers.resources.limits

QoS Class:(Quality of service class)服务质量等级
    Guranteed:优先级最高。pod中每个容器同时定义了cpu和memory的request和limit,并且两者的request=limit;
    Burstable:优先级中等。pod中至少有一个容器定义了cpu或memory的request属性,且二者不一定要相等;
    BestEffort:优先级最低。pod中没有任何一个容器定义了request或limit属性;

资源单位:
  CPU:CPU的测量单位是cpus,允许分数值。你可以使用前缀m来表示mili(千分之一)。
       例如100mcpu就是100 milicpu,等价于0.1CPU。
 
  内存:内存的测量单位是字节。
        你可以使用纯整数来表示内存,也可以使用一些前缀:E, P, T, G, M, K, Ei, Pi, Ti, Gi, Mi, Ki.

例:

 1 apiVersion: v1
 2 kind: Pod
 3 metadata:
 4   name: frontend
 5 spec:
 6   containers:
 7   - name: db
 8     image: mysql
 9     env:
10     - name: MYSQL_ROOT_PASSWORD
11       value: "password"
12     resources:
13       requests:
14         memory: "64Mi"
15         cpu: "250m"
16       limits:
17         memory: "128Mi"
18         cpu: "500m"
19   - name: wp
20     image: wordpress
21     resources:
22       requests:
23         memory: "64Mi"
24         cpu: "250m"
25       limits:
26         memory: "128Mi"
27         cpu: "500m"

猜你喜欢

转载自www.cnblogs.com/Smbands/p/10960536.html