You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<p>Make sure your machine or container platform can provide sufficient memory and CPU for your desired usage of Keycloak.
90
-
See <ahref="https://www.keycloak.org/high-availability/concepts-memory-and-cpu-sizing">Concepts for sizing CPU and memory resources</a> for more on how to get started with production sizing.</p>
90
+
See <ahref="{links_high-availability_concepts-memory-and-cpu-sizing_url}">{links_high-availability_concepts-memory-and-cpu-sizing_name}</a> for more on how to get started with production sizing.</p>
<p>Make sure your machine or container platform can provide sufficient memory and CPU for your desired usage of Keycloak.
90
-
See <ahref="https://www.keycloak.org/high-availability/concepts-memory-and-cpu-sizing">Concepts for sizing CPU and memory resources</a> for more on how to get started with production sizing.</p>
90
+
See <ahref="{links_high-availability_concepts-memory-and-cpu-sizing_url}">{links_high-availability_concepts-memory-and-cpu-sizing_name}</a> for more on how to get started with production sizing.</p>
91
91
</div>
92
92
<divclass="paragraph">
93
93
<p>Make sure you have Minikube installed, ideally with the Ingress addon enabled.</p>
<p>Make sure your machine or container platform can provide sufficient memory and CPU for your desired usage of Keycloak.
90
-
See <ahref="https://www.keycloak.org/high-availability/concepts-memory-and-cpu-sizing">Concepts for sizing CPU and memory resources</a> for more on how to get started with production sizing.</p>
90
+
See <ahref="{links_high-availability_concepts-memory-and-cpu-sizing_url}">{links_high-availability_concepts-memory-and-cpu-sizing_name}</a> for more on how to get started with production sizing.</p>
<p>Make sure your machine or container platform can provide sufficient memory and CPU for your desired usage of Keycloak.
90
-
See <ahref="https://www.keycloak.org/high-availability/concepts-memory-and-cpu-sizing">Concepts for sizing CPU and memory resources</a> for more on how to get started with production sizing.</p>
90
+
See <ahref="{links_high-availability_concepts-memory-and-cpu-sizing_url}">{links_high-availability_concepts-memory-and-cpu-sizing_name}</a> for more on how to get started with production sizing.</p>
<p>As you monitor your Keycloak workload, check to see if the CPU or memory is under or over utilized. Consult <ahref="https://www.keycloak.org/high-availability/concepts-memory-and-cpu-sizing">Concepts for sizing CPU and memory resources</a> to better tune the resources available to the Java Virtual Machine (JVM).</p>
115
+
<p>As you monitor your Keycloak workload, check to see if the CPU or memory is under or over utilized. Consult <ahref="{links_high-availability_concepts-memory-and-cpu-sizing_url}">{links_high-availability_concepts-memory-and-cpu-sizing_name}</a> to better tune the resources available to the Java Virtual Machine (JVM).</p>
116
116
</div>
117
117
<divclass="paragraph">
118
118
<p>Before increasing the amount of memory available to the JVM, in particular when experiencing an out of memory error, it is best to determine what is contributing to the increased footprint using a heap dump. Excessive response times may also indicate the HTTP work queue is too large and tuning for load shedding would be better than simply providing more memory. See the following section.</p>
<p>Keycloak automatically adjusts the number of used threads based upon how many cores you make available. Manually changing the thread count can improve overall throughput. For more details, see <ahref="https://www.keycloak.org/high-availability/concepts-threads">Concepts for configuring thread pools</a>. However, changing the thread count must be done in conjunction with other JVM resources, such as database connections; otherwise, you may be moving a bottleneck somewhere else. For more details, see <ahref="https://www.keycloak.org/high-availability/concepts-database-connections">Concepts for database connection pools</a>.</p>
123
+
<p>Keycloak automatically adjusts the number of used threads based upon how many cores you make available. Manually changing the thread count can improve overall throughput. For more details, see <ahref="{links_high-availability_concepts-threads_url}">{links_high-availability_concepts-threads_name}</a>. However, changing the thread count must be done in conjunction with other JVM resources, such as database connections; otherwise, you may be moving a bottleneck somewhere else. For more details, see <ahref="{links_high-availability_concepts-database-connections_url}">{links_high-availability_concepts-database-connections_name}</a>.</p>
124
124
</div>
125
125
<divclass="paragraph">
126
-
<p>To limit memory utilization of queued work and to provide for load shedding, see <ahref="https://www.keycloak.org/high-availability/concepts-threads#load-shedding">Concepts for configuring thread pools</a>.</p>
126
+
<p>To limit memory utilization of queued work and to provide for load shedding, see <ahref="{links_high-availability_concepts-threads_url}#load-shedding">{links_high-availability_concepts-threads_name}</a>.</p>
127
127
</div>
128
128
<divclass="paragraph">
129
-
<p>If you are experiencing timeouts in obtaining database connections, you should consider increasing the number of connections available. For more details, see <ahref="https://www.keycloak.org/high-availability/concepts-database-connections">Concepts for database connection pools</a>.</p>
129
+
<p>If you are experiencing timeouts in obtaining database connections, you should consider increasing the number of connections available. For more details, see <ahref="{links_high-availability_concepts-database-connections_url}">{links_high-availability_concepts-database-connections_name}</a>.</p>
<p>A single JVM has a limit on how many concurrent requests it can handle. Additional server instances can provide roughly linear scaling of throughput until associated resources, such as the database or distributed caching, limit that scaling.</p>
148
148
</div>
149
149
<divclass="paragraph">
150
-
<p>In general, consider allowing the Keycloak Operator to handle horizontal scaling concerns. When using the Operator, set the Keycloak custom resource <code>spec.instances</code> as desired to horizontally scale. For more details, see <ahref="https://www.keycloak.org/high-availability/deploy-keycloak-kubernetes">Deploying Keycloak for HA with the Operator</a>.</p>
150
+
<p>In general, consider allowing the Keycloak Operator to handle horizontal scaling concerns. When using the Operator, set the Keycloak custom resource <code>spec.instances</code> as desired to horizontally scale. For more details, see <ahref="{links_high-availability_deploy-keycloak-kubernetes_url}">{links_high-availability_deploy-keycloak-kubernetes_name}</a>.</p>
151
151
</div>
152
152
<divclass="paragraph">
153
153
<p>If you are not using the Operator, please review the following:</p>
<p>To avoid losing service availability when a whole site is unavailable, see the high availability guide for more information on a multi-site deployment. See <ahref="https://www.keycloak.org/high-availability/introduction">Multi-site deployments</a>.</p>
179
+
<p>To avoid losing service availability when a whole site is unavailable, see the high availability guide for more information on a multi-site deployment. See <ahref="{links_high-availability_introduction_url}">{links_high-availability_introduction_name}</a>.</p>
Scaling on memory is generally not needed with persistent sessions enabled, and should not be needed at all when using remote Infinispan. If you are using persistent sessions or remote Infinispan and you experience memory issues, it is best to fully diagnose the problem and revisit the <ahref="https://www.keycloak.org/high-availability/concepts-memory-and-cpu-sizing">Concepts for sizing CPU and memory resources</a> guide. Adjusting the memory request and limit is preferable to horizontal scaling.
223
+
Scaling on memory is generally not needed with persistent sessions enabled, and should not be needed at all when using remote Infinispan. If you are using persistent sessions or remote Infinispan and you experience memory issues, it is best to fully diagnose the problem and revisit the <ahref="{links_high-availability_concepts-memory-and-cpu-sizing_url}">{links_high-availability_concepts-memory-and-cpu-sizing_name}</a> guide. Adjusting the memory request and limit is preferable to horizontal scaling.
<p>Make sure your machine or container platform can provide sufficient memory and CPU for your desired usage of Keycloak.
90
-
See <ahref="https://www.keycloak.org/high-availability/concepts-memory-and-cpu-sizing">Concepts for sizing CPU and memory resources</a> for more on how to get started with production sizing.</p>
90
+
See <ahref="{links_high-availability_concepts-memory-and-cpu-sizing_url}">{links_high-availability_concepts-memory-and-cpu-sizing_name}</a> for more on how to get started with production sizing.</p>
91
91
</div>
92
92
<divclass="paragraph">
93
93
<p>Make sure you have <ahref="https://openjdk.java.net/">OpenJDK 21</a> installed.</p>
0 commit comments