<p>Each <code>t2.micro</code> node should be able to run 4 pods according to this <a href="https://dev.to/wingkwong/how-to-fix-insufficient-pods-issue-when-deploying-to-amazon-eks-d35" rel="noreferrer">article</a> and the command <code>kubectl get nodes -o yaml | grep pods</code> output.</p>
<p>But I have two nodes and I can launch only 2 pods. 3rd pod gets stuck with the following error message.</p>
<p>Could it be the application using too much resource and as a result its not launching more pods? If that was the case it could indicate <code>Insufficient CPU or memory</code>.</p>
<pre><code>Events:
  Type     Reason            Age                From               Message
  ----     ------            ----               ----               -------
  Warning  FailedScheduling  33s (x2 over 33s)  default-scheduler  0/2 nodes are available: 2 Too many pods.
</code></pre>

<p>According to the AWS documentation <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI" rel="noreferrer">IP addresses per network interface per instance type</a> the <code>t2.micro</code> only has <code>2</code> Network Interfaces and <code>2</code> IPv4 addresses <strong>per interface</strong>. So you are right, only 4 IP addresses.</p>
<p>But EKS deploys <code>DaemonSets</code> for e.g. CoreDNS and kube-proxy, so some IP addresses <strong>on each node</strong> is already allocated.</p>
