We all have them. Those applications running on older operating systems (OS) and even older hardware.
They typically run on older generation hardware that take up a large amount of real-estate in your data center which use significant power and cooling resources. Maintenance contracts - if you can get them - are expensive. Parts availability may be limited and cause extended downtime when you need to replace a component that is not available locally. You may also find that you cannot take advantage of the newer technologies that you are implementing in your supporting infrastructure, such as 40G+ network, or 16G SAN.
For the older OS, vendor support is difficult to get. Generally, they do not provide security updates on vulnerabilities that we are regularly asked to remediate by our Information Technology Governance departments. Most software vendors no longer provide with break/fix or critical patch/update support on these older operating systems. You may also find that your older operating systems are starting to, or have become incompatible with your supporting software services such as backup & recovery, scheduling software, and monitoring software.
The current hardware technology offerings provide us with high performance and availability and virtualization technologies. CPU multi-threading, huge on board data caching and memory availability continues to increase. So are interface speeds for Network and SAN connectivity. Virtualization technology now allows you to “share” hardware between many operating instances on one physical system while still maintaining the isolation between them that today’s security standards demand.
So why not just upgrade your OS on refreshed hardware? There are several reasons that these applications are not upgraded to current technology.
To name a few:
- Expert Knowledge of the application is no longer available to support an upgrade path “Bob used to support that, but he left the company and no one else really knows how the code works”.
- The application no longer has vendor support “Software Company XYZ has gone out of business” so the application software for a newer or different OS is not available.
- The application is custom written, and the source code is no longer available, so migration to a current technology which may require a recompile is not an option.
- Budget constraints limiting the availability of time and money required to thoroughly plan/test and perform a technology refresh
There are software solutions that will allow you migrate to the current generation of hardware offerings. Most are based on a “container” concept which is technology where a system is built with a parent OS that is running the latest supported version which comes with full vendor support. A “container” is created within that parent that can house a complete runtime environment of the older operating system required for the application. The parent OS can take advantage of all of the technology available from the new hardware.
Various OS vendors call this technology by different names. They each have their own unique spin on when to use container technology and its benefits. There are some restrictions that may prevent your application from cleanly porting to a container solution. Thorough research and planning is necessary to ensure the migration to this solution is viable.
Below are the names and links of “container” technologies provided by IBM, Oracle, and Hewett Packard for their AIX, Solaris and HP-UX operating systems:
- IBM AIX 5.2 & 5.3 Workload Partitions for AIX 7.1
- Oracle Solaris 8 & Solaris 9 Branded Zones
- Hewlett Packard HP 9000 Containers
You don’t have to miss the opportunity to take advantage of the latest hardware technologies and the performance gains they have to offer because your application will not port to a newer version of an operating system. With careful analysis, you may find that your old legacy systems may be able to be consolidated onto one or more new systems, while still maintaining their current runtime environments. In doing so, you should be able to lower your total operating expenses and see better performance and availability. It will give you the time to keep those older legacy applications alive while you research an upgrade or replacement path that will bring them into a completely supported environment using the most current OS versions.
This article is written from the perspective of a Unix Systems Engineer supporting Legacy UNIX Operating Systems including IBM AIX, Oracle Solaris and Hewlett Packard HP-UX.