On Wednesday, 24 March 2021, Acquia will begin upgrading customer applications to Acquia Cloud Next (ACN). Acquia Cloud Next technologies provide even better performance, scalability, and resiliency during periods of high load. Powered by an even more advanced serverless architecture than the current version of the Acquia Cloud Platform, Acquia Cloud Next ensures applications can scale even faster to satisfy the demands of high traffic events and resource intensive processes.
How does resource isolation work on Acquia Cloud Next?
Acquia Cloud Next leverages containerization to provide superior performance and resiliency to Drupal applications and related services. As a result, services previously available on the same dedicated infrastructure have been re-architected to operate more efficiently in isolation, even on non-production environments.
On Acquia Cloud Next, containers have been dedicated to each of the following system processes:
- Drupal (Apache, PHP)
- SSH sessions
- Cron jobs
- Cloud Hooks
This level of resource isolation ensures the key services associated with delivering your Drupal application are able to utilize the cloud capacity they require without adversely impacting each other, even during periods of increased activity. As a result, customers may find that previously implemented code to maximize performance may no longer be necessary to achieve similar or superior performance results.
Acquia recommends that all customers upgrading to Acquia Cloud Next review their cron jobs, scripts, automations, Memcached settings, and any custom PHP extensions and libraries installed to determine if they are still required and still functioning as expected after upgrade.
What major technical changes to Acquia Cloud Next do I need to know about?
As a result of the newer technologies in use on Acquia Cloud Next, some Cloud Platform features will behave differently once an environment has been upgraded. Please review the list of changing features and temporarily unavailable features in our main article on Acquia Cloud Next.
How should I test my upgraded non-production environments?
Customers will be provided with fourteen calendar days between their successful non-production environment upgrade and their corresponding production environment upgrade. However, customers are advised to test all non-production environments within seven calendar days of their non-production upgrades being completed. After seven days, your previous infrastructure may no longer be available, and we will formally schedule your production upgrades for one week later based on the assumption that your tests in non-production all went well.
Issues detected immediately after upgrade are more likely to be resolved quickly and without prolonged business impact, whereas issues reported closer to the scheduled production upgrade date are more likely to prolong the application upgrade process. If your production environment cannot be upgraded on schedule, your production and non-production environments will be running on two separate versions of Acquia Cloud for more than two weeks, increasing the likelihood that application code and configuration changes tested on Dev and Staging environments could cause unexpected issues once deployed to Production.
Important: Acquia strongly recommends that all customers test a copy of their production code, database, and files in their non-production environments immediately after their non-production environments have been upgraded to Acquia Cloud Next.
This will allow you to confirm that everything on your application and the Acquia Cloud Platform works as expected. Otherwise, functionality on your sites and environments may be adversely impacted once your production environment upgrade begins due to the unique code or configurations associated with your application.
Some testing recommendations:
- Ensure all your Scheduled (cron) jobs are logging their output to a file. Ensure this file is located at one of the available shared directories in Cloud Next. Let those cron jobs run normally and inspect them for any problems.
- Configure Drupal’s error logging to a proper level so that you can see any problems.
- Assess the baseline behavior of your website by running simple checks against it as a site visitor. Visit various pages of your site, including as a Drupal site admin. Look at /admin/reports/status for any warning/errors that may need resolution. Ensure the password recovery form and corresponding email work. Try clearing caches, editing and saving content, creating users, test Search indexing and querying, etc. Afterwards, download and analyse log files to spot any existing issues.
- Ensure you can SSH into your Cloud Next site, and can run drush commands properly. Note that for proper behavior, you may need to include Drush as part of your composer project.
- Look for any hard-coded filesystem paths in your Scheduled jobs, Cloud Hooks and other places in your Git repository (especially in custom scripts and modules) and ensure these file paths exist in your Cloud Next environment and are readable (or writable!) and adjust your paths accordingly.
- If you are using Cloud Hooks, ensure they are triggering and working correctly by inspecting the task logs shown in the Cloud UI.
- Test remote drush aliases. You may require re-downloading your Drush aliases using Acquia CLI and/or downloading them manually from your Cloud UI.
- Note that a few features present in Cloud Classic will not yet be available on Acquia Cloud Next at the time of your testing, and could be causing some of your testing to fail.
Acquia Cloud Next Upgrade Risks & Recommended Changes
The Acquia Cloud Platform is used by customers around the world to manage hundreds of thousands of sites across thousands of unique codebases. The flexibility of the Acquia Cloud Platform over the past twelve years has empowered customers to modify their application code and configuration in limitless ways to ensure that each organization’s specific business needs could be satisfied with custom changes to Drupal that are unique to those sites and related services.
While Acquia has spent nearly a year testing Acquia Cloud Next technologies against hundreds of distinct Drupal applications -- many with the help of our valued customers during private alpha and beta periods -- customers with heavily customized sites should take extra steps to prepare for and assist Acquia with the upgrades to their environments.
This section will be populated by any known risky settings or practices that have been shown to repeatedly cause issues during upgrades for other customers, as well as any optimizations that can be made before (or in some cases, even after) upgrades take place to maximize the performance, resiliency, and long term sustainability of your application on Acquia Cloud Next technologies.
Best Practice Recommendations
- BLT: Acquia has observed that some applications using BLT may encounter Drush errors or other issues on Acquia Cloud Next environments. Please test all BLT applications and processes immediately after upgrade or provisioning on Acquia Cloud Next to verify that they work as expected.
- /tmp or home Directories: Acquia has observed that some applications using custom /tmp directories may encounter issues after being upgraded to Acquia Cloud Next due to the new directory structures we have put in place. If you are using /tmp or home directories for your application’s code or automations, please test this functionality thoroughly once your environments have been upgraded to Acquia Cloud Next. You may need to repoint or replace these directories and related automations after upgrade.
- Symlinks: Customers with custom symlinks to non-standard directories may encounter issues post-upgrade. Please test your application thoroughly as soon as your non-production upgrades are complete. Some symlinks may need to be repointed to new file directories to function properly.
- Custom environment variables should not be used: Acquia Cloud Next does not support environment variables through the UI at this time. Convert the Cloud Platform environment variables into standard PHP environment variables in settings.php.
What will happen to my dedicated Memcache or cron instances?
Acquia Cloud Next technologies make use of containerization to isolate application-layer software and services so that they always have dedicated capacity by design.
For customers with Acquia’s legacy instance-based pricing model, purchased cron and Memcache capacity will be converted to Cloud Capacity Units and included into your contractual capacity entitlements until your next renewal.
For customers with Acquia’s new Views/Visits pricing model, purchased cron and Memcache capacity will be converted to Cloud Capacity Units and used to increase the Fair Use resource limits for your purchased Views/Visits tier until your next renewal.
Last Updated: 1 March 2021