<p>I am launching a K8S cluster on AWS EKS with nodegroup. I spin up a few instances running as k8s nodes which has 4GiB and 2 vCPU.</p>
<p>How can I launch a pod which request 32GB memory and 8 vCPU. I am getting memory/cpu errors.</p>
<p>Is there a way for one pod running on top of a few nodes?</p>

Joey Yi Zhao
<p><code>How can I launch a pod which request 32GB memory and 8 vCPU. I am getting memory/cpu errors.</code></p>
<p>To get actual allocatable capacity of a worker node you do <code>kubectl get node &lt;node name&gt; -o json | jq .status.capacity</code>. You will find that a worker node capacity is not determine by its instance type.</p>
<p>You can then create new node group with instance type like m5.4xlarge for workload requires 8 vCPU and 32GB or more. Or you can also modify the existing node group <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/change-launch-config.html" rel="nofollow noreferrer">autoscaling group</a> with larger instance type. Finally in your deployment spec, you use <code>nodeSelector</code> to direct the scheduler where to run your pod:</p>
<pre><code>nodeselector:
  node.kubernetes.io/instance-type: m5.4xlarge
</code></pre>
<p><code>Is there a way for one pod running on top of a few nodes?</code></p>
<p>A pod can only run on a worker node.</p>
