Expand my Community achievements bar.

Dive into Adobe Summit 2024! Explore curated list of AEM sessions & labs, register, connect with experts, ask questions, engage, and share insights. Don't miss the excitement.
SOLVED

TarMK Farm Configuration in 6.x

Avatar

Level 4

I was going through AEM 6.1  TarMK setup. Here, we have multiple AEM instances with its own TarMK. Author is setup to replicate changes to all instances while changes in from publish are replicated using reverse replication to author and replication to all instances. 

But the problem here is that AEM 6.1 has stopped reverse replication of UGC and users. Reverse replication only works for pages. So what if I have any component for UGC in AEM implementation. Does that mean, I should never go for farm implementation? Setting up MongoDB is the only option?

1 Accepted Solution

Avatar

Correct answer by
Employee

You can still use a farm deployment model for your publish instances, however; starting with 6.1, UGC requires the use of Mongo SRP or Adobe SRP. To be clear, the SRP is only for UGC, other site content can continue to reside in the TarMK. More details can be found here - https://docs.adobe.com/docs/en/aem/6-2/administer/communities/srp.html

View solution in original post

14 Replies

Avatar

Correct answer by
Employee

You can still use a farm deployment model for your publish instances, however; starting with 6.1, UGC requires the use of Mongo SRP or Adobe SRP. To be clear, the SRP is only for UGC, other site content can continue to reside in the TarMK. More details can be found here - https://docs.adobe.com/docs/en/aem/6-2/administer/communities/srp.html

Avatar

Employee

Also, OOTB, Sling Content Distribution is used to distribute content instead of reverse replication now. https://docs.adobe.com/docs/en/aem/6-2/administer/communities/sync.html

Avatar

Level 4

How does this sync work between all TarMK instancesDoes enabling Sling Distribution agents, reverse replicates user data to author and then it syncs to other publish instances in farm?  All publish instances run in silos under farm and content syncs using author.

Avatar

Level 9

kaushal_mall wrote...

Also, OOTB, Sling Content Distribution is used to distribute content instead of reverse replication now. https://docs.adobe.com/docs/en/aem/6-2/administer/communities/sync.html

 

To be clear, Sling Content Distribution is used to sync users and user groups across a publish farm.  It is not used for page content nor UGC.  It does not sync users and user groups from publish back to author nor from author to publish.  It is not often the case that publish users (members) should have accounts on author.

UGC requires a shared store - a storage resource provider (SRP).  

In AEM 6.2,  JSRP (JCR SRP)  is suitable for production on a publish cluster, but the UGC will still not be visible on author, so moderation will need to take place on publish.  In order to moderate on author, you need MSRP (MongoDB) or ASRPP (Adobe cloud).

- JK

Avatar

Level 4

How about content moderation? If content is not available on author then how the moderators moderate the content? In other words, how to prevent unwanted/non approved UGC content to be displayed on publishers?

Avatar

Level 9

rajeev.yadav wrote...

How does this sync work between all TarMK instancesDoes enabling Sling Distribution agents, reverse replicates user data to author and then it syncs to other publish instances in farm?  All publish instances run in silos under farm and content syncs using author.

 

(I think we posted at the same time.)

Just in case, the answer is No - site visitors who create accounts, or are given accounts, on a publish instances are NOT copied/reverse replication/sync'd to author.  Those accounts are not approprite for author.

It may be that the synchronization of user adata among publish instances in a publish farm is managed by a process in the author environment, but the publish accounts are not created on author.

See also https://docs.adobe.com/docs/en/aem/6-2/administer/security/security/sync.html  (fixed link)

- JK

Avatar

Level 4

Thanks JK. 

The link you share does not seems to be working. I am still wondering how the process on author will sync the data across various publish instances without syncing the content back in author. Lets say the author process triggers  command on instance 1 to replicate the data on other publish instances, it can only happen if there is a relationship setup/configured with all other publish instances. Secondly, does process on author keeps on pinging each publish instance to check if something changed in user data that need to be synced across all publish instances?  

Avatar

Employee

Hi,

SCD is explained here[0], basically the author instance acts as the orchestrator, so users and groups are sync'd via the author, but the content is never persisted in the author instance. 

SCD is only for users and groups. There is a console on the author instance from which the communities/forum users registered on the publish instances can be viewed, the calls are made via tunnel service to pull the users from the publish instance(i.e.just the data is pulled back and displayed in the console, content is never persisted in the author instance). In this way you can administer the publish users from the author console, i.e. approve/ban users

For content, you must use AEM Communities and the storage option is xSRP. In which all the publish instances connect to a central storage area, thus when one instance writes to this storage area, the other will pick up the new content when the page is refreshed. The storage option can be Adobe or Mongo Storage Resource Provider.

The design for UGC was done with performance and scalability in mind, once you start increasing the volume of UGC, reverse replication ran into issues, hence why it is no longer supported for UGC.

Regards,

Opkar

[0] https://github.com/apache/sling/blob/trunk/contrib/extensions/distribution/README.md

Avatar

Employee

JSRP is only really suitable for single publish instance deployments, as setting up Mongo for a cluster on the publish tier is not recommended, you would need to get approval for your use case and architecture from daycare/engineering before Adobe would support it [0]. 

Unfortunately, quite a few of the UGC components that were previously available in previous versions of AEM are no longer available in AEM Sites and you would need to use the communities components.

Regards,

Opkar

[0]https://docs.adobe.com/docs/en/aem/6-2/deploy/platform/aem-with-mongodb.html

Avatar

Level 9

rajeev.yadav wrote...

The link you share does not seems to be working.

fixed it (sorry 'bout that)

- JK

Avatar

Level 9

 "setting up Mongo for a cluster on the publish tier is not recommended"

Be aware - the recommendations for the platform store and for UGC store are different as the storage locations and characteristics of working with the various forms of content are not the same.

For example, from MSRP - MongoDB Storage Resource Provider

MongoDB Replica Set

For the production environment, it is strongly recommended to setup a replica set, a cluster of MongoDB servers that implements master-slave replication and automated failover.

- JK

Avatar

Level 7

Yes rajeev, By default, author will poll for changes every 30 seconds.  To alter this interval  you can modify polling interval in below osgi servic from felix console.

Apache Sling Distribution Trigger - Scheduled Triggers Factory

regards,

Ankur Ahlawat

AEM CQ5 Tutorials

Avatar

Employee

JK Kendall wrote...

 "setting up Mongo for a cluster on the publish tier is not recommended"

Be aware - the recommendations for the platform store and for UGC store are different as the storage locations and characteristics of working with the various forms of content are not the same.

For example, from MSRP - MongoDB Storage Resource Provider

MongoDB Replica Set

For the production environment, it is strongly recommended to setup a replica set, a cluster of MongoDB servers that implements master-slave replication and automated failover.

- JK

 

Hi Janice,

my advice was in response to your comment about a publish cluster:

>In AEM 6.2,  JSRP (JCR SRP)  is suitable for production on a publish cluster, but the UGC will still not be visible on author, so moderation will need to take place on publish.  In order to moderate on author, you need MSRP (MongoDB) or ASRPP (Adobe cloud).

When talking about a "publish cluster", I assume you are talking about AEM clustering with MongoDB, which like I said is not recommended.

From the docs[0]: "JSRP is the default provider for accessing all UGC on a single AEM instance

If a client wishes to use MSRP with a publish farm, then as you rightly point out, Mongo recommend a replica set. 

Regards,

Opkar

[0] https://docs.adobe.com/docs/en/aem/6-2/develop/communities/scf/srp.html#JSRP

Avatar

Level 9

Hi Opkar,

Opkar Gill wrote...

...When talking about a "publish cluster", I assume you are talking about AEM clustering with MongoDB, which like I said is not recommended.

From the docs[0]: "JSRP is the default provider for accessing all UGC on a single AEM instance

If a client wishes to use MSRP with a publish farm, then as you rightly point out, Mongo recommend a replica set. 

Regards,

Opkar

[0] https://docs.adobe.com/docs/en/aem/6-2/develop/communities/scf/srp.html#JSRP

 

The quote from the docs is in the developer section in regards to what you get OOTB when setting up a single author and single publish.

If you go to topologies section [1] you'll see there is a reference to an Oak cluster (though I make no claim to expertise on setting up AEM for production!)

Hope that helps.

[1] Recommended Topologies for Communities : For Production

- JK