FG
☁️ Cloud & DevOpsAmazon

[k8s.io] Density [Feature:Performance] should allow starting 30 pods per node {Kubernetes e2e suite}

Freshabout 21 hours ago
Mar 14, 20260 views
Confidence Score55%
55%

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

Canonical Fix
Unverified Fix
New Fix – Awaiting Verification

Increase Kubernetes Node Pod Limit Configuration

Medium Risk

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. 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.

    bash
    kubectl get nodes -o=jsonpath='{.items[*].status.nodeInfo.pods}'
  2. 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.

    bash
    echo 'KUBELET_EXTRA_ARGS=--max-pods=30' >> /etc/default/kubelet
  3. 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.

    bash
    systemctl restart kubelet
  4. 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.

    bash
    kubectl describe nodes
  5. 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.

    bash
    kubectl 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

AC

Alex Chen

2450 rep

Tags

kubernetesk8scontainerspriority/critical-urgentsig/scalabilitykind/flake