How LivePerson manages hundreds of microservices with Kubernetes.
Meet LivePerson
LivePerson develops products for online messaging, marketing, and analytics, including LiveEngage, a messaging platform that enables real-time customer service. By pioneering web-based user-engagement systems, LivePerson has become the worldโs most successful messaging and bots platform for brands.
LiveEngage, the most popular of its multiple Software-as-a-Service (SaaS) products, enables real-time conversations between large enterprises and their customers on websites, mobile, and social networks. Founded in New York in 1995, today, LivePerson has offices in 10 countries and monitors around 3 billion internet visitors every month.
The challenge
โOur platform is unique, as it is tailored to the large-scale operations of enterprise contact center messaging for some of the largest banks and telecommunications companies around the world,โ says Sergei Koren, Production Architect at LivePerson. The sheer scale of this operation can be an issue for Sergei and his colleagues Yossi Levin, Koby Holzer, and Liran Cohen, he explains. โOur major technical issue stems from the vast number of traffic and data points that touch our platform. LiveEngage is built on top of hundreds of microservices, and our challenge is to manage all of that.โ
The LivePerson team looked to make application deployment and delivery viable in a hybrid cloud in a way that was completely transparent for developers. To do that, they chose to use Kubernetes onย Google Kubernetes Engine.
โOur developers see Docker as an engine to deliver an application,โ says Sergei. โBut because of some architecture changes, it just wasn’t possible for us to run Docker as a standalone engine. The huge numbers of pings was not manageable, or possible, to put to scale. With Kubernetes, we connected the desire of the developer to use Docker to our ability to manage it and deliver it to production. It was a solution that kept both sides happy.โ
By managing microservices with Google Kubernetes Engine, LivePerson helps ensure that independent teams can run their applications without DevOps assistance.
The solution
A natural fit with Kubernetes
For companies providing SaaS solutions, success often brings increased complexity that makes product management more difficult. โWe realized we had a problem,โ says Sergei. โOur number of services was growing rapidly, and making changes became more and more painful. Docker offered a way to simplify handling applications, but it made operations complex.โ
To solve this challenge, LivePerson implemented Kubernetes and Google Kubernetes Engine. โWe have no vendor lock with Kubernetes so we have the freedom to choose the best cloud provider available,โ says Sergei. โWe chose Google Kubernetes Engine onย Google Cloud Platformย because its implementation of Kubernetes is mature and hassle-free.
Within LivePerson, several independent teams run their own applications and clusters, and the combination of Kubernetes and Google Kubernetes Engine enables them to manage their own workloads without assistance from DevOps or other operational teams.
โWith Google Kubernetes Engine, we don’t need to know the specifics of how to configure every detail,โ says Koren. โTeams with zero understanding of how to run production can run applications on Google Kubernetes Engine with no problems, because Google has prepared the service so well. They don’t have to get into the detail of how it works or have deep knowledge about how it’s built.โ
The result
To implement Kubernetes and Google Kubernetes Engine, LivePerson turned toย DoIT International. โIt was clear that we needed a partner in this endeavor to discover the new area of application delivery,โ says Koren. โWe contacted Vadim Solovey, Chief Technology Officer (CTO) of DoIT International, and began our journey, discovering the potential and discussing approaches on forums.โ
โDoIT delivered a roadmap for Kubernetes,โ says Sergei. โSo we knew what to expect, and when, and, almost every week for the past year, we have had workshops with CTO Vadim Solovey to discuss features and implementation.โ
Major savings with autoscaling
By simplifying and improving cluster management with Kubernetes and Google Kubernetes Engine, LivePerson has created efficiencies with direct financial impact. โOur performance testing build is a batch process which happens once in a while,โ says Koren. โWith autoscaling, we donโt have to keep the cluster at full capacity all the time, which saves us hundreds of thousands of dollars a year.โ Now the team is looking to use more aspects of Google Cloud Platform to improve its services by leveraging data.
โGoogle Cloud Platform is a great source of technology in multiple areas from which LivePerson can benefit,โ says Sergei. โGoogle Cloud Platform data services can help us use our data better, with better data mining, deep learning, and other tools. Our data scientists are already working on implementing them in compliance with the data regimes of our customers.โ