Containers and Microservices in Enterprises and Telecom
Containers and Microservices in Enterprises and Telecom
Microservices and service virtualization enable tech vendors to offer a wide variety of IT services based on cloud computing. See how these benefits work.
Join the DZone community and get the full member experience.Join For Free
Deploy commerce faster and keep pace with the demands of your customers and executives. Read this blueprint to learn how to create your own microservices-based commerce foundation so you can quickly move onto building innovative and unique shopping experiences for your customers.
We have seen virtualization revolutionize the complete IT infrastructure and enabled major tech vendors to offer diverse IT-based services to consumers. System-level virtualization allows multiple instances of OS on a single server on top of a hypervisor. A hypervisor utilizes general purpose hardware in such a way that multiple applications can be deployed on the same hardware. In order to service multiple VMs, a hypervisor needs a huge amount of processing power of hardware resources, which leads to a reduction in virtualization benefits. Containers are isolated from each other and share OS kernels among all containers.
Microservices is yet another important architecture style of software applications, mainly focused on cloud-native deployment to achieve agility and continuous delivery, wherein an application is a collection of loosely-coupled stateless services. Commonly, microservices are deployed within containers and enable continuous delivery/deployment of large complex IT applications. Each of the microservices can be deployed, scaled, upgraded, and re-instantiated independently from other services in the application. Reusability and self-management of processes within microservices allows frequent updates to the main application, the resiliency of application, and enables automation capabilities through well-defined intercommunication APIs. With the power of a microservices approach, many tech giants and enterprises are considering migrating towards cloud-native infrastructure to achieve a high degree of automation in product releases and upgrades for new features, which further reduces time to market.
Microservices expand the capabilities of containers when additional resources are required at runtime. With microservices-based containers, additional resources are added or removed in an automated way, allowing for improvement of resource utilization in an IT environment.
Enterprise Use Cases of Containers
Containers are widely used in sectors where there is a need to optimize hardware resources to run multiple applications and improve flexibility and productivity. Some of the prominent use cases in enterprise are below:
- The Coca-Cola Company (TCCC) moved to cloud-first approach from on-premise. With their new cloud-native approach, they deployed their applications in microservices architecture.
- WayBlazer, world’s first cognitive recommendation engine focused on delivering artificial intelligence to the travel industry.
- Big data company BlueData is deploying and running big data applications like Hadoop and Spark in containers. Kubernetes is used as an orchestration engine.
- The Florida Department of Transportation integrated CA APM (CA Technologies Application Performance Management) for monitoring and successfully gained 360-degree visibility into their apps, server infrastructure, and containers.
- NASA developed a high-performance software framework called Land Information System (LIS) for terrestrial hydrology modeling and data assimilation, but this framework was difficult to use for basic consumers in NASA due to too many dependencies and specific requirements of specific version requirements of dependencies and compilers. To get rid of this challenge, NASA deployed LIS using Docker containers along with Kubernetes as an orchestration engine.
- In 2011, LinkedIn realized that managing a monolithic application becoming too complex. Any new feature release or patch to the application would take around 2 weeks. The LinkedIn engineering team then started utilizing a microservices based-approach in which thousands of services that make up the application were installed in containers.
- Cypherpath, a software-defined infrastructure solutions company, launched an Infrastructure as a File (IaaF) solution which makes use of Docker enterprise containers to package applications, environment software, software-defined networking specifics, and configuration specifics for each infrastructure environment, and enables sharing it as easy as a file.
- BBC News was facing challenges with environments running 26,000 jobs with over 500 developers in 10 different in a continuous integration environment across all of BBC. A single job was taking 30 minutes to get scheduled and another 30 minutes to run. By using containers, BBC News managed to reduce the 30-minute wait time for scheduling and can now run multiple jobs in parallel.
Use Cases of Containers in the Telecom Sector
- Fran Heeran, network virtualization head of Vodafone, acknowledged that containers enabled 40% improvement in resource utilization as compared to virtual machines.
- Comcast, a USA global telecommunications conglomerate, achieved time-saving for their developers and administrators by cleanly separating applications from the underlying infrastructure, allowing the application to execute changes to infrastructure without the need for altering applications. Containers allowed Comcast to track as code all changes, deployments, and versions of the system, paving the way to automating deployment processes.
- Andre Fuetsch, president and CTO of AT&T Labs, said that containers are really important to them and they are going to implement them into operations. He said containers are not just used for the core network or implemented for software development, but will be extending to edge of the network to customer premises. Fuetsch did not disclose the implementation details, but said that with their containers strategy, AT&T will be achieving agility, reliability, and redundancy in network operations.
- A prominent use case for the application of containers in telecom is Metaswitch’s Clearwater IMS core implementation. They demonstrated deployment of VNFs in a VoLTE deployment running on Docker.
- Calsoft has designed Infrastructure automation solutions based on container technology for NFVi.
- Metaswitch participated with Telenor research for a proof of concept (PoC) based on evaluating containers for mobile core network.
- AT&T, along with big telecom service providers like Comcast, China Unicom, Google, Deutsche Telecom, NTT Group, Telefonica, and Turk Telekom announced that they are collaborating to create open source networking software reference designs and solutions for telco use cases, including management and automation of fixed and mobile broadband access, leaf-spine data centre fabrics, as well as edge and 5G connectivity. Solutions will be targeted to implement DevOps practices based on Kubernetes and containers.
- In an opening keynote at Open Networking Summit 2018, Arpit Joshipura, GM Networking & Orchestration at the Linux Foundation, demonstrated deployment of ONAP and Kubernetes across all public and private clouds and bare metal hardware resources. It was an integration of open networking with cloud-native technologies enabling seamless portability of applications across NFV environments. Along with Comcast and AT&T, Vodafone demonstrated ONAP and Kubernetes and observed 40% improvement in resource utilization.
- ZTE released an end-to-end container networking solution for open-source NFV. Knitter, a part of ZTE’s unified ICT platform as a service (PaaS) product, the TECS OpenPalette, is based on containers and Kubernetes cluster management technologies and is useful for enterprise and telco NFV deployments.
Usability of Containers
- Containers are useful at the edge level of networks where low latency, resiliency, and portability requirements are extremely important.
- Containers are useful for deploying short-lived and ephemeral services. This helps in highly agile application deployments.
- Containers are useful in machine learning models where a problem can be further divided into small sets of tasks.
Not Useful For:
- Containers are still immature for telecom use cases like centralized deployment of NFV in 5G networks. Utilization of containers should be exercised within communities and needs to have POCs for containerization in the telecom sector.
- Containers heavily depend on loosely-coupled services. As a result, they are not suitable for legacy application domains with monolithic applications.
Published at DZone with permission of Kiran Divekar . See the original article here.
Opinions expressed by DZone contributors are their own.