We all know AEM 6.5 is a feature-packed upgrade from Adobe. In this blog post, we share the step-by-step upgrade process curated and successfully followed for an app server upgrade of AEM 6.5.
This post outlines the steps, to upgrade an AEM on Application Server set-up.
Please note, steps mentioned below are meant for Tomcat application server. The process outlined will perform an upgrade from AEM 6.4 to AEM 6.5.
$CATALINA_HOME/bin/catalina.sh starthttps://aemauthor/authorserver:port/system/console/bundles(http://server:port/manager/html)SLING_HOME= $AEM-HOME/crx-quickstart java -Xmx4096m -XX:MaxPermSize=2048M -jar crx2oak.jar --load-profile segment-fds /crx-quickstart/launchpad/sling.properties file and save :
sling.installer.dirsling.installer.dirfelix.cm.dirgranite.product.versionorg.osgi.framework.system.packagesosgi-core-packagesosgi-compendium-servicesjre-*sling.run.mode.install.optionsRemove the files and folders no longer required. The items you need to remove are:
rm -rf crx-quickstart/launchpad/startupfind crx-quickstart/launchpad -type f -name "org.apache.sling.launchpad.base.jar*" -exec rm -f {} \rm -f crx-quickstart/launchpad/felix/bundle0/BootstrapCommandFile_timestamp.txtfind crx-quickstart/launchpad -type f -name "sling.options.file" -exec rm -rfWe now need to create Segment Tar config and external File Data Store config that will be used with the AEM 6.5 setup. You can do this by creating two files with the following naming conventions under /crx-quickstart/install/ folder:
org.apache.jackrabbit.oak.segment.SegmentNodeStoreService.configorg.apache.jackrabbit.oak.plugins.blob.datastore.FileDataStore.configThese two files will configure AEM to use a TarMK node store and a File data store.
Let us setup these config files for use with the AEM 6.5:
Add the following line to org.apache.jackrabbit.oak.segment.SegmentNodeStoreService.config:
customBlobStore=B”true”
This Boolean flag will make sure that FileDataStore is hosted separately from the Segment Tar.
Next is add the following lines to org.apache.jackrabbit.oak.plugins.blob.datastore.FileDataStore.config:
path=”./crx-quickstart/repository/datastore” minRecordLength=4096
minRecordLength=4096
You now need to change the run modes in the AEM 6.5 WAR file. Do that, first create a temporary folder that will be used for the AEM 6.5 WAR. The name of the folder in this example will be /temp.
Once the war file has been copied over, extract its contents by running the below command from the /temporary directory:
jar xvf aem-quickstart-6.5.0.war
After WAR has been extracted, go to the WEB-INF directory, and edit the web.xml file to change the run modes.
To find the location where they are set in the XML, look for the sling.run.modes option. Once you find it, change the run modes in the next line of the configuration, which by default is set to author:
author
Change the above author run mode to following run modes author,crx3,crx3tar. After the changes, it should appear like below:
init-param param-name sling.run.modesparam-value author,crx3,crx3tar/init-param load-on-startup 100/servletNow we have to re-package WAR with all the modified contents, using the command below
jar cvf aemauthor.war
As a last step, please deploy new WAR file of AEM 6.5 on Tomcat and monitor error.log and Web console for the progress.
For post upgrade issues please see Adobe’s official doc for a help. Though the steps outlined here are for the Jar setup, but codebase and AEM checks should can also help to figure out any issues.
Please share this post among your circles. We will be happy to hear from you. If we have missed any steps or the step is not clear or giving any errors, do let us know. We will verify. Thank you.