Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

SOLVED

TarMK Farm Configuration in 6.x

rajeev_yadav
Level 4
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
Surya_Lamech
Correct answer by
Employee
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
Surya_Lamech
Correct answer by
Employee
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

kaushal_mall
Employee
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

rajeev_yadav
Level 4
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.

JK_Kendall
Level 8
Level 8

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

rajeev_yadav
Level 4
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?

JK_Kendall
Level 8
Level 8

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

rajeev_yadav
Level 4
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?  

Opkar_Gill
Employee
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

Opkar_Gill
Employee
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

JK_Kendall
Level 8
Level 8

rajeev.yadav wrote...

The link you share does not seems to be working.

fixed it (sorry 'bout that)

- JK

JK_Kendall
Level 8
Level 8

 "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

AnkurAhlawat
Level 7
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

Opkar_Gill
Employee
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

JK_Kendall
Level 8
Level 8

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