Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Jumpstart into Grownups world
by using k8s out of box abilities
by: Sergei Koren Production Architect
Efim Dimenstein Chie...
• Few words about us
• Liveperson, running services at scale
• Our focus, wording, requirements
• We’re at the beginning o...
• Production architect at Liveperson
• 20 years of High Tech experience
• 10 years of SaaS experience
Few words about us
S...
• Chief Architect at Liveperson
• 15 years of High Tech experience
• 15 years of SaaS experience
Few words about us
Efim D...
• 7 Locations
• 8K+ servers, virtual and physical
• 250 moving parts in application
• 99.995% uptime
• 1.4M concurrent vis...
• Resiliency
• Scalability
• Uptime
• SLA
• Availability
Our focus, wording, requirements
Resilience Pyramid
DC
HW
SERVICE
COMPONENT
CODE
• We have an idea
• Get investment
• Develop it quickly
• Show app to (potential) customer
What about our words?
‫יהיה‬‫בס...
• zip, copy, unzip
• advanced use: ./copy_unzip_restart.sh/chef/puppet script
• Going with Docker:
• Dockerfile: zip, copy...
Monitoring system (Nagios)
Counters (graphite)
Discovery
HA clustering tech
Logging
Capacity management
L4/L7 balancing
Ge...
1 Web server, State in app, plain file persistency on disk(1 app instance)
K8S
1. Connects Web to Tomcat
2. RC with 1 repl...
We want Redis, file is too slow, state in app memory
1 web 1 tomcat 1 Redis
K8S
1 Web RC replica 1
1 app RC replica 1 (no ...
Well, we’re popular, 1 tomcat, 1 web, 1 Redis is not enough
1+webs (session stickiness)
1+tomcat (state in Redis, cached i...
preparation steps:
1. Enable Google cloud evaluation - having gmail account is sufficient
2. 1Click Create Project
3. Go t...
• We talked language we use when we run service at scale
• Demonstrated how by using K8S we can for free many features whi...
1. https://github.com/kubernetes/kubernetes/issues/14642
2. https://github.com/sergei-koren/k8s-demo
3. http://www.slidesh...
Upcoming SlideShare
Loading in …5
×

Jumpstart into grownups word by using k8s out of box abilities

400 views

Published on

Sergei from LivePerson will explain how while business, services grow, we face common challenges, which we usually do not have time or resources to address immediately. He will talk about features critical to resiliency, availability and capacity management ; and how to get it for free from the Kubernetes framework

Sergei Koren - Production Architect at LivePerson and Efim Dimenstein - Chief software architect at LivePerson.

Published in: Technology
  • Be the first to comment

Jumpstart into grownups word by using k8s out of box abilities

  1. 1. Jumpstart into Grownups world by using k8s out of box abilities by: Sergei Koren Production Architect Efim Dimenstein Chief Software Architect
  2. 2. • Few words about us • Liveperson, running services at scale • Our focus, wording, requirements • We’re at the beginning of the journey: our wording • Our methods • Getting there What is means (usually) • K8S now: Agenda
  3. 3. • Production architect at Liveperson • 20 years of High Tech experience • 10 years of SaaS experience Few words about us Sergei Koren
  4. 4. • Chief Architect at Liveperson • 15 years of High Tech experience • 15 years of SaaS experience Few words about us Efim Dimenstein
  5. 5. • 7 Locations • 8K+ servers, virtual and physical • 250 moving parts in application • 99.995% uptime • 1.4M concurrent visitors are actively monitored • 2B of unique visitors monthly • 2P of Hadoop data • Customers: Largest Cellular provider, top 5 bank etc. Liveperson, running services at scale
  6. 6. • Resiliency • Scalability • Uptime • SLA • Availability Our focus, wording, requirements
  7. 7. Resilience Pyramid DC HW SERVICE COMPONENT CODE
  8. 8. • We have an idea • Get investment • Develop it quickly • Show app to (potential) customer What about our words? ‫יהיה‬‫בסדר‬ We’re at the beginning: our wording
  9. 9. • zip, copy, unzip • advanced use: ./copy_unzip_restart.sh/chef/puppet script • Going with Docker: • Dockerfile: zip, copy into docker, unzip • image zip, use ./copy_unzip_start docker script (we’re paranoid start up) • or: docker push - docker run (we’re ‫יהיה‬‫בסדר‬ startup) • one app=one AWS instance with host network (otherwise you’ll miss zip/unzip days :) ) It is viable option. But Our methods
  10. 10. Monitoring system (Nagios) Counters (graphite) Discovery HA clustering tech Logging Capacity management L4/L7 balancing Getting there What is means (usually) Expertise
  11. 11. 1 Web server, State in app, plain file persistency on disk(1 app instance) K8S 1. Connects Web to Tomcat 2. RC with 1 replica; permanent volume - Watchdog; data persistency* Used features: K8S, Google persistent volume, RC K8S now Step 1
  12. 12. We want Redis, file is too slow, state in app memory 1 web 1 tomcat 1 Redis K8S 1 Web RC replica 1 1 app RC replica 1 (no need for disk) 1 Redis RC master with persistent volume* Used features: K8S, Google persistent volume, RC K8S Step 2
  13. 13. Well, we’re popular, 1 tomcat, 1 web, 1 Redis is not enough 1+webs (session stickiness) 1+tomcat (state in Redis, cached in local memory) 1 Persistent Redis master, Redis slaves for read apps. Used features K8S, Google persistent volume, RC K8S Step 3
  14. 14. preparation steps: 1. Enable Google cloud evaluation - having gmail account is sufficient 2. 1Click Create Project 3. Go to monitoring - 1Click enable 4. go to Container engine - 1Click enable 5. Install SDK or use 1Click Google shell 6. Getting cluster started: gcloud container clusters create grownups --num- nodes 2 --machine-type g1-small Demo
  15. 15. • We talked language we use when we run service at scale • Demonstrated how by using K8S we can for free many features which usually requires significant effort to build and support • K8S ramp up for a big company is a good addition to current resilience solution We are hiring! See us at panel Wrapping up
  16. 16. 1. https://github.com/kubernetes/kubernetes/issues/14642 2. https://github.com/sergei-koren/k8s-demo 3. http://www.slideshare.net/LivePersonDev/resilience-from-theory-to-practice 4. http://www.slideshare.net/LivePersonDev References

×