Content Services cluster - Alfresco Content Services - 23.4 - 23.4 - Ready - Alfresco - external

Alfresco Content Services

Platform
Alfresco
Product
Alfresco Content Services
Release
23.4
License

Due to load or high availability needs, you might want to deploy a cluster of several repository nodes. This can easily be achieved by:

  • Giving the playbook the location of the shared storage used for the Content Services contentstore (See Shared storage documentation for details).
  • Specifying several hosts within the repository hosts group.
Note: As mentioned in the Scenario: Clustering for redundancy documentation, “All the servers in a cluster should have static IP addresses assigned to them”. Not meeting this prerequisite won’t prevent the playbook from working, but the cluster will most likely stop working if the IP addresses for the servers ever changes.

For example:

...
  repository:
    vars:
      cs_storage:
        type: nfs
        device: nas.infra.local:/exports/contentstore
        options: _netdev,noatime,nodiratime
    hosts:
      ecm1.infra.local:
      ecm2.infra.local:
      ingester.infra.local:
        cluster_keepoff: true
...

In some circumstances, you may want to have a repository node that’s dedicated to a scheduled task (such as ingesting massive amount of documents). Depending on the nature of the task, and the requirements of your organization, it may be preferable to leave this node out of the cluster. To leave nodes out of the cluster set the cluster_keepoff variable to true in one of the repository group nodes. It will provision the node with the repository and share services but make sure it’s not taking part in neither the share, nor the repository cluster realm.

A typical use case is to have a dedicated Solr tracking node. The playbook will then prefer to use that dedicated node, if it finds one, for Solr tracking and only use the other as a backup server (no load balancing).