Error message | Description | Suggested solution |
no nodes available to schedule pods.
| The cluster does not have nodes available for pod scheduling. | Check whether the nodes in the cluster are in the NotReady state. If a node is in the NotReady state, troubleshoot and repair the node.
Check whether the node selector, node affinity rules, or taint tolerations are configured for the pod. If no affinity rules are configured for the pod, increase the number of nodes in the node pool.
|
| The cluster does not have nodes that can fulfill the CPU or memory request of the pod. | On the Nodes page, view the pod, CPU, and memory usage and check the cluster resource utilization. Note When the CPU and memory utilization of a node is maintained at a low level, scheduling a new pod to the node does not exhaust the node resources. However, the scheduler still checks whether the new pod will cause node resource shortage during peak hours and attempts to avoid improper resource scheduling. When the CPU or memory resources in the cluster are exhausted, use the following methods: |
| The cluster does not have nodes that match the node affinity rules (nodeSelector) or affinity and anti-affinity rules (podAffinity and podAnitiAffinity) of the pod. | Check and modify the node affinity rules of the pod, including node labels, nodeSelector, nodeAffinity, taints, and tolerations. Check and modify the pod affinity rules of the pod. Assess whether nodes can match the pod affinity rules. If podAffinity is configured, check for pods that match podAffinity on the desired node. If podAntiAffinity is configured, check for pods that match podAntiAffinity on the desired node.
|
0/x nodes are available: x node(s) had volume node affinity conflict.
| The volume used by the pod has encounters a node affinity conflict because disk volumes cannot be mounted across zones. Consequently, the pod failed to be scheduled. | If the pod uses a statically provisioned persistent volume (PV) and you want to schedule the pod to a node in the zone of the PV, you must configure a node affinity rule for the pod. If the pod uses a dynamically provisioned PV, you must set the volumeBindingMode in the StorageClass of the disk volume to WaitForFirstConsumer. This way, the volume is created only after the pod is scheduled to a node. This ensures that the volume resides in the zone of the node that hosts the pod.
|
InvalidInstanceType.NotSupportDiskCategory
| The disk type is not supported by Elastic Compute Service (ECS) instances. | Refer to Overview of instance families and check the disk types supported by ECS instances. Mount a disk that is supported by ECS instances to the pod. |
0/x nodes are available: x node(s) had taints that the pod didn't tolerate.
| The pod failed to be scheduled to the desired node because the node has a taint. | If the taint is manually added by you, delete the taint. If the taint must be retained, you can add a toleration to the pod. For more information, see Taints and Tolerations and Manage taints. If the taint is added by the system, refer to the following solution and wait for the scheduler to reschedule the pod.
View taints added by the system
node.kubernetes.io/not-ready : The node is in the NotReady state.
node.kubernetes.io/unreachable : The node controller failed to access the node. The value of the Ready field of the node is Unknown .
node.kubernetes.io/memory-pressure : The node does not have sufficient memory resources.
node.kubernetes.io/disk-pressure : The node does not have sufficient disk space.
node.kubernetes.io/pid-pressure : The node does not have sufficient process IDs (PIDs).
node.kubernetes.io/network-unavailable : The network of the node is unavailable.
node.kubernetes.io/unschedulable : The node is in the Unschedulable state.
|
0/x nodes are available: x Insufficient ephemeral-storage.
| The node does not have sufficient ephemeral storage space. | Check whether the pod has a limit on ephemeral volumes, which is specified in spec.containers.resources.request.ephemeral-storage of the pod YAML file. If the value exceeds the ephemeral storage capacity of the node, the pod failed to be scheduled. Run the kubectl describe node | grep -A10 Capacity command to view the total ephemeral storage space of all nodes. If the storage space does not meet your requirement, expand the disks of the nodes or add nodes.
|
0/x nodes are available: pod has unbound immediate PersistentVolumeClaims.
| The persistent volume claim (PVC) failed to be bound to the pod. | Check whether the PVC or PV specified for the pod is created. You can run the kubectl describe pvc <pvc-name> or kubectl describe pv <pv-name> command to view the events of the PVC or PV. For more information, see Why does the system generate the "0/x nodes are available: x pod has unbound immediate PersistentVolumeClaims" event for a pod? |