April 20, 2020
Estimated Post Reading Time ~

Cold Standby Repository Maintenance in AEM TarMK

Note:
If you run Online Revision Cleanup on the primary instance, the manual procedure presented below is not needed. Addittionally, if you are using Online Revision Cleanup, the cleanup () operation on the standby instance will be performed automatically.

Note:
Do not run offline revision cleanup on the standby. It is not needed and it will not reduce the segmentstore size.

Adobe recommends runing maintenance on a regular basis to prevent excessive repository growth over time. To manually perform cold standby repository maintenance, follow the steps below:
  • Stop the standby process on the standby instance by going to the JMX Console and using the org.apache.jackrabbit.oak: Status ("Standby") bean. For more info on how to do this, see the above section on Monitoring.
  • Stop the primary AEM instance.
  • Run the oak compaction tool on the primary instance. For more details, see Maintaining the Repository.
  • Start the primary instance.
  • Start the standby process on the standby instance using the same JMX bean as described in the first step.
  • Watch the logs and wait for synchronization to complete. It is possible that substantial growth in the standby repository will be seen at this time.
  • Run the cleanup() operation on the standby instance, using the same JMX bean as described in the first step.
It may take longer than usual for the standby instance to complete synchronization with the primary as offline compaction effectively rewrites the repository history, thus making computation of the changes in the repositories take more time. It should also be noted that once this process completes, the size of the repository on the standby will be roughly the same size as the repository on the primary.
As an alternative, the primary repository can be copied over to the standby manually after running compaction on the primary, essentially rebuilding the standby each time compaction runs.

Data Store Garbage Collection
It is important to run garbage collection on file datastore instances from time to time as otherwise, deleted binaries will remain on the filesystem, eventually filling up the drive. To run garbage collection, follow the below procedure:

Run cold standby repository maintenance as described in the section above.

After the maintenance process has completed and the instances have been restarted:
  • On the primary, run the data store garbage collection via the relevant JMX bean as described in this article.
  • On the standby, the data store garbage collection is available only via the BlobGarbageCollection MBean - startBlobGC(). The RepositoryManagement MBean is not available on the standby.
Note:
In case you are not using a shared data store, garbage collection will first have to be run on primary and then on the standby.


By aem4beginner

No comments:

Post a Comment

If you have any doubts or questions, please let us know.