Many businesses are drawn to Magento because of its flexibility and ability to support a wide range of business needs. And Magento is the perfect platform for growth, as evidenced by increasing ranks of businesses under the Magento flag. Magento comes in a free Community Edition (CE) as well in a more sophisticated and scalable Enterprise Edition (EE).
Here’s what to consider when upgrading from Magento Community to Enterprise. Read on for a breakdown of the upgrade process, including important considerations you’ll have to address at each stage.
Magento Community to Enterprise: Step by Step
Evaluate all functionality and modules
The version of CE you’re using will affect your approach to upgrading. If you have version 1.5.0 or earlier, there is more work involved, beginning with version 1.5.1, Magento released architectural updates for CE that alleviate these difficulties somewhat. Unfortunately it is still a somewhat involved multi-step process.
First you should identify and record all extensions or plug-ins operating in your platform. Compare their functions with what Magento Enterprise provides. Magento Enterprise functionality is in general more stable and tested. Elements like coupons, promotions, and loyalty points can all be easily implemented post-upgrade. Keep in mind that you’ll need to migrate any corresponding data to the new format, so don’t ditch extensions outright without a way to preserve this information.
We do offer an in-depth module analysis that will explain to you all functionalities and our project managers will help you choose the right modules to support your business.
Of course, there are plenty of EE extensions available should you need them, many of which duplicate CE extension functionality not covered already by Magento out-of-the-box. You may have to purchase a different version or license key for full compatibility. Contact the extension provider if you have questions on how to upgrade extensions. In the rare case where an extension isn’t replicated in EE, budget and plan for code adjustments or a custom-built logic set. Also, decide whether you’d like to keep your current theme or install a new one. Chances are it will migrate as well, but back it up anyway.
Inspect all Magento core files
You need to know how and where changes were made to your core Magento files, as these aren’t upgrade-safe and it’s highly likely that an upgrade will overwrite most or all of them.
Hara Partners offfers the Magento Health Check to analyze your Magento code base.
It is crucial to backup all files used to integrate Magento to other systems, as these will be important points of verification as the process continues. Integrations are usually upgrade-safe, but it’s wise to backup all files just in case.
Staging and Testing
Do not perform any complex work such as an upgrade on your live website.
Your live website should not be touched until you have a working upgraded site. Even better is to have two sites run in parallel in case you need to pull the plug and go back for whatever reason.
An upgrade should follow a planned process, making sure to account for all core files and extensions.
We recommend not to add too many new functionality or features right off the bat—instead focus on launching a stable upgraded site as-is. Be patient and acquaint yourself with EE’s flexibility. Once the site is running, you’ll have plenty of time to explore all the new tools and learn which work best for you. Again, stability is key; with a solid, operable production platform at your disposal, you’ll be able to plan for new features accordingly in the new architecture.
Testing and Revisions
In many ways, this is the most crucial step. You’re now officially on the Magento Enterprise platform, but you still need to validate the entire upgraded development site before it becomes your production site. All the details matter here; you must be positive that the site operates and interacts in a substantially similar manner to your previous instance.
Test the integration interfaces once again, paying particular attention to transaction behavior. Go through the extensions one by one and check that revised functionality based on EE out-of-the-box performs as expected. Allot time to test front-end functionality, identifying areas with special cache logic to integrate with Full Page Cache placeholders and cache lifetimes.
Prepare for Go Live
You have two options when converting your production site to EE:
Schedule minor downtime, with a “site down for maintenance” page ready to go, or cut over to a parallel EE production site, complete with upgraded software. This may leave a few orders behind in the old site, so plan to migrate that data or address them on the old site before terminating it.
Be aware that any DNS changes pointing to a new host may take up to 24 hours to become fully effective everywhere; to mitigate this, reduce Time to Live settings on your DNS entries to the lowest possible value three or four days ahead of time. Even with these precautions, expect some traffic to still route to your old IP address for a few days unless your firewall or network configuration can route to the new host internally.
No matter which option you choose, make the production move at the beginning of a low-traffic period. This doesn’t necessarily mean weekends—do a little research and pinpoint the ideal transfer period. Inform all support, administrative, and customer service personnel ahead of time so they are prepared to handle a spike in call volume or customer inquiries.
Post-Upgrade, Pre-Launch Support
Of course, Murphy’s law inevitably plays a role in any large-scale endeavor. There will be problems you couldn’t anticipate during and just after the launch. To combat this, your support staff may need to put in extra time during off-hours periods. For at least a week, your entire office should be prepared for unpredictable customer behavior or bursts of activity. It’s just part of the process of moving from Magento community to enterprise, and it won’t last forever. Once the first week or so is over, you’ll see comfortable patterns reemerging, and then you can begin to think about further features or functionality to explore.
[adapted from this article on levementum.com]