AWS Partner Network (APN) Blog

Accelerate Application Modernization and Migration on AWS with Infosys Accelerators for Containerization

By Rushiraj Desai, Principal Consultant, Modernization Practice – Infosys
By Ashrujit Pal, Principal Consultant, Modernization Practice – Infosys
By Mandar Shete, Sr. Principal, Modernization Practice – Infosys
By Ashutosh Pateriya, Sr. Partner Solutions Architect – AWS

Infosys-AWS-Partners-2
Infosys
Connect with Infosys-2

Containers are widely used in the development of cloud-native applications based on a microservices architecture. These applications are designed to be scalable, highly available, and resilient to failure.

IDC research suggests that by 2023, “over 500 million apps will be developed using cloud-native approaches.” Gartner estimates that “90% of global organizations will containerize applications in production by 2026—up from 40% in 2021.”

In this post, you will learn:

  • Common use cases of containers which can be implemented by leveraging AWS services (for public cloud and hybrid cloud).
  • Key design trends and considerations enterprises need to keep in mind when adopting containerization.
  • Key factors influencing the container architecture, and Infosys approaches for containerization by leveraging the Infosys Modernization Suite, part of Infosys Cobalt.

Infosys, as an AWS Premier Tier Services Partner and Managed Cloud Services Provider (MSP), offers integrated consulting and technology solutions that leverage of the flexibility and economics of cloud where IT and business services are delivered on demand.

Use Cases

Enterprises across industries are taking advantage of the power of containers for a variety of use cases.

Infosys-Containers-Platform-1

Figure 1 – Common use cases for containers.

  1. Microservices: Microservices architecture breaks applications into multiple independently deployable units which are loosely coupled. This is a perfect fit for containers since containers are lightweight and can be independently scaled.
  2. Batch jobs: Batch processing is essential for enterprises that need to analyze huge volumes of data on a regular basis. Containers are an excellent way to perform batch operations as they provide a simple, scalable, and portable code environment.
  3. Hybrid cloud: Containers in hybrid environments enable enterprises to manage workloads running across environments. Since containers package the dependencies together and operating system independent, they are suitable for hybrid cloud. Enterprises can select hybrid environments for a variety of use cases, including data sovereignty, modernization before migrating to the cloud, burst to the cloud for increased capacity, and so on.
  4. Machine learning: Containers enable the usage of resource-intensive models at scale with relative ease, and removes the hardware dependency by packaging libraries including hardware library module, which make them portable on different type of hosts.
  5. Edge computing: Edge computing environments generally enforce a limit on hardware and containers are lightweight, having low footprint, and do not have cold startup issues. This makes communication fast and reliable for low-latency applications such as live analytics, smart manufacturing, and autonomous cars.
  6. Simplified DevOps adoption: It takes lot of time and effort to set up dependencies and configuration for software development. Containers package all of the dependencies with them; hence, they are portable and platform independent, making it easy to deploy across environments.

Reference Architectures

Below are common architecture patterns for containerization.

Hybrid, Edge Deployment

This architecture is suitable for latency-sensitive applications that are needed to be deployed closer to end users in a fully/semi-connected environment and take advantage of AWS security, scalability, and reliability.

  • In this architecture, the container workload is deployed in 5G edge computing infrastructure (AWS Wavelength), closer to industry (AWS Local Zones), and in customer data center.
  • In the AWS Cloud, Amazon Elastic Container Service (Amazon ECS) tasks are deployed in multiple Availability Zones (AZs) and a control plane running in isolation from execution environment.
  • AWS Systems Manager agents are installed on external instances for remote management. This also provides security context to external host to communicate with instances in AWS.
  • Amazon ECS agents are installed at remote locations and manage the lifecycle of the container. The ECS tasks deployed at remote locations remain connected with a control plane in the cloud via an ECS agent. The ECS tasks continue to run even if the network is disconnected and synchronizes with control plane once the connectivity is established via the ECS agent.

Infosys-Containers-Platform-2

Figure 2 – Hybrid, edge deployment with Amazon ECS.

Kubernetes-Based Microservices Architecture

This architecture is suitable for web applications consisting of microservices needed to be deployed in a managed container platform with each microservice needing to be scaled independently.

Infosys-Containers-Platform-3.1

Figure 3 – Microservices architecture on Amazon EKS.

Key Considerations for the Container Architecture

Containerization brings many benefits to the organization but requires careful consideration of all factors that influence employing the right service and address security, performance, cost, and other metrics.

  • Managed or do-it-yourself: Determine needs and wants for do-it-yourself (DIY) vs. using managed services to run the containers. DIY gives more control while managed services reduce time to maintain these systems. It’s important to understand various level of controls different cloud services provide.
  • Business constraints and cloud vs. on premises: Evaluate business policy, needs, and constraints for moving workload to the cloud, and decide if there’s a need to go with a hybrid cloud services platform. With hybrid, you can move certain workload to the cloud and keep select functions in house.
  • Compliance: Often times, a business needs to adhere to standards and regulations like GDPR, NIST, or PCI. Stringent requirements need to be implemented, such as employing an image vulnerabilities scan, network security with zero trust, threat analysis and mitigation, segregation of containerized workload, separation of PCI and non-PCI workloads, tracking container activity, and controlling access to container holding sensitive information.
  • Security: Security requirements are omnipresent and includes adding security scans for automated deployment, integrating automated security testing, managing access to containers, using trustworthy images, encrypting communication between containers, and adopting the principle of least privilege.
  • Vendor lock-in: Businesses may want to remain close to the open-source community and not use proprietary services. AWS provides open-source container solutions such as Kubernetes.
  • Performance and placement: Evaluate business needs for the application performance. For a critical and latency-sensitive application, consider deploying containers closer to the edge location.
  • Workforce skill set: Assess your organization’s workforce skill set and select the container service which is aligned.

Infosys Accelerators for Containerization

It can be challenging for enterprises to navigate all of the complexities and arrive at an optimal solution. Infosys helps enterprises tackle these challenges and adopt container solutions through its automation-driven offerings powered by the Infosys Modernization Suite, part of Infosys Cobalt.

The Infosys Modernization Suite simplifies and accelerates application modernization and cloud adoption through automation across the application lifecycle.

This includes application assessment, solution design, infrastructure set up, technology upgrades, containerization, and cloud-native development, including CI/CD pipeline for various use cases designed for containers and other AWS services such as Amazon RDS, Amazon ElastiCache, Amazon S3, and Amazon DynamoDB.

  • Application containerization: Assess applications for containerization readiness, upgrade technologies for compatibility, containerize and deploy applications to Amazon EKS, Amazon ECS, AWS Elastic Beanstalk, Red Had OpenShift on AWS, and hybrid options like Amazon EKS Anywhere, Amazon ECS Anywhere, and AWS Outposts.
  • Monolith to microservices: Redesign existing monolith applications or develop new microservices running on Amazon EKS and Amazon ECS.
  • Batch modernization: Redesign legacy batch jobs to cloud-native architecture on Amazon EKS and Amazon ECS.
  • Serverless deployment: Deploy containerized or re-architected applications to serverless container options like Amazon EKS and Amazon ECS with AWS Fargate.
  • Modernization on hybrid cloud: Application containerization or re-architecture on hybrid cloud environments using EKS Anywhere or ECS Anywhere.

Infosys-Containers-Platform-4

Figure 4 – Infosys Modernization features for container adoptions.

Conclusion

Containers are building blocks to designing modern applications. Whether enterprises are considering a legacy system or a greenfield application for containers, there are well-architected design patterns available to use.

As with any other technology adoption, enterprises that succeed with container applications are ones that analyze the options in detail and carefully consider all aspects of functional and non-functional requirements before choosing a container-based architecture.

Infosys, in collaboration with AWS, can help enterprises navigate complexities, make the right decisions, and accelerate transformation using container technologies.

To learn more, we recommend you review these additional resources:

.
Infosys-APN-Blog-Connect-1
.


Infosys – AWS Partner Spotlight

Infosys is an AWS Premier Tier Services Partner and MSP that helps enterprises transform through strategic consulting, operational leadership, and co-creation of solutions in mobility, sustainability, big data, and cloud computing.

Contact Infosys | Partner Overview