Implementing Adobe Experience Manager In The Cloud For Seamless Deployments

March 18, 2021
Lead Developer

Adobe Experience Manager (AEM) as a Cloud Service (AEMaaCS) is the newest innovation of Adobe's Experience Manager that offers Cloud native solutions for Experience Management. AEMaaCS enables the customers to move away from versioned releases to version-less, continuously improving software as a service.

AEM As A Cloud Service In Action

Let's look at some of the business use case scenarios that would help customers have a better understanding when choosing Adobe Experience as a cloud service, either to migrate their existing AEM implementations or start a new implementation.

AEM Infrastructure and Support Costs

Hosting AEM instances on-premise can be difficult to maintain or manage your AEM Platform's infrastructure and support, especially since the license cost is based on the infrastructure and users. This results in difficulty scaling due to the inflexibility of the infrastructure and costs.

AEMaaCS License is based on usage and takes care of scaling the infrastructure vertically and horizontally when needed.

Adobe handles the maintenance of your AEM instances and there is automation of tasks like data storage, garbage collection, version purges, and compaction. AEMaaCS comes with support from Adobe's Engineering Team if a client runs into any challenges on the platform itself.

Upgrading to Latest Versions of AEM

Historically Adobe has released the newest version of AEM annually, and upgrading projects on a regular basis requires development and becomes expensive very quickly. On top of that, it can seem insurmountable if the customer is at a much lower version when compared to the latest releases.

In the prospect of not going through this upgrade process, AEMaaCS provides automatic updates with all the latest features and bug fixes several times a month. Hence, AEMaaCS is always running on the latest versions and does not incur a separate cost for upgrades. As part of AEMaaCS, Adobe also performs daily updates and monthly releases of new features instead of yearly releases and in-between service packages.

Enterprise DAM Customers

Enterprise customers who have separate author instances for handling heavy DAM assets often run into the issue of performance degradation when uploading or downloading the huge assets, as it involves processing the assets that generate its renditions and extracts its metadata within the author instance itself.

Asset processing is moved out of AEM and into cloud native solutions which nicely scales out without having an impact on the AEM instance itself. It is handled by asset microservices powered by Adobe I/O.

New AEM Sites or Assets Customers

Any new customers looking for solutions implemented in AEM sites or assets can take advantage of using Adobe's out-of-the-box WCM core components to quickly complete site implementations and get the site up and running smoothly.

Considerations to Keep In Mind

Customers who depend heavily on some of the features like Communities, Forms, or AEM Screens should wait for future releases of AEMaaCS that add additional support. These features are not supported at the moment and are in Adobe's roadmap to be available at some point in the future.

Customers whose infrastructure is integrated with other services like external databases, authentication systems, application servers might face challenges during migration and need additional evaluations on their compatibility.

Four Key Features of AEM as a Cloud Service

Always Available (No Down Time)

In on-premise environments, we stop the instances for various reasons including deployments, upgrades, adding additional applications, or maintenance tasks, and then have to restart it again. AEMaaCS is always on and you experience no downtime during any of these tasks.

It enables seamless deployments while authors are still able to continue with their authoring tasks on the backend. This means, there is no need to go through the long process of taking each publisher down to deploy, test and enable. The entire deployment process happens seamlessly without interfering with the authors, marketers, or end-users.

Up To Date in Version

Adobe pushes the latest updates on security and new features automatically to the production pipelines without any downtime. AEMaaCS always runs with the latest versions which help to take advantage of the security features and new enhancements. Marketers can make use of these new features without having to wait for the early releases or upgrades.

Highly Scalable

AEMaaCS has a fully containerized operation and is based on an orchestration engine that helps the architecture to scale both horizontally and vertically when needed.

Large customers with Sites implementation and separate assets instances can take advantage of having the highly scalable author instances. If the load increases on the publish servers, it auto-scales to add more publish pods to handle the loads, which in turn improves the overall performance of the site for the end-users.

CDN

This is offered out-of-the-box for both AEM assets authoring and publishing. It enables additional layers of caching available for the customers by default that increase the speed of content delivery.

Migration Checklist

Below are some of the high-level steps involved in migrating AEM implementations from on Premise to AEM as a Cloud Service.

Run Best Practices Analyzer (BPA) tool with an on-premise stage environment which should mirror the Production environment to identify all the violations or areas that do not follow AEM best practices and evaluate the efforts to refactor and make it cloud compatible. This step speeds up the process of assessing the cloud readiness and estimating the time and cost that is required to move to AEM as a cloud service. (Reference)
Adobe Cloud Manager comes with a git repository that is used to deploy code. Customers have an option to integrate their on-premise git repository with Cloud Manager. We can also set up a Jenkins process to push code from Customer Repo to Adobe Cloud git Repository. (Reference)
Setting up and Configuring the Program and Pipelines using Cloud Manager. (Reference)
Restructure the Codebase to make it cloud compatible. AEMaaCS requires the separation of mutable and immutable content. /apps or /libs are considered immutable areas and everything else (/content, /conf, /var, /oak:index, etc.) are considered mutable. (Reference)
Set up the Local SDK Environment for development (Reference). AEM as a cloud service SDK's Quickstart jar can be downloaded from Adobe's Software distribution portal. (Reference)
As part of AEM as a cloud service, our Code should be aware of the fact that it is running on a cluster. Hence audit all the Java classes, Sling Models to follow AEMaaCS development Guidelines. (Reference)
AEMaaCS does not provide access to the OSGI console anymore to avoid the bad practice of writing the configuration values directly on the OSGI console. Update all the OSGI configurations as per these guidelines. (Reference)
No Classic UI is supported in AEMaaCS, consideration to convert all the components to Touch UI to make it Cloud compatible.
Content Migration Tool is available to migrate all the contents, assets, users, and groups from On premise Environments to Cloud Environments. This tool can be downloaded from Adobe's Software Distribution portal. (Reference)
If ACS AEM commons features are used, identify the features that are no longer supported in AEMaaCS and implement a new solution. (Reference)
In AEMaaCS content is pushed using the Sling Content Distribution, so no replication, reverse replication, or custom replication agents can be used. Identify the features that involve Reverse Replication to bring the user-generated content back to the author instance or using Replication agents to push the content (like Preview Environments) and implement a workaround to retain those functionalities. (Reference)

Beginning Your AEM in The Cloud Journey

Migration from AEM on-premise to AEM as a Cloud Service will be a bit of a learning curve in the beginning, but it's an exciting process to implement successfully.

This additional insight into AEM as a cloud service while migrating or starting a new implementation, is just the start to your cloud experiences. We look forward to continuing to provide resources and insight as our cloud service journey evolves with Adobe.


Support for Our Clients

Our goal is to help clients analyze the challenges, limitations, risks, and overall benefits in migrating their existing AEM implementation or new AEM implementation, resulting in an increased return on investment.

In collaboration with Adobe's support team, we're able to successfully migrate AEM implementations from on-premise environments to AEM as a Cloud Service. If you're interested in a possible migration, contact us today.