Containers and Kubernetes: 3 transformational success stories
Companies across industries are pushing to move data and
workloads to the cloud, whether as part of digital transformations or to avoid
building costly new infrastructure to handle growing demand.
For many organizations, key to this move are containers and
Kubernetes — especially when multiple cloud services are involved.
[ Stay on budget with these 6 cloud cost management tips,
learn the 5 fundamentals of effective cloud management and beware hidden cloud
migration gotchas. | Get the latest cloud computing insights by signing up for
our newsletter. ]
Also featured in this series:
Containers march into the mainstream (InfoWorld)
Kubernetes meets the real world (InfoWorld)
Essential things to know about container networking (Network
World)
How Visa built its own container security solution (CSO)
PaaS, CaaS, or FaaS? How to choose (InfoWorld)
Containers on the desktop? You bet -- on Windows 10X
(Computerworld)
Containers are standalone software packages that bundle
together all of an application’s code and dependencies to ensure the
application runs reliably regardless of its computing environment. As such,
containers facilitate movement of an application from, for example, a
developer's laptop to a test environment, from a test environment to
production, or from a physical machine in a data center to a virtual machine in
a private or public cloud.
But while containers simplify shifting workloads between
environments, they still need to be maintained. That’s where Kubernetes comes
in. Kubernetes is an open source container-orchestration system designed to
automate deployment, scaling, and management of containerized applications.
Originally developed by Google, Kubernetes is currently maintained by the Cloud
Native Computing Foundation.
Organizations are discovering that containers and Kubernetes
are a powerful combination for enabling workload portability in multi-cloud or
hybrid cloud environments. Here are three real-world examples of the
technologies in action.
Expedia Group: Enhancing the online travel experience
Online travel services provider Expedia Group began using
microservices architecture and public cloud services from Amazon Web Services
(AWS) in 2013. But the company accelerated its usage when it started to deploy
containers via Amazon EC2 Container Service (ECS) in 2015 to run those
microservices and be able to run applications within the AWS cloud environment.
The primary business and technology drivers for deploying
the technologies included greater portability of applications across multiple
environments and accelerated speed to market for new products and services.
The CIO's Guide to 'IT as a service'
BrandPost Sponsored by HPE
The CIO's Guide to 'IT as a service'
Learn how to determine if the ITaaS operating model makes sense
for your organization, how to evaluate the pros and cons, and best-practice
advice for selecting a partner.
“With containers spinning up in seconds, the amount of time
that is needed to ship a new feature to our customers has significantly
reduced, and we are able to accelerate our speed to market,” says Kuldeep
Chowhan, distinguished engineer at Vrbo, a unit of Expedia Group that provides
lodging services for travelers.
The portability of containers between working environments
and the speed with which containers can be deployed accelerated the company’s
move toward microservices, Chowhan says. Today, thousands of applications are
running in production on ECS across multiple AWS cloud regions, enabling
Expedia to provide enhanced services for travelers and partners, he says.
In 2015, Vrbo adopted Apache Mesos, an open source platform
for managing computer clusters, to run container workloads across on-premises
data center and AWS cloud environments. That enabled Vrbo developers to run the
same workloads in both environments, which in turn accelerated migration from
Expedia’s on-premises data center to the cloud, Chowhan says.
Expedia also harnessed the power of Kubernetes as the
technology gained popularity in recent years. The company’s Hotels.com unit
currently runs hundreds of its applications on Kubernetes in the AWS cloud,
Chowhan says, helping to provide services such as hotel bookings for customers.
And after Amazon launched its Elastic Kubernetes Service
(EKS) in 2019, many teams across Expedia Group, including data science, online
experiences, streaming, and others began to leverage it to run container
workloads.
“Longer term, that is the direction Expedia Group is
planning on heading for container runtime and orchestration needs,” Chowhan
says.
Expedia Group’s shift toward a microservices architecture
and containers has provided the company with significant advantages in
launching new services quickly. Whereas it used to take months for new
application development, it can now churn out new features multiple times a
day.
“With investments in modernizing our application
architecture and DevOps practices, we have seen an order of magnitude increase
in features that are shipped to the customers,” Chowhan says. “The Vrbo brand
has seen a 12-times increase in release velocity in the last three years.”
Thanks to the portability of containers, Expedia
applications can be run in a distributed fashion across multiple AWS regions to
provide high availability so that customers across the globe can use its travel
sites without disruption.
Containers also enable “targeted scaling,” Chowhan says.
“Earlier when we had a monolith application, we had to scale the entire
infrastructure to support the traffic,” he says. “With containers and
microservices, now we are able to scale more intelligently the specific parts
of our site that have higher customer demand — and realize savings in
infrastructure costs.”
Containers still require some amount of infrastructure
management, Chowhan says: “To be able to deploy and run containers, you need a
container runtime and orchestration platform. As with any software solution,
there are updates that are released and those updates need to be rolled out to
the existing fleet of servers that are running the container platform.”
Development processes around containers and microservices
have constantly evolved, from source code to runtime, Chowhan says. “We had to
retool to be adapt in the new ecosystem across our travel platform, and also
train our engineers with the evolving ecosystem across containers,” he says.
Primerica: Ensuring high-quality, modernized code
Finserv and insurance firm Primerica has created a
Kubernetes environment to help scale applications in a private cloud offerings
from IBM on Nutanix hardware. And containers from Docker help Primerica provide
application consistency between environments.
“This is a key strategic component in our migration from our
traditional technology stack to our modern hybrid cloud,” says Barry Pellas,
CTO and executive vice president of application development and delivery at the
firm.
“This environment allows us to continue to see value out of
applications that we have developed over several decades in a new and modern
way,” Pellas says. “It also plays a key role in our API [application
programming interface] and microservices strategy” by facilitating the delivery
of new capabilities to business applications, he says.
The container and Kubernetes combination enables Primerica
to not only host applications but also to monitor them and recover quickly
should anything happen to the containers.
“We provide end-to-end infrastructure-as-code, which enables
us to consistently build environments that are predictable, and eliminates the
possibility of human error,” Pellas says. “Our continuous integration and
delivery capabilities ensure that product teams always have the latest changes
at their fingertips, and they can feel confident that verification of the
environment and application has been done as part of the deployment process
itself.”
The main drivers for using containers and Kubernetes is to
provide teams with an opportunity to deliver applications faster and with
better quality, Pellas says. They also provide a secure, stable environment in
which to work and scalability during high-use times.
“We also wanted the predictability and consistency between
our various environments, to help with debugging and problem resolution,”
Pellas says.
While Primerica has only recently begun to take advantage of
containers and Kubernetes, it is seeing increased productivity of teams as well
as development of new features for its users that can be delivered in an
incremental, agile way.
“We have also been able to provide more secure and
predictable applications by catching issues early in the development process,”
Pellas says. “We hope this will lead to increased quality of our applications
and a consistent development experience throughout our product teams, as we
migrate more and more applications to the platform.”
As with any technology, there is a learning curve for
organizations looking to adopt containers and Kubernetes. “Enabling teams with
the right skill sets to properly develop within the environment can be
challenging,” Pellas says.
Primerica is addressing those challenges by providing
education to its product teams and best practices for business leaders to get
their projects into the pipelines.
Clemson University: Wrangling massive computational
resources
The Feltus lab in the Department of Genetics and
Biochemistry at Clemson University is an interdisciplinary team of geneticists,
computer scientists, computer engineers, and bioengineers who blend software
engineering and computational biology techniques to make useful molecular
discoveries in human and plant biological systems.
The lab uses bioinformatics, statistical and data science
approaches to discover patterns, says Alex Feltus, a professor in the
department. “The biological data sets we analyze are in the tera- to peta-scale
range, and we engineer optimized data-intensive computational workflows that
fit data to a myriad of computational platforms,” including those of several
commercial cloud providers.
In recent years, the lab has focused development efforts on
workflows that run on Kubernetes systems. “We believe that Kubernetes will be a
common standard platform for data-intensive computing for many years, which
allows us to focus our software engineering efforts on one architecture,”
Feltus says.
Biological databases are growing geometrically, Feltus says,
and data sets can be mined for biological insight into some of the largest
medical and food security challenges. “Even small biology labs are in constant
need of massive computational resources,” he says. “Researchers will soon want
to ask biological questions at the petascale [level], which will require access
to massive computers that are currently possible in commercial clouds.
Kubernetes clusters are an excellent platform to do large scale computing.”
Before moving to the cloud, “biological researchers need
democratized, credit-free cloud sandboxes where one can engineer and test
workflows at scale,” Feltus says. “These sandboxes are critical, since 90
percent of scientific experiments lead to dead ends, which would burn cloud
credit budgets before discovery occurs.”
The Feltus lab is working with many other research groups to
pilot scalable resources that are a blend of on-premises and cloud services,
and Kubernetes and containers will play a huge role.
“Kubernetes and containers are a go-to platform for
computational biology workflow engineering,” Feltus says. “These systems have
allowed my students to bypass many of the vagaries of HPC [high-performance
computing] environment configuration.”
The lab has deployed Cisco Container Platform, which helps
the team manage multiple clusters from various cloud providers under one
platform.[Source]-https://www.cio.com/article/3530277/containers-and-kubernetes-3-transformational-success-stories.html
Basic & Advanced Kubernetes Training Online using cloud computing, AWS,
Docker etc. in Mumbai. Advanced Containers Domain is used for 25 hours
Kubernetes Training.
Comments
Post a Comment