1、资源限制
容器资源限制:
- resources.limits.cpu
- resources.limits.memory
容器使用的最小资源需求,作为容器调度时资源分配的依据:- resources.requests.cpu
- resources.requests.memory
CPU单位:可以写m也可以写浮点数,例:0.5=500m,1=1000m
资源限制案例:
apiVersion: v1
kind: Pod
metadata:
labels:
run: shenhua
app: sh
name: shenhua
namespace: shopping
spec:
containers:
- image: nginx
name: chuangshuo
resources:
limits: #限制容器最多使用多少资源
cpu: 1
memory: 1Gi
requests: #容器使用的最小资源(对资源的规划,一般小于limits的20%-30%)
cpu: 0.7
memory: 700Mi
[root@k8s-master ~]# kubectl get pod -n shopping
NAME READY STATUS RESTARTS AGE
shenhua 1/1 Running 0 13m
[root@k8s-master ~]# kubectl describe pod -n shopping shenhua #查看详细信息
Name: shenhua
Namespace: shopping
Priority: 0
Node: k8s-node1/192.168.153.181
Start Time: Wed, 11 May 2022 11:08:20 +0800
Labels: app=sh
run=shenhua
Annotations: cni.projectcalico.org/containerID: 7b6fa167025cb2f0e56054cde552ad2a162ad5ea9897190a23882c64ae95ee7d
cni.projectcalico.org/podIP: 10.244.36.120/32
cni.projectcalico.org/podIPs: 10.244.36.120/32
Status: Running
IP: 10.244.36.120
IPs:
IP: 10.244.36.120
Containers:
chuangshuo:
Container ID: docker://58d7aac4e6886aca5d3630918d1b2edaeb060a28ab115ad13ae9dd53ba74c19d
Image: nginx
Image ID: docker-pullable://nginx@sha256:0d17b565c37bcbd895e9d92315a05c1c3c9a29f762b011a10c54a66cd53c9b31
Port: <none>
Host Port: <none>
State: Running
Started: Wed, 11 May 2022 11:08:22 +0800
Ready: True
Restart Count: 0
Limits:
cpu: 1
memory: 1Gi
Requests:
cpu: 700m
memory: 700Mi
Environment: <none>
Mounts:
/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-m4hj5 (ro)
Conditions:
Type Status
Initialized True
Ready True
ContainersReady True
PodScheduled True
Volumes:
kube-api-access-m4hj5:
Type: Projected (a volume that contains injected data from multiple sources)
TokenExpirationSeconds: 3607
ConfigMapName: kube-root-ca.crt
ConfigMapOptional: <nil>
DownwardAPI: true
QoS Class: Burstable
Node-Selectors: <none>
Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 19m default-scheduler Successfully assigned shopping/shenhua to k8s-node1
Normal Pulling <invalid> kubelet Pulling image "nginx"
Normal Pulled <invalid> kubelet Successfully pulled image "nginx" in 818.678571ms
Normal Created <invalid> kubelet Created container chuangshuo
Normal Started <invalid> kubelet Started container chuangshuo