SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Jumpstart into Grownups world
by using k8s out of box abilities
by: Sergei Koren Production Architect
Efim Dimenstein Chief Software Architect
• 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
• Production architect at Liveperson
• 20 years of High Tech experience
• 10 years of SaaS experience
Few words about us
Sergei Koren
• Chief Architect at Liveperson
• 15 years of High Tech experience
• 15 years of SaaS experience
Few words about us
Efim Dimenstein
• 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
• 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?
‫יהיה‬‫בסדר‬
We’re at the beginning: our wording
• 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
Monitoring system (Nagios)
Counters (graphite)
Discovery
HA clustering tech
Logging
Capacity management
L4/L7 balancing
Getting there What is means (usually)
Expertise
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
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
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
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
• 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
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

Weitere ähnliche Inhalte

Andere mochten auch

Hamburger Marys Equality Happy Hour Preso
Hamburger Marys Equality Happy Hour PresoHamburger Marys Equality Happy Hour Preso
Hamburger Marys Equality Happy Hour Presogtsimpson3
 
Ambientesculturalesvargas
AmbientesculturalesvargasAmbientesculturalesvargas
Ambientesculturalesvargasguest2d6541
 
Strategie nutrizionali nella corsa gjav integratori ferrara
Strategie nutrizionali nella corsa gjav integratori ferraraStrategie nutrizionali nella corsa gjav integratori ferrara
Strategie nutrizionali nella corsa gjav integratori ferraraGJAV
 
Session1 part1
Session1 part1Session1 part1
Session1 part1maovkh
 
Heller Line
Heller Line  Heller Line
Heller Line cvt2go
 
Learn the Secrets of Running Successful AdWords Campaigns for Multi-Location ...
Learn the Secrets of Running Successful AdWords Campaigns for Multi-Location ...Learn the Secrets of Running Successful AdWords Campaigns for Multi-Location ...
Learn the Secrets of Running Successful AdWords Campaigns for Multi-Location ...Powered by Search
 
Session1 part2
Session1 part2Session1 part2
Session1 part2maovkh
 
Position paper
Position paperPosition paper
Position paperhmoulds
 
Slides anu talkwebarchivingaug2012
Slides anu talkwebarchivingaug2012Slides anu talkwebarchivingaug2012
Slides anu talkwebarchivingaug2012Roxanne Missingham
 
Antin my kind of people (clean)
Antin   my kind of people (clean)Antin   my kind of people (clean)
Antin my kind of people (clean)Judd Antin
 

Andere mochten auch (17)

Infosat
InfosatInfosat
Infosat
 
Subasta Yankee
Subasta YankeeSubasta Yankee
Subasta Yankee
 
Hamburger Marys Equality Happy Hour Preso
Hamburger Marys Equality Happy Hour PresoHamburger Marys Equality Happy Hour Preso
Hamburger Marys Equality Happy Hour Preso
 
Bosco Youth
Bosco YouthBosco Youth
Bosco Youth
 
Ambientesculturalesvargas
AmbientesculturalesvargasAmbientesculturalesvargas
Ambientesculturalesvargas
 
Strategie nutrizionali nella corsa gjav integratori ferrara
Strategie nutrizionali nella corsa gjav integratori ferraraStrategie nutrizionali nella corsa gjav integratori ferrara
Strategie nutrizionali nella corsa gjav integratori ferrara
 
Jing and Capture
Jing and CaptureJing and Capture
Jing and Capture
 
Globalinvacom
GlobalinvacomGlobalinvacom
Globalinvacom
 
Icecrypt
IcecryptIcecrypt
Icecrypt
 
Session1 part1
Session1 part1Session1 part1
Session1 part1
 
Heller Line
Heller Line  Heller Line
Heller Line
 
Learn the Secrets of Running Successful AdWords Campaigns for Multi-Location ...
Learn the Secrets of Running Successful AdWords Campaigns for Multi-Location ...Learn the Secrets of Running Successful AdWords Campaigns for Multi-Location ...
Learn the Secrets of Running Successful AdWords Campaigns for Multi-Location ...
 
Session1 part2
Session1 part2Session1 part2
Session1 part2
 
Xiaomi leathercraft _smmf2014
Xiaomi leathercraft _smmf2014Xiaomi leathercraft _smmf2014
Xiaomi leathercraft _smmf2014
 
Position paper
Position paperPosition paper
Position paper
 
Slides anu talkwebarchivingaug2012
Slides anu talkwebarchivingaug2012Slides anu talkwebarchivingaug2012
Slides anu talkwebarchivingaug2012
 
Antin my kind of people (clean)
Antin   my kind of people (clean)Antin   my kind of people (clean)
Antin my kind of people (clean)
 

Mehr von LivePerson

Microservices on top of kafka
Microservices on top of kafkaMicroservices on top of kafka
Microservices on top of kafkaLivePerson
 
Graph QL Introduction
Graph QL IntroductionGraph QL Introduction
Graph QL IntroductionLivePerson
 
Kubernetes your tests! automation with docker on google cloud platform
Kubernetes your tests! automation with docker on google cloud platformKubernetes your tests! automation with docker on google cloud platform
Kubernetes your tests! automation with docker on google cloud platformLivePerson
 
Growing into a proactive Data Platform
Growing into a proactive Data PlatformGrowing into a proactive Data Platform
Growing into a proactive Data PlatformLivePerson
 
Measure() or die()
Measure() or die() Measure() or die()
Measure() or die() LivePerson
 
Resilience from Theory to Practice
Resilience from Theory to PracticeResilience from Theory to Practice
Resilience from Theory to PracticeLivePerson
 
System Revolution- How We Did It
System Revolution- How We Did It System Revolution- How We Did It
System Revolution- How We Did It LivePerson
 
Liveperson DLD 2015
Liveperson DLD 2015 Liveperson DLD 2015
Liveperson DLD 2015 LivePerson
 
Mobile app real-time content modifications using websockets
Mobile app real-time content modifications using websocketsMobile app real-time content modifications using websockets
Mobile app real-time content modifications using websocketsLivePerson
 
Mobile SDK: Considerations & Best Practices
Mobile SDK: Considerations & Best Practices Mobile SDK: Considerations & Best Practices
Mobile SDK: Considerations & Best Practices LivePerson
 
Functional programming with Java 8
Functional programming with Java 8Functional programming with Java 8
Functional programming with Java 8LivePerson
 
Apache Avro in LivePerson [Hebrew]
Apache Avro in LivePerson [Hebrew]Apache Avro in LivePerson [Hebrew]
Apache Avro in LivePerson [Hebrew]LivePerson
 
Apache Avro and Messaging at Scale in LivePerson
Apache Avro and Messaging at Scale in LivePersonApache Avro and Messaging at Scale in LivePerson
Apache Avro and Messaging at Scale in LivePersonLivePerson
 
Data compression in Modern Application
Data compression in Modern ApplicationData compression in Modern Application
Data compression in Modern ApplicationLivePerson
 
Support Office Hour Webinar - LivePerson API
Support Office Hour Webinar - LivePerson API Support Office Hour Webinar - LivePerson API
Support Office Hour Webinar - LivePerson API LivePerson
 
SIP - Introduction to SIP Protocol
SIP - Introduction to SIP ProtocolSIP - Introduction to SIP Protocol
SIP - Introduction to SIP ProtocolLivePerson
 
Scalding: Reaching Efficient MapReduce
Scalding: Reaching Efficient MapReduceScalding: Reaching Efficient MapReduce
Scalding: Reaching Efficient MapReduceLivePerson
 
Building Enterprise Level End-To-End Monitor System with Open Source Solution...
Building Enterprise Level End-To-End Monitor System with Open Source Solution...Building Enterprise Level End-To-End Monitor System with Open Source Solution...
Building Enterprise Level End-To-End Monitor System with Open Source Solution...LivePerson
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data ScienceLivePerson
 
From a Kafkaesque Story to The Promised Land at LivePerson
From a Kafkaesque Story to The Promised Land at LivePersonFrom a Kafkaesque Story to The Promised Land at LivePerson
From a Kafkaesque Story to The Promised Land at LivePersonLivePerson
 

Mehr von LivePerson (20)

Microservices on top of kafka
Microservices on top of kafkaMicroservices on top of kafka
Microservices on top of kafka
 
Graph QL Introduction
Graph QL IntroductionGraph QL Introduction
Graph QL Introduction
 
Kubernetes your tests! automation with docker on google cloud platform
Kubernetes your tests! automation with docker on google cloud platformKubernetes your tests! automation with docker on google cloud platform
Kubernetes your tests! automation with docker on google cloud platform
 
Growing into a proactive Data Platform
Growing into a proactive Data PlatformGrowing into a proactive Data Platform
Growing into a proactive Data Platform
 
Measure() or die()
Measure() or die() Measure() or die()
Measure() or die()
 
Resilience from Theory to Practice
Resilience from Theory to PracticeResilience from Theory to Practice
Resilience from Theory to Practice
 
System Revolution- How We Did It
System Revolution- How We Did It System Revolution- How We Did It
System Revolution- How We Did It
 
Liveperson DLD 2015
Liveperson DLD 2015 Liveperson DLD 2015
Liveperson DLD 2015
 
Mobile app real-time content modifications using websockets
Mobile app real-time content modifications using websocketsMobile app real-time content modifications using websockets
Mobile app real-time content modifications using websockets
 
Mobile SDK: Considerations & Best Practices
Mobile SDK: Considerations & Best Practices Mobile SDK: Considerations & Best Practices
Mobile SDK: Considerations & Best Practices
 
Functional programming with Java 8
Functional programming with Java 8Functional programming with Java 8
Functional programming with Java 8
 
Apache Avro in LivePerson [Hebrew]
Apache Avro in LivePerson [Hebrew]Apache Avro in LivePerson [Hebrew]
Apache Avro in LivePerson [Hebrew]
 
Apache Avro and Messaging at Scale in LivePerson
Apache Avro and Messaging at Scale in LivePersonApache Avro and Messaging at Scale in LivePerson
Apache Avro and Messaging at Scale in LivePerson
 
Data compression in Modern Application
Data compression in Modern ApplicationData compression in Modern Application
Data compression in Modern Application
 
Support Office Hour Webinar - LivePerson API
Support Office Hour Webinar - LivePerson API Support Office Hour Webinar - LivePerson API
Support Office Hour Webinar - LivePerson API
 
SIP - Introduction to SIP Protocol
SIP - Introduction to SIP ProtocolSIP - Introduction to SIP Protocol
SIP - Introduction to SIP Protocol
 
Scalding: Reaching Efficient MapReduce
Scalding: Reaching Efficient MapReduceScalding: Reaching Efficient MapReduce
Scalding: Reaching Efficient MapReduce
 
Building Enterprise Level End-To-End Monitor System with Open Source Solution...
Building Enterprise Level End-To-End Monitor System with Open Source Solution...Building Enterprise Level End-To-End Monitor System with Open Source Solution...
Building Enterprise Level End-To-End Monitor System with Open Source Solution...
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
From a Kafkaesque Story to The Promised Land at LivePerson
From a Kafkaesque Story to The Promised Land at LivePersonFrom a Kafkaesque Story to The Promised Land at LivePerson
From a Kafkaesque Story to The Promised Land at LivePerson
 

Kürzlich hochgeladen

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 

Kürzlich hochgeladen (20)

The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 

Jumpstart into grownups word by using k8s out of box abilities

  • 1. Jumpstart into Grownups world by using k8s out of box abilities by: Sergei Koren Production Architect Efim Dimenstein Chief Software Architect
  • 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. • Production architect at Liveperson • 20 years of High Tech experience • 10 years of SaaS experience Few words about us Sergei Koren
  • 4. • Chief Architect at Liveperson • 15 years of High Tech experience • 15 years of SaaS experience Few words about us Efim Dimenstein
  • 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. • Resiliency • Scalability • Uptime • SLA • Availability Our focus, wording, requirements
  • 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. • 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. Monitoring system (Nagios) Counters (graphite) Discovery HA clustering tech Logging Capacity management L4/L7 balancing Getting there What is means (usually) Expertise
  • 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. 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. 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. 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. • 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. 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

Hinweis der Redaktion

  1. questions: 1. Do you have docker in production? How many instances? less than 50? 500? 5000?