Hello, picking a random node of my cluster I see two weird things:
- cpu limit is far smaller than cpu allocatable (300m vs 1930m)
- cpu request > cpu limit (610m vs 300m)
Why is so? For 1. I’d expect my node to use 100% of allocatable cpu if they need; for 2. it goes against what I read: request value should be smaller than the limit.
$ kubectl describe node/ip-10-0-101-161.eu-central-1.compute.internal
Name: ip-10-0-101-161.eu-central-1.compute.internal
Roles: <none>
Labels: beta.kubernetes.io/arch=amd64
beta.kubernetes.io/instance-type=t3.small
beta.kubernetes.io/os=linux
failure-domain.beta.kubernetes.io/region=eu-central-1
failure-domain.beta.kubernetes.io/zone=eu-central-1a
kubernetes.io/arch=amd64
kubernetes.io/hostname=ip-10-0-101-161.eu-central-1.compute.internal
kubernetes.io/os=linux
node.kubernetes.io/instance-type=t3.small
topology.kubernetes.io/region=eu-central-1
topology.kubernetes.io/zone=eu-central-1a
Annotations: node.alpha.kubernetes.io/ttl: 0
volumes.kubernetes.io/controller-managed-attach-detach: true
CreationTimestamp: Fri, 07 Aug 2020 17:38:02 +0200
Taints: <none>
Unschedulable: false
Lease:
HolderIdentity: ip-10-0-101-161.eu-central-1.compute.internal
AcquireTime: <unset>
RenewTime: Wed, 12 Aug 2020 11:24:09 +0200
Conditions:
Type Status LastHeartbeatTime LastTransitionTime Reason Message
---- ------ ----------------- ------------------ ------ -------
MemoryPressure False Wed, 12 Aug 2020 11:23:15 +0200 Fri, 07 Aug 2020 17:38:02 +0200 KubeletHasSufficientMemory kubelet has sufficient memory available
DiskPressure False Wed, 12 Aug 2020 11:23:15 +0200 Fri, 07 Aug 2020 17:38:02 +0200 KubeletHasNoDiskPressure kubelet has no disk pressure
PIDPressure False Wed, 12 Aug 2020 11:23:15 +0200 Fri, 07 Aug 2020 17:38:02 +0200 KubeletHasSufficientPID kubelet has sufficient PID available
Ready True Wed, 12 Aug 2020 11:23:15 +0200 Fri, 07 Aug 2020 17:38:22 +0200 KubeletReady kubelet is posting ready status
Addresses:
InternalIP: 10.0.101.161
ExternalIP: <REDACTED>
Hostname: ip-10-0-101-161.eu-central-1.compute.internal
InternalDNS: ip-10-0-101-161.eu-central-1.compute.internal
ExternalDNS: <REDACTED>
Capacity:
attachable-volumes-aws-ebs: 25
cpu: 2
ephemeral-storage: 104845292Ki
hugepages-1Gi: 0
hugepages-2Mi: 0
memory: 2002016Ki
pods: 11
Allocatable:
attachable-volumes-aws-ebs: 25
cpu: 1930m
ephemeral-storage: 95551679124
hugepages-1Gi: 0
hugepages-2Mi: 0
memory: 1514592Ki
pods: 11
System Info:
Machine ID: ec26981de68c956e67b9fedcb9a1ac2f
System UUID: EC26981D-E68C-956E-67B9-FEDCB9A1AC2F
Boot ID: 2c7159a2-b16b-45b8-8fab-358f94c0d649
Kernel Version: 4.14.186-146.268.amzn2.x86_64
OS Image: Amazon Linux 2
Operating System: linux
Architecture: amd64
Container Runtime Version: docker://19.3.6
Kubelet Version: v1.17.9-eks-4c6976
Kube-Proxy Version: v1.17.9-eks-4c6976
ProviderID: aws:///eu-central-1a/i-050a41dcf25b6635e
Non-terminated Pods: (11 in total)
Namespace Name CPU Requests CPU Limits Memory Requests Memory Limits AGE
--------- ---- ------------ ---------- --------------- ------------- ---
amazon-cloudwatch cloudwatch-agent-v45h2 200m (10%) 200m (10%) 200Mi (13%) 200Mi (13%) 46h
amazon-cloudwatch fluentd-cloudwatch-7b5tp 100m (5%) 0 (0%) 200Mi (13%) 400Mi (27%) 46h
cert-manager cert-manager-9b8969d86-l7ckr 0 (0%) 0 (0%) 0 (0%) 0 (0%) 4d17h
cert-manager cert-manager-cainjector-8545fdf87c-bjw8h 0 (0%) 0 (0%) 0 (0%) 0 (0%) 4d17h
cert-manager cert-manager-webhook-8c5db9fb6-9dg8n 0 (0%) 0 (0%) 0 (0%) 0 (0%) 4d17h
ingress-nginx ingress-nginx-controller-5cc4589cc8-hxjs2 100m (5%) 0 (0%) 90Mi (6%) 0 (0%) 4d17h
kube-system aws-node-gtdsf 10m (0%) 0 (0%) 0 (0%) 0 (0%) 4d17h
kube-system cluster-autoscaler-695cb999b7-nn7ts 100m (5%) 100m (5%) 300Mi (20%) 300Mi (20%) 4d17h
kube-system kube-proxy-b9j52 100m (5%) 0 (0%) 0 (0%) 0 (0%) 4d17h
kubernetes-dashboard dashboard-metrics-scraper-76585494d8-ggtxr 0 (0%) 0 (0%) 0 (0%) 0 (0%) 4d17h
kubernetes-dashboard kubernetes-dashboard-5996555fd8-zc56p 0 (0%) 0 (0%) 0 (0%) 0 (0%) 4d17h
Allocated resources:
(Total limits may be over 100 percent, i.e., overcommitted.)
Resource Requests Limits
-------- -------- ------
cpu 610m (31%) 300m (15%)
memory 790Mi (53%) 900Mi (60%)
ephemeral-storage 0 (0%) 0 (0%)
hugepages-1Gi 0 (0%) 0 (0%)
hugepages-2Mi 0 (0%) 0 (0%)
attachable-volumes-aws-ebs 0 0
Events: <none>
Cluster information:
Kubernetes version: 1.17.9
Cloud being used: AWS EKS on t3.small nodes
Installation method: N/A
Host OS: Amazon Linux 2
CNI and version: amazon-k8s-cni 1.6.3
CRI and version: docker 19.3.6