Notes on Liferay clustering:
- Clustering for High Availability – Liferay Learn – Main page for clustering
- Here is what’s required to create an effectively functional DXP cluster: 1. Liferay DXP installed on separate application server nodes. 2. A database or database cluster that’s accessible to all nodes 3. A File Store that’s accessible to all nodes 4. A search engine (running outside of DXP) that is optionally clustered 5. Cluster Link configured to enable communication and cache replication across all nodes
- Configuring Unicast over TCP – Liferay Learn – Options for JGroups communication
- Configuring Cluster Link – Liferay Learn – Configurations for cluster
- Database Configuration for Cluster Nodes – Liferay Learn – This has option to optimize via separating the READ / WRITE operations via two synced instances of database.
- Nodes should not be run without clusterlink configuration in portal-ext.properties and proper configuration of UNICAST or MULTICAST, DB, etc. as described in Liferay Learn. There are architectural, caching, design, state management, pattern based, scheduler related and other reasons for running cluster by configuring all things properly.
- Don’t forget to refer Liferay Performance Tuning – Liferay – Refer performance tuning page to fine tune your JVM, Threads, Heap, GC, Database pooling, Elasticsearch pooling and other areas for each node or overall for the cluster via control panel or various files.
- Embedded database and embedded side-car search engine will break the cluster and you need remote / separate database and remote / separate Elasticsearch for cluster for work properly.
- Important list of files: server.xml, tcp.xml, portal-ext.properties, portal-setup-wizard.properties, web.xml, setenv.bat/sh, osgi/config, context.xml, jvm.options/.d, elasticsearch.yml
- Also, refer this blog: Clustering in Liferay CE 7.2 – Liferay
- Use Glowroot to monitor your cluster by referring this blog: Setting up Glowroot APM – Liferay – specifically check the Glowroot Central
Email me: Neil@HarwaniSystems.in