SlideShare a Scribd company logo
1 of 22
How do you eat a whale?
One byte at a time!
Cloud Computing Expo 2017
June 8th, New York, NY
Kelly Looney,
Director of DevOps Consulting
Skytap Inc
* No whales were harmed in the making of this presentation. Skytap does not promote the eating or harming of whales.
Topics
o Where we started
o Where we’re now
o How we got here
o Organization
o Education
o Technology
o Parting wisdom
Skytap: Key Stats
o Regions
o 7 Multi-tenant (3 US, TOR, EMEA,
AUS, APAC)
o 3 Single-tenant (US)
o 18,057,400 VMs deployed
o Up to 44,500 / day
o 10,356,700 virtual L2 networks deployed
o Up to 19,600 per day
o 604 petabytes of allocated virtual storage
Starting Situation (circa 2014)
o Complex distributed system deployed across several regions
o The service was (mostly) reliable and scalable
o Deployments once a month; patched as needed - but are scary
o Heavy involvement from operations
o Difficult for devs to develop, test, and deploy
Starting Point
Current Situation
o All new services since 1/2016 run in K8S
o All proprietary high churn
services run in K8S
o Integrated CI/CD pipeline
o Ops focused on high value projects
o Release as needed – with confidence!
Current Situation
SOME SORT OF K8S Picture
K8s clusters in Skytap
o Production
o 11 clusters
o 70 nodes
o 185 namespaces
o ~1K pods at any given time
o Staging & Preprod
o 9 clusters
o 34 nodes
o 400 pods at any given time
What We Were Aiming For
o Reduce the unit of deployment
o Micro-services
o Complexity will only increase
o Comprehensive monitoring,
service discovery, and orchestration
o Easy stuff first
o Stateless and immutable services
First Steps…
Guiding Principles
o Change as little as possible
o New tools harmonize with
existing tools
o New stuff in the new framework
Actions
o Get key players on board
o Inventory and categorize services
o Determine how to concurrently
run old/new
Organization
o Recruit a dedicated tools team
o Not a part-time job
o Ideally members have
o Deep technical ability
o Architectural knowledge of
o Major system components
o CI/CD Tools
o RM & Deployment Practices
o Ability to teach
The SRE Role
• An alternative top of the tech ladder
• Start reactive with goal of being mostly
proactive
• Fire Chief to SRE story
• Let this be your primary means of
improvement
• Make the system easy to change first
• Goal to be unafraid to replace or re-
implement when needed
• Be an educator and mentor
Education
o Buddy system
o Documentation
o Support channels
o Reusing existing tools
Our World
o Devs own image generation &
deployment config
o Prebaked templates and custom
builds
o Educational Areas
o Dependency management
o Dockerfile authoring and image
caching
o Implementing K8S health checks
o Estimating resource usage
Technology
o Developers are human
o Release management process
o Kube-native vs. traditional CI/CD
o Which services to move to
Kubernetes first?
Service Categorization
o Application Tier
• Services (Web)
• Platform
• Infra
o Communication model
• Socket based
• Message passing (MQ)
o Application type:
• Stateful
• Stateless
Our CI/CD & Kube
o Deploy ~150 3rd party and
proprietary services to ~1,000
machines in 10+ regions
o Custom CI/CD tools on
Capistrano and Jenkins
o Kube integrated with existing
CI/CD framework
Testability is a P-Zero
o Deployment tools are hard to test
o Failed deployments == Dirty test
environments
o Automated multi-fidelity
environment builds
Fatal Mistakes to Avoid
o Underestimating what you have
o Not considering code, state, & data
o Transient technology choices
o Trying to deliver too much at once
Parting Wisdom
o A customer first attitude will drive
adoption
o Start with compute
o Pick up networking & storage later
o Consider your existing toolchain
o Ability to reset environments will keep
you moving fast
o Much easier for container services to talk
to legacy than vice versa
Thank You!
Contain Yourself:
Incremental Adoption
for Modernization
CoreOS Feast, 2017
San Francisco, CA
Petr Novodvorskiy, Development Lead
Dan Jones, Director of Product Management

More Related Content

Similar to How do you eat a whale? cloud expo 2017

From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015Randy Shoup
 
Configuration Management Evolution at CERN
Configuration Management Evolution at CERNConfiguration Management Evolution at CERN
Configuration Management Evolution at CERNGavin McCance
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Larry Smarr
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Larry Smarr
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Larry Smarr
 
Leaving the Ivory Tower: Research in the Real World
Leaving the Ivory Tower: Research in the Real WorldLeaving the Ivory Tower: Research in the Real World
Leaving the Ivory Tower: Research in the Real WorldC4Media
 
OpenStack Ottawa Q2 MeetUp - May 31st 2017
OpenStack Ottawa Q2 MeetUp - May 31st 2017OpenStack Ottawa Q2 MeetUp - May 31st 2017
OpenStack Ottawa Q2 MeetUp - May 31st 2017Stacy Véronneau
 
Introduction to OpenStack Storage
Introduction to OpenStack StorageIntroduction to OpenStack Storage
Introduction to OpenStack StorageNetApp
 
OpenNebulaConf2015 1.07 Cloud for Scientific Computing @ STFC - Alexander Dibbo
OpenNebulaConf2015 1.07 Cloud for Scientific Computing @ STFC - Alexander DibboOpenNebulaConf2015 1.07 Cloud for Scientific Computing @ STFC - Alexander Dibbo
OpenNebulaConf2015 1.07 Cloud for Scientific Computing @ STFC - Alexander DibboOpenNebula Project
 
Service Architectures at Scale
Service Architectures at ScaleService Architectures at Scale
Service Architectures at ScaleRandy Shoup
 
Coding Secure Infrastructure in the Cloud using the PIE framework
Coding Secure Infrastructure in the Cloud using the PIE frameworkCoding Secure Infrastructure in the Cloud using the PIE framework
Coding Secure Infrastructure in the Cloud using the PIE frameworkJames Wickett
 
CloudStack - Apache's best kept secret
CloudStack - Apache's best kept secretCloudStack - Apache's best kept secret
CloudStack - Apache's best kept secretShapeBlue
 
Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401Amazon Web Services
 
Building a Lightweight Discovery Interface for Chinese Patents, Presented by ...
Building a Lightweight Discovery Interface for Chinese Patents, Presented by ...Building a Lightweight Discovery Interface for Chinese Patents, Presented by ...
Building a Lightweight Discovery Interface for Chinese Patents, Presented by ...Lucidworks (Archived)
 
Computational Patterns of the Cloud
Computational Patterns of the CloudComputational Patterns of the Cloud
Computational Patterns of the CloudC4Media
 
Technical standards & the RDTF Vision: some considerations
Technical standards & the RDTF Vision: some considerationsTechnical standards & the RDTF Vision: some considerations
Technical standards & the RDTF Vision: some considerationsPaul Walk
 
Constrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project BonsaiConstrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project BonsaiIvo Andreev
 
EBSCO Digital Transformation with AWS
EBSCO Digital Transformation with AWS EBSCO Digital Transformation with AWS
EBSCO Digital Transformation with AWS Kenzan
 
Kubernetes at Reddit: An Origin Story - KubeCon NA 2018
Kubernetes at Reddit: An Origin Story - KubeCon NA 2018Kubernetes at Reddit: An Origin Story - KubeCon NA 2018
Kubernetes at Reddit: An Origin Story - KubeCon NA 2018Gregory Taylor
 

Similar to How do you eat a whale? cloud expo 2017 (20)

From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015From the Monolith to Microservices - CraftConf 2015
From the Monolith to Microservices - CraftConf 2015
 
Configuration Management Evolution at CERN
Configuration Management Evolution at CERNConfiguration Management Evolution at CERN
Configuration Management Evolution at CERN
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
 
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
Panel: Open Infrastructure for an Open Society: OSG, Commercial Clouds, and B...
 
Leaving the Ivory Tower: Research in the Real World
Leaving the Ivory Tower: Research in the Real WorldLeaving the Ivory Tower: Research in the Real World
Leaving the Ivory Tower: Research in the Real World
 
OpenStack Ottawa Q2 MeetUp - May 31st 2017
OpenStack Ottawa Q2 MeetUp - May 31st 2017OpenStack Ottawa Q2 MeetUp - May 31st 2017
OpenStack Ottawa Q2 MeetUp - May 31st 2017
 
Introduction to OpenStack Storage
Introduction to OpenStack StorageIntroduction to OpenStack Storage
Introduction to OpenStack Storage
 
OpenNebulaConf2015 1.07 Cloud for Scientific Computing @ STFC - Alexander Dibbo
OpenNebulaConf2015 1.07 Cloud for Scientific Computing @ STFC - Alexander DibboOpenNebulaConf2015 1.07 Cloud for Scientific Computing @ STFC - Alexander Dibbo
OpenNebulaConf2015 1.07 Cloud for Scientific Computing @ STFC - Alexander Dibbo
 
Service Architectures at Scale
Service Architectures at ScaleService Architectures at Scale
Service Architectures at Scale
 
Coding Secure Infrastructure in the Cloud using the PIE framework
Coding Secure Infrastructure in the Cloud using the PIE frameworkCoding Secure Infrastructure in the Cloud using the PIE framework
Coding Secure Infrastructure in the Cloud using the PIE framework
 
CloudStack - Apache's best kept secret
CloudStack - Apache's best kept secretCloudStack - Apache's best kept secret
CloudStack - Apache's best kept secret
 
Application Delivery Patterns
Application Delivery PatternsApplication Delivery Patterns
Application Delivery Patterns
 
Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401
 
Building a Lightweight Discovery Interface for Chinese Patents, Presented by ...
Building a Lightweight Discovery Interface for Chinese Patents, Presented by ...Building a Lightweight Discovery Interface for Chinese Patents, Presented by ...
Building a Lightweight Discovery Interface for Chinese Patents, Presented by ...
 
Computational Patterns of the Cloud
Computational Patterns of the CloudComputational Patterns of the Cloud
Computational Patterns of the Cloud
 
Technical standards & the RDTF Vision: some considerations
Technical standards & the RDTF Vision: some considerationsTechnical standards & the RDTF Vision: some considerations
Technical standards & the RDTF Vision: some considerations
 
Constrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project BonsaiConstrained Optimization with Genetic Algorithms and Project Bonsai
Constrained Optimization with Genetic Algorithms and Project Bonsai
 
EBSCO Digital Transformation with AWS
EBSCO Digital Transformation with AWS EBSCO Digital Transformation with AWS
EBSCO Digital Transformation with AWS
 
Kubernetes at Reddit: An Origin Story - KubeCon NA 2018
Kubernetes at Reddit: An Origin Story - KubeCon NA 2018Kubernetes at Reddit: An Origin Story - KubeCon NA 2018
Kubernetes at Reddit: An Origin Story - KubeCon NA 2018
 

More from Kelly Looney

How to eat a whale?
How to eat a whale?How to eat a whale?
How to eat a whale?Kelly Looney
 
DevOps Workshops Fall 2016
DevOps Workshops Fall 2016DevOps Workshops Fall 2016
DevOps Workshops Fall 2016Kelly Looney
 
Continuous Delivery Decision points
Continuous Delivery Decision pointsContinuous Delivery Decision points
Continuous Delivery Decision pointsKelly Looney
 
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps Journey
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps JourneyGartner Infrastructure and Operations Summit Berlin 2015 - DevOps Journey
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps JourneyKelly Looney
 
The DevOps Journey at bwin.party
The DevOps Journey at bwin.partyThe DevOps Journey at bwin.party
The DevOps Journey at bwin.partyKelly Looney
 
Austin product camp 11 Agile - doing vs being
Austin product camp 11   Agile - doing vs beingAustin product camp 11   Agile - doing vs being
Austin product camp 11 Agile - doing vs beingKelly Looney
 
Product Pricing: What your pricing says about you
Product Pricing: What your pricing says about youProduct Pricing: What your pricing says about you
Product Pricing: What your pricing says about youKelly Looney
 
Product Negatives to Positives
Product Negatives to PositivesProduct Negatives to Positives
Product Negatives to PositivesKelly Looney
 

More from Kelly Looney (9)

How to eat a whale?
How to eat a whale?How to eat a whale?
How to eat a whale?
 
DevOps Workshops Fall 2016
DevOps Workshops Fall 2016DevOps Workshops Fall 2016
DevOps Workshops Fall 2016
 
DevOps Days Ohio
DevOps Days OhioDevOps Days Ohio
DevOps Days Ohio
 
Continuous Delivery Decision points
Continuous Delivery Decision pointsContinuous Delivery Decision points
Continuous Delivery Decision points
 
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps Journey
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps JourneyGartner Infrastructure and Operations Summit Berlin 2015 - DevOps Journey
Gartner Infrastructure and Operations Summit Berlin 2015 - DevOps Journey
 
The DevOps Journey at bwin.party
The DevOps Journey at bwin.partyThe DevOps Journey at bwin.party
The DevOps Journey at bwin.party
 
Austin product camp 11 Agile - doing vs being
Austin product camp 11   Agile - doing vs beingAustin product camp 11   Agile - doing vs being
Austin product camp 11 Agile - doing vs being
 
Product Pricing: What your pricing says about you
Product Pricing: What your pricing says about youProduct Pricing: What your pricing says about you
Product Pricing: What your pricing says about you
 
Product Negatives to Positives
Product Negatives to PositivesProduct Negatives to Positives
Product Negatives to Positives
 

Recently uploaded

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 

Recently uploaded (20)

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 

How do you eat a whale? cloud expo 2017

  • 1. How do you eat a whale? One byte at a time! Cloud Computing Expo 2017 June 8th, New York, NY Kelly Looney, Director of DevOps Consulting Skytap Inc * No whales were harmed in the making of this presentation. Skytap does not promote the eating or harming of whales.
  • 2. Topics o Where we started o Where we’re now o How we got here o Organization o Education o Technology o Parting wisdom
  • 3. Skytap: Key Stats o Regions o 7 Multi-tenant (3 US, TOR, EMEA, AUS, APAC) o 3 Single-tenant (US) o 18,057,400 VMs deployed o Up to 44,500 / day o 10,356,700 virtual L2 networks deployed o Up to 19,600 per day o 604 petabytes of allocated virtual storage
  • 4. Starting Situation (circa 2014) o Complex distributed system deployed across several regions o The service was (mostly) reliable and scalable o Deployments once a month; patched as needed - but are scary o Heavy involvement from operations o Difficult for devs to develop, test, and deploy
  • 6. Current Situation o All new services since 1/2016 run in K8S o All proprietary high churn services run in K8S o Integrated CI/CD pipeline o Ops focused on high value projects o Release as needed – with confidence!
  • 8. SOME SORT OF K8S Picture K8s clusters in Skytap o Production o 11 clusters o 70 nodes o 185 namespaces o ~1K pods at any given time o Staging & Preprod o 9 clusters o 34 nodes o 400 pods at any given time
  • 9. What We Were Aiming For o Reduce the unit of deployment o Micro-services o Complexity will only increase o Comprehensive monitoring, service discovery, and orchestration o Easy stuff first o Stateless and immutable services
  • 10. First Steps… Guiding Principles o Change as little as possible o New tools harmonize with existing tools o New stuff in the new framework Actions o Get key players on board o Inventory and categorize services o Determine how to concurrently run old/new
  • 11. Organization o Recruit a dedicated tools team o Not a part-time job o Ideally members have o Deep technical ability o Architectural knowledge of o Major system components o CI/CD Tools o RM & Deployment Practices o Ability to teach
  • 12. The SRE Role • An alternative top of the tech ladder • Start reactive with goal of being mostly proactive • Fire Chief to SRE story • Let this be your primary means of improvement • Make the system easy to change first • Goal to be unafraid to replace or re- implement when needed • Be an educator and mentor
  • 13. Education o Buddy system o Documentation o Support channels o Reusing existing tools
  • 14. Our World o Devs own image generation & deployment config o Prebaked templates and custom builds o Educational Areas o Dependency management o Dockerfile authoring and image caching o Implementing K8S health checks o Estimating resource usage
  • 15. Technology o Developers are human o Release management process o Kube-native vs. traditional CI/CD o Which services to move to Kubernetes first?
  • 16. Service Categorization o Application Tier • Services (Web) • Platform • Infra o Communication model • Socket based • Message passing (MQ) o Application type: • Stateful • Stateless
  • 17. Our CI/CD & Kube o Deploy ~150 3rd party and proprietary services to ~1,000 machines in 10+ regions o Custom CI/CD tools on Capistrano and Jenkins o Kube integrated with existing CI/CD framework
  • 18. Testability is a P-Zero o Deployment tools are hard to test o Failed deployments == Dirty test environments o Automated multi-fidelity environment builds
  • 19. Fatal Mistakes to Avoid o Underestimating what you have o Not considering code, state, & data o Transient technology choices o Trying to deliver too much at once
  • 20. Parting Wisdom o A customer first attitude will drive adoption o Start with compute o Pick up networking & storage later o Consider your existing toolchain o Ability to reset environments will keep you moving fast o Much easier for container services to talk to legacy than vice versa
  • 22. Contain Yourself: Incremental Adoption for Modernization CoreOS Feast, 2017 San Francisco, CA Petr Novodvorskiy, Development Lead Dan Jones, Director of Product Management

Editor's Notes

  1. Speaker: Dan
  2. Speaker: Dan
  3. Speaker: Dan
  4. Speaker: Petr Skytap, as any big public cloud is big distributed system we run on vsphere cluster, not GCE/AWS/Azure We have around 150 microservices Because of ties between two management systems, source code in mercurial && binaries managed by puppet unability to rollback deployments require a lot of orchestration between different teams in the company and happen in big chunks Developers only partially own system they are working on, making it harder to develop and use newer tools to test
  5. Speaker: Petr This is extremely simplified diagram of our system circa 2014 Everything is running in VMs All connections come in through F5 loadbalancer and go to web nodes All other services are communicating over RabbitMQ
  6. Speaker: Petr slide It was a long way with tons of mistakes and different organizations pushing back on our agenda, but we pulled through We worked with dev teams to understand which services have highest release churn and prioritized them first Developers of those teams usually had highest level of frustration with current deployment tools, so convincing them to move to kubernetes wasn’t a big problem Ops are not maintaining anything inside developers VMs anymore, let’s them be focused on high value projects QA doesn’t gets obsessed with discrepancy between provisined state with puppet and deployed source code QA is confiden they can roll back broken build on staging environment without involving developers
  7. Speaker: Petr Highly simplified version of our current state High release churn services have moved to kubernetes Some proprietary services are still running in VMs and we don’t have short term plan to move them We are considering moving mq and mysql galera to kubernetes next
  8. Speaker: Petr
  9. Speaker: Dan
  10. Speaker: Dan
  11. Speaker: Dan
  12. Speaker: Dan
  13. Speaker: Petr In new world developers have far more power However with power comes responsiblity. As with any transfer of responsibility, we needed to educate developers and explain advantages of the appraoch We needed to explain what immutable builds are, why is it important to track versions of packages they are installing and pin them Image caching and faster builds Explanation why healthchecks and readiness checks are important and useful Working with developers to teach them how to profile their system and estimate resource usage
  14. Speaker: Petr Other problem we experienced with introducing kubernetes to new company is fear of change Kubernetes is very opinionated system for good reasons, however people usually have their own opinions too. While people are happy to take advantage of building their own images, they already have release management deployment tools that they know and use Instead of adopting any kubernetes native CI/CD tools we decided to take our existing tools and adopt them to kubernetes We also tried to choose services that require least amount of change to start running in kubernetes We tried to choose to port services that require least amount of change to start running in kubernetes have developers that are most interested in kubernetes featureset (churn)
  15. Speaker: Petr Split services in several categories high release churn communication model stateful/stateless I don’t want to spread the myth that it’s impossible to run stateful services. And networking policies and ingress rules are really helping us now.. However, it’s harder to run stateful services then stateless setting up efficient direct network communication between non-kube services and kube-services in absence of cloud provided loadbalancers is hard So: mq based, high churn, stateless services first candidate: workflow service, then web workers
  16. Speaker: Petr Instead of adopting any kubernetes native CI/CD tools we decided to take our existing tools and adopt them to kubernetes Our deployment tool is based on capistrano that was heavily modified and it is fairly archaic and we considered throwing it away and replacing it with something better However we realized that: it would be too much of a change along with introduction of kubernetes There’s knowledge built in this tools, that is not explicit, but it was accumulated by years of usage and fixing Integrated kubernetes with these custom tools in a manner with which we can later transition parts of the product to helm/tiller
  17. Speaker: Petr Deployment tools and deployment processes are hard to test Transitioning to new deployment processes is even harder to test Without testing you’ll have more problems in transition and can loose confidence of developers and that can compromise the whole project While inside kubernetes there are nice deployment objects that you can rollback, there was nothing like that for maintaining kubernetes cluster as a whole (until tectonic came out, and in case of tectonic that would relate to only part of the system that already migrated to coreos/kube) We ended up creating a tool that allows us to build fully functional copies of production environments on demand, high fidelity to low fidelity Without it confident transition to kubernetes wouldn’t be possible Each developer gets kubernetes environment as it is deployed in production
  18. Speaker: Dan Tech Choices: F5 Mesos decision – just went to a conference.
  19. Speaker: Dan
  20. Speaker: Dan