In a perfect world, every application would run like Netflix—meaning every application would be cloud-native, microservices-based, containerized, and, in all other senses of the word, modern.

Unfortunately, not every application can be transformed in these ways. Some of the most important enterprise applications don't lend themselves to architectural transformations simply because the vendors don't support that strategy. As much as organizations might wish that they could re-architect legacy apps from the ground up, the reality is that they just can't.

Fortunately, all hope is not lost if you have an enterprise app you can't containerize or "microservices-ize." Even if you can't "break down your monolith"—to quote the standard advice about how to modernize legacy apps—there are many practical steps you can take to make legacy, monolithic applications look and feel (in most respects) like modern, cloud-native apps.

[ Learn how IT modernization can help alleviate technical debt. ]

This article offers 4 steps to help enterprise apps become cloud-friendly, even if they're not technically cloud-native.

1. Use cloud automation to modernize legacy application management

Most enterprise apps are compatible with the cloud in the sense that you can host them on cloud-based virtual machine (VM) instances using services from different cloud providers.

By taking advantage of cloud hosting for enterprise apps, organizations can also leverage cloud automation tools, such as autoscaling policies and rules that automatically start or stop VMs. Deploying enterprise apps in a highly scalable, automated manner becomes possible. The result resembles Kubernetes-based orchestration, except your apps don't actually run in containers on top of Kubernetes. They're just monoliths that benefit from cloud automation tools.

[ Learn best practices for implementing automation across your organization. Download The automation architect's handbook. ] 

2. Deploy load balancers to optimize performance

Load balancers, which automatically manage network traffic flowing to and from applications, are another critical tool organizations can easily leverage when migrating legacy applications to the cloud.

Although configuring load balancers for enterprise apps hosted in the cloud is not a strict requirement, doing so can substantially improve application performance and reliability. Load balancers help direct requests at application instances best able to handle them. They prevent situations where one instance of your application is overwhelmed with traffic while another sits idle.

This is also something that platforms like Kubernetes do for microservices apps. But as I've explained, you don't actually need your apps to run as microservices to take advantage of load balancing. You can do it with monolithic legacy apps, too.

3. Adopt an everything-as-code strategy

When your app lives in the cloud and you manage it with cloud automation tools, it becomes possible to control most application operations using code. Specifically, you can:

  • Use Infrastructure-as-Code tools to automate infrastructure provisioning and setup.
  • Automate application configuration management using code rather than applying configuration changes manually.
  • Codify operational processes, such as application updates and backups, instead of relying on manual operations.

Practices like these, which enable a strategy known as everything-as-code, significantly reduce the time and manual effort engineers spend managing applications. They also provide consistency and minimize the risk of errors due to human oversight. And there's no reason why you can't leverage these practices for legacy and modern apps.

4. Integrate legacy apps with modern toolchains

If you host your enterprise app on premises, you probably manage it using tools and processes designed solely for it. Moving an enterprise app to the cloud makes it possible to administer it using the integrated toolchain you deploy for other applications and processes.

For example, you can use cloud-based monitoring tools to continuously collect data about application performance and generate automated alerts when something is wrong. Likewise, you can create image-based backups of your application regularly.

This toolchain-based operational strategy is another way to streamline enterprise application management, even when you can't rewrite or containerize the application itself.

[ Managed services vs. hosted services vs. cloud services: What's the difference? ]

Get more from legacy apps

Just because you have a legacy enterprise app that you can't transform into microservices doesn't mean you have to settle for legacy management and operations. Modern automation tools, combined with current operational strategies like everything-as-code, make it possible to achieve an enterprise application management experience that closely parallels that of fully modern, cloud-native apps, regardless of your app's architecture.


저자 소개

Jas Adams is the Director of DevOps at Lemongrass. He uses a deep knowledge of SAP, AI, ML, automation and data to help organizations drive operational excellence in the cloud.

UI_Icon-Red_Hat-Close-A-Black-RGB

채널별 검색

automation icon

오토메이션

기술, 팀, 인프라를 위한 IT 자동화 최신 동향

AI icon

인공지능

고객이 어디서나 AI 워크로드를 실행할 수 있도록 지원하는 플랫폼 업데이트

open hybrid cloud icon

오픈 하이브리드 클라우드

하이브리드 클라우드로 더욱 유연한 미래를 구축하는 방법을 알아보세요

security icon

보안

환경과 기술 전반에 걸쳐 리스크를 감소하는 방법에 대한 최신 정보

edge icon

엣지 컴퓨팅

엣지에서의 운영을 단순화하는 플랫폼 업데이트

Infrastructure icon

인프라

세계적으로 인정받은 기업용 Linux 플랫폼에 대한 최신 정보

application development icon

애플리케이션

복잡한 애플리케이션에 대한 솔루션 더 보기

Virtualization icon

가상화

온프레미스와 클라우드 환경에서 워크로드를 유연하게 운영하기 위한 엔터프라이즈 가상화의 미래