<p>I am new to Kubernetes and I am facing a problem that I do not understand. I created a 4-node cluster in aws, 1 manager node (t2.medium) and 3 normal nodes (c4.xlarge) and they were successfully joined together using Kubeadm.</p>

<p>Then I tried to deploy three Cassandra replicas using <a href="https://github.com/kubernetes/examples/blob/master/cassandra/cassandra-statefulset.yaml" rel="nofollow noreferrer">this yaml</a> but the pod state does not leave the pending state; when I do:</p>

<pre><code>kubectl describe pods cassandra-0
</code></pre>

<p>I get the message </p>

<pre><code>0/4 nodes are available: 1 node(s) had taints that the pod didn't tolerate, 3 Insufficient memory.
</code></pre>

<p>And I do not understand why, as the machines should be powerful enough to cope with these pods and I haven't deployed any other pods. I am not sure if this means anything but when I execute:</p>

<pre><code>kubectl describe nodes
</code></pre>

<p>I see this message:</p>

<pre><code>Allocated resources:
  (Total limits may be over 100 percent, i.e., overcommitted.)
</code></pre>

<p>Therefore my question is why this is happening and how can I fix it.</p>

<p>Thank you for your attention</p>

João Matos
<p>Each node tracks the total amount of requested RAM (<code>resources.requests.memory</code>) for all pods assigned to it. That cannot exceed the total capacity of the machine. I would triple check that you have no other pods. You should see them on <code>kubectl describe node</code>.</p>
