[k8s.io] Density [Feature:Performance] should allow starting 30 pods per node {Kubernetes e2e suite}
Problem
https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/kubernetes-kubemark-500-gce/4685/ Failed: [k8s.io] Density [Feature:Performance] should allow starting 30 pods per node {Kubernetes e2e suite} [code block] Previous issues for this test: #26185 #27142
Unverified for your environment
Select your OS to check compatibility.
1 Fix
Increase Kubernetes Node Pod Limit Configuration
The test failure indicates that the Kubernetes cluster is unable to schedule 30 pods per node due to resource constraints or misconfiguration. This can occur if the kubelet's maximum pod configuration is set lower than 30 or if the node's available resources (CPU, memory) are insufficient to support the requested pods.
Awaiting Verification
Be the first to verify this fix
- 1
Check Current Pod Limit
Verify the current maximum pod limit set for the kubelet on the nodes. This can be done by checking the kubelet configuration file or the command-line arguments used to start the kubelet.
bashkubectl get nodes -o=jsonpath='{.items[*].status.nodeInfo.pods}' - 2
Update Kubelet Configuration
If the maximum pod limit is less than 30, update the kubelet configuration to allow for 30 pods per node. This can be done by modifying the kubelet service file or the kubelet configuration file (kubelet.yaml) to set the 'maxPods' parameter to 30.
bashecho 'KUBELET_EXTRA_ARGS=--max-pods=30' >> /etc/default/kubelet - 3
Restart Kubelet Service
After updating the kubelet configuration, restart the kubelet service to apply the changes. This will ensure that the new pod limit is recognized by the kubelet.
bashsystemctl restart kubelet - 4
Verify Node Resource Availability
Ensure that each node has sufficient resources (CPU and memory) to support 30 pods. Check the resource allocation and usage on the nodes to confirm that they can handle the additional pods.
bashkubectl describe nodes - 5
Run Density Test Again
Re-run the Kubernetes density test to confirm that the nodes can now successfully schedule 30 pods each. Monitor the test results for any failures.
bashkubectl run density-test --image=your-test-image --replicas=30
Validation
Confirm that the density test passes without errors and that each node is successfully running 30 pods. You can check the status of the pods using 'kubectl get pods --all-namespaces' and verify the resource usage on each node.
Sign in to verify this fix
Environment
Submitted by
Alex Chen
2450 rep