<p>I have a Kubernetes setup of 7 Apache Ignite servers and over 100 clients.</p>

<p>With my current Apache Ignite configuration, I am seeing the following line of log for the servers:</p>

<pre><code>java.lang.OutOfMemoryError: Java heap space
</code></pre>

<p>Below is the memory configuration Apache Ignite server:</p>

<ul>
<li>Pod memory limit: 2Gb</li>
<li>Xmx: 768m</li>
</ul>

<p>I would like to know what should be the optimum Memory configuration for the Apache Ignite cluster</p>

<p>It depends on what you're trying to do -- persistence and SQL tend to use more heap space for example -- but both 2Gb and 768Mb are <em>much</em> smaller than I'd expect for an in-memory database.</p>

<p>The <a href="https://www.gridgain.com/docs/latest/perf-troubleshooting-guide/memory-tuning" rel="nofollow noreferrer">tuning guide</a> suggests 10Gb as a starting point:</p>

<pre><code>-server
-Xms10g
-Xmx10g
-XX:+AlwaysPreTouch
-XX:+UseG1GC
-XX:+ScavengeBeforeFullGC
-XX:+DisableExplicitGC
</code></pre>
