Choose the proper upgrade technique
Software AG releases its product suite every six months – in April and in October. The April release is an innovation release that has a short support lifecycle and is intended as a way for customers to try out new features, while the October release is intended to be the next release customers will move to. This means that if you want to keep up with the latest features, you should upgrade your products every year. This article will give you some hints on how to do this properly.
There are three main business drivers for an upgrade of an existing solution.
End of support for product version
After support is over, you can sign another support contract that will again enable you to use all webMethods releases of the products you have licensed, or you can pay for an extended maintenance contract for your current release. This will assure that Software AG will accept requests and provide fixes for the oldest release you are using but at a premium cost. Here is a brief overview of support timelines.
And here is how these timelines are measured.
Detailed information about the support cycle can be found at Product Lifecycle and Maintenance.
Underlying platform or database no longer supported
Software AG rarely certifies old releases against new operating systems and databases, so if your organization is forced to move to a new platform version or a platform from different vendor, you might be forced to change the webMethods release you are running.
There are plenty of features in each release that make the administration and usability of the webMethods product suite better. Here are just a few examples:
- Every new release has better stability, as the number of R&D regression tests gets higher and higher.
- Command Central has wider product support with every release and will decrease the total cost of ownership for your products. You can monitor and reconfigure your whole landscape from one central location.
- The 10.3 release will allow you to deploy your on premise integrations directly into Software AG Integration Cloud so you can try out the hybrid integration model with no additional development effort.
- Integration Server and API Gateway have extended support for new protocols that help you make your solutions more modern and agile.
How to upgrade?
Define your upgrade path
Planning and preparation are vital parts of your upgrade process. Start by identifying the possible upgrade paths in order to get from your current release to the latest or desired release. Below are the possible upgrade paths that are supported by the official Software AG upgrade tooling. Normally there is a direct support path for up to six releases from your current one. If you happen to be on a release that has no direct path to your new release, you would have to plan an upgrade that includes an upgrade to an intermediate. If, for example, you are on release 9.5 and you want to move to release 10.3, you would have to migrate from 9.5 to 10.1 and then from 10.1 to 10.3.
Use this checklist as you approach the upgrade:
- Read the official Upgrade Guide.
- Read the product release notes. The release notes provide information on new functionality. Read the information for every release for your old release + 1 through the new release.
- Read the product readmes for the new release, including the readme for the SoftwareAG Infrastructure. All readmes are available on the Software AG Documentation website. Read the information in product readmes for your old release+1 through the new release. For example, if you are upgrading from 9.9 to 10.4, read the information for releases 9.10 through 10.4.
- Go to the Knowledge Center on the Empower Product Support website and read tech articles for example, KB 1788395). Use keywords such as upgrade to search for relevant tech articles, and search for your old release, your new release, and all releases in between.
- Visit Software AG Tech Community for tips and tricks and other information in the upgrade forum (Forums > webMethods General >Upgrade).
Hardware requirements/virtual machines
An upgrade of the webMethods product suite is always done using a side-by-side procedure. This is the preferred strategy for enterprise software due to the greater safety in this approach. You can upgrade either by installing the new product on the same host machine and then migrating configurations, data, and assets from the old instance to the new instance, or by installing the new product on a new machine and then migrating the configurations, data and assets from a ZIP file created from the old installation.
For your database, we recommend you clone to a new location. Using a clone will not protect your existing production database from harm and will leave you a back out plan.
In each new release, some services, APIs, parameters and so on are deprecated. Normally the migration utilities you use to migrate the configuration, data and assets warn you about these deprecations. Software AG makes sure that the investment in your solution is preserved. That is why deprecation normally occurs several releases before removal. New solutions should not be built with the deprecated items, but the deprecated items will continue to be supported by Software AG. If you are, however, in a situation to change the code, don’t do it blindly by just replacing with new services, but rather do some deeper research and testing before making the switch.
Before you upgrade your production environment, you need to be confident that your solutions work on the new release. An ideal scenario would be to apply your DevOps CI tests against the new release. Automated testing is the best and safest approach, especially when you have good code coverage. The Software AG Unit Test Framework gives the ability to not only unit test your integrations by mocking the systems, but also to perform integration tests. You can also use tools like SoapUI for extensive integration testing. You can test CAF applications with Selenium or any other industry-standard test tool for web development. If you don’t have automation tests, do some clustered exploratory testing; for example, check a random flow that integrates with a SAP® system, check a random web service interface, check a random BPM process, or open a random portlet and check its functional correctness.
Approach and sequence
Figure out the sequence of the migration, how the testing is going to proceed, and on which environment is it first going to take place. Define the time constraints needed to do the migration; for example, it is happening on a weekend or in a nightly maintenance window.
Plan your upgrade so that you can back out if necessary. Imagine that you have reserved a weekend for a production upgrade operation and on Sunday at 7 p.m. you realize that something is wrong with your new environment. Having a back out plan will help you easily switch back to the old environment. This will significantly reduce the risks during the upgrade and will give you confidence to do it.
Every Software AG customer with a support contract is eligible for the latest releases of the licensed products. If the number of production instances stays the same, there is no need to sign contract extensions. If the number of the production instances increases temporarily, due to the chosen upgrade strategy, contact your account manager to figure out how to handle the situation.
Level of effort
Traditional manual approach
Upgrading a complex solution can be a costly and risky operation. In the traditional approach, there are multiple manual activities. You must:
- Prepare your old release for migration by getting it to the latest fix levels with the Software AG Upgrade Manager.
- Optional but recommended: Clone your database so that your upgrade won’t break your current environment.
- Install the new release of the products on the same or a different machine using the Software AG installer.
- Install the latest fixes on the new product installations.
- Migrate configurations, data, and assets by running the command line product migration utilities for each product.
- Reconfigure the new release to fit the new environment (for example, configure new ports.
- Test the solution.
This has to be repeated manually for every single installation that will be upgraded.
Automated Command Central approach
You can automate tasks with Software AG Command Central. With its composite templates capabilities, Command Central supports several automated upgrade flows:
- Same installation directory, hosts and ports; live database
- New installation directory, same hosts and ports, cloned database
- New installation directory and ports, same hosts, cloned database
- New hosts, live or cloned database
The composite templates require upfront development and testing. But once they exist, you can automate much of the upgrade of your environment. In addition, the templates can be reused when you upgrade again in the future; a developer will need only to change the release version and assign new licenses.
With Command Central, you can automate:
- Installation of the new products on target machines.
- Installation of the latest fixes on the new product installations.
- Running the migration utilities that move configuration, data, and assets from the old environment to the new environment.
- Reconfiguration of the new release to fit the new environment - hosts, ports, key stores, databased connections and everything else that can be generally configured with Command Central. For more information about the supported configuration in each products please check the Command Central Support Matrix.
The main advantage of the Command Central Upgrade is that is can be reused directly for environments of similar type contrary to the traditional approach where the manual activities have to be performed on every environment separately.
These tips should make upgrading easier for you. If you have a large environment, upgrading using Command Central should be your default approach. Command Central automates many tasks, making it easier for you to take advantage of our latest features. Look for more upgrades to Command Central in the future so upgrading gets even easier and scalable.
Software AG Tech Community (Forums > webMethods General > Upgrade)