The Next Step in Your Cloud Journey: Legacy Application Containerization

Dec 19, 2023 | IT Thought Leadership The Next Step in Your Cloud Journey: Legacy Application Containerization

Today, many IT departments think they are done with the cloud journey once they've achieved the “lift & shift” of their applications to IaaS. Of course, they succeeded in virtualizing their infrastructure by making applications run on VMs, which significantly reduced on-premises infrastructure cost and effort. However, stopping the cloud journey here could be very limiting for several reasons:

  • Application resource duplication: in a "lift and shift" approach, the operating system and application resources are replicated on each virtual machine
  • Infrastructure resource waste: the CPU, memory and storage space are defined upfront at the VM level and cannot easily be adapted to the real application needs (especially when the usage peak is not predictable or constant over time)
  • Lack of flexibility: VMs cannot be easily manipulated across on-premises, private, public or hybrid, Linux/Windows cloud environments

In order to really take full advantage of the cloud’s cost saving potential, provisioning efficiencies, operational flexibility; legacy application containerization (also known as CaaS for Container as a Service) should be strongly considered. This step further in the cloud journey abstracts infrastructure (physical or virtual) resources and provides the following advantages:

  • Higher scalability and lower operating expenses: the underlying environment (OS, middleware, libraries, technology stacks, etc.) can be mutualized across different containerized applications enabling infrastructure resources to be smartly consumed (elastic consumption that avoids waste of CPU, memory and storage)
  • Easier reuse and deployment of safe and up-to-date components for smarter application lifecycle management
  • Better time to market (shorter delay between feature implementation, integration, and deployment in production)

However, containerizing an application, especially when it is legacy/monolithic, can be a challenge with many technical hurdles.

That is where CAST Highlight comes into play.

Cloud Containerization Insights in CAST Highlight

CAST Highlight now shines a light on specific cloud patterns that are blockers for containerization of applications, a subset of our 400+ existing patterns. For instance, if an application is using DLLs, as part of the containerization tasks, the container definition (.dockerfile) should copy these required libraries and execute their registration if needed.

At the portfolio level, from the Cloud Maturity dashboard, CAST Highlight lists in a dedicated tab all these containerization blockers with their respective criticality, impact on the migration, technology, number of occurrences, and applications where the pattern has been found

 

8901

 
At the application level, from the Cloud Maturity tab, a dedicated view consolidates containerization insights that have been detected for a given application:
  • Total containerization blockers that have been triggered
  • The corresponding number of occurrences of these containerization blockers
  • The detailed list of insights with criticality, impact on containerization tasks, technology, number of roadblocks, estimated removal effort, etc.

Clicking on the roadblocks reveals the list of files in the scanned application where a specific containerization blocker occurred.

 

8902

 
The online pattern documentation has also been enriched with containerization-specific information and guidance on concrete next steps.
 

8903

Bonus: Excel Report and API

In addition to CAST Highlight’s dashboards, containerization insights can also be exported in Excel format at the application level to easily share the information with the rest of the organization.

For advanced users who want to integrate these containerization insights within their own tools, reports, plugins or extensions, this data is available from our public API.

At the portfolio level:

GET {serverUrl}/WS2/cloud/containerization/{domainId}

At the application level:

GET {serverUrl}/WS2/domains/{domainId}/applications/{applicationId}/containerization

That’s all for today! Feel free to share your feedback or possible containerization insights we could add to the product!