'AWS EKS "0/3 nodes are available: 3 Too many pods" Error
I have 3 node group t3a.micro and I installed ebs csi provider and storage-class.
I want deploy statefulset on mysql this is my manifest
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: mysql-statefulset
spec:
serviceName: mysql-service
replicas: 1
selector:
matchLabels:
app: mysql-pod
template:
metadata:
labels:
app: mysql-pod
spec:
containers:
- name: mysql
image: mysql
ports:
- containerPort: 3306
volumeMounts:
- name: pvc-test
mountPath: /var/lib/mysql
volumeClaimTemplates:
- metadata:
name: pvc-test
spec:
storageClassName: gp2-retain
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 1Gi
Warning FailedScheduling 20s (x16 over 20m) default-scheduler 0/3 nodes are available: 3 Too many pods.
Solution 1:[1]
As mentioned in AWS EKS - Only 2 pod can be launched - Too many pods error
According to https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI, t3a.micro
type has
Maximum network interfaces: 2
Private IPv4 addresses per interface: 2
IPv6 addresses per interface: 2
But EKS deploys DaemonSets
for e.g. CoreDNS and kube-proxy, so some IP addresses on each node is already allocated.
Possible fix is just upgrade your instance to be a more capable type.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|---|
Solution 1 | keypoint |