SlideShare a Scribd company logo
1 of 18
Accelerate Your Inner Dev Loop for
Kubernetes Services
Abhay Saxena
Principal Software Engineer, Datawire
Jen Dyment
Product Marketing Manager, Datawire
● Containers introduce complexities to inner dev loops
● Typical approaches to remedy these complexities introduce
additional issues
● Service Preview allows you to:
○ Code microservices locally
○ Preview changes immediately with routed test traffic
○ Use your favorite tools (debuggers, IDEs, etc.) locally
○ Treat microservice as if it is live in the cluster
○ Work in isolation before merging your changes
● Service Preview is simple to implement
tl;dr
Please ask questions!
CODE
DEVELOPMENT
RUN
OPERATIONS
TEST
ALL QA
RELEASE
OPERATIONS
DEPLOY
OPERATIONS
Huge
Team
Microservices Enable Faster
OUTER Dev Loops
DEV
DEV
DEV
DEV
CODE
DEVELOPMENT
RUN
OPERATIONS
TEST
ALL QA
RELEASE
OPERATIONS
DEPLOY
OPERATIONS
Huge
Team
Microservices Enable Faster
OUTER Dev Loops
Containers Slows Down
INNER Dev Loops
Other approaches to setting up dev
environments have drawbacks
Copy 1
Copy 3
MS 1
MS 2
MS 3
MS 4
Kubernetes Dev
Cluster
Copy 2
Individual Copies of Dev Cluster for
Each Developer
Issues
- $$$ Cloud Costs
- Pain to keep up-
to-date
Running Local Only Development
Environments
Issues
- Requires “64-core laptops”
- Maintenance of emulators
- Pain to keep up-to-date
MS2 Code
MS1 Code
MS1 Code
MS 2
MS 3
MS 1
Kubernetes Dev Cluster
Edge
Requests
Dev 1 Test Traffic
Typical Traffic
Dev 1 Service Preview Proxy
Dev 2 Test Traffic
Dev 2 Service Preview Proxy
Service Preview in the Ambassador Edge
Stack
MS2 Code
MS1 Code
MS1 Code
MS 2
MS 3
MS 1
Kubernetes Dev Cluster
Edge
Requests
SHORTEN THE INNER DEV LOOP
Dev 1 Test Traffic
Typical Traffic
Dev 1 Service Preview Proxy
Dev 2 Test Traffic
Dev 2 Service Preview Proxy
WORK AND TEST CHANGES IN ISOLATION
MS2 Code
MS1 Code
MS1 Code
MS 2
MS 3
MS 1
Kubernetes Dev Cluster
Edge
Individually
Identifiable
Requests
Dev 1 Test Traffic
Typical Traffic
Dev 1 Service Preview Proxy
Dev 2 Test Traffic
Dev 2 Service Preview Proxy
Speed of Inner
Dev Loop
Isolated Code
Loops
Fidelity of
Environment
Low Maintenance
Efforts/ Costs
Scalability
1. Container
Approach:
Local Changes,
Push to Cloud
2. Local
Approach:
Completely Local,
Emulated Services
3. Cloud
Approach:
Duplicated Dev
Clusters
4. Service Preview
Approach:
Proxies and
Routing
Demo of
Service Preview
What Just Happened?
MS2 Code
MS1 Code
MS1 Code
MS 2
MS 3
MS 1
Kubernetes Dev Cluster
Edge
Individually
Identifiable
Requests
Dev 1 Test Traffic
Typical Traffic
Dev 1 Service Preview Proxy
Dev 2 Test Traffic
Dev 2 Service Preview Proxy
A quick recap...
● Code microservices locally
● Preview changes immediately with routed test traffic
● Use your favorite tools (debuggers, IDEs, etc.) locally
● Treat microservice as if it is live in the cluster
● Work in isolation before merging your changes
Wrapping Up
Get Started with Service
Preview and Edge Control:
https://www.getambassador.io/docs/latest/topics/using/edgectl/
Subscribe to our podcasts:
https://www.getambassador.io/resources?types=Podcast
Follow us on Twitter:
https://twitter.com/getambassadorio
Learning More
youtube.com/watch?v=LDiyKOa1V_A
Q&A

More Related Content

What's hot

What's hot (20)

Dark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill MonkmanDark launching with Consul at Hootsuite - Bill Monkman
Dark launching with Consul at Hootsuite - Bill Monkman
 
Taking Docker from Local to Production at Intuit JanJaap Lahpor, Intuit and H...
Taking Docker from Local to Production at Intuit JanJaap Lahpor, Intuit and H...Taking Docker from Local to Production at Intuit JanJaap Lahpor, Intuit and H...
Taking Docker from Local to Production at Intuit JanJaap Lahpor, Intuit and H...
 
Infinit's Next Generation Key-value Store - Julien Quintard and Quentin Hocqu...
Infinit's Next Generation Key-value Store - Julien Quintard and Quentin Hocqu...Infinit's Next Generation Key-value Store - Julien Quintard and Quentin Hocqu...
Infinit's Next Generation Key-value Store - Julien Quintard and Quentin Hocqu...
 
Websockets: Pushing the web forward
Websockets: Pushing the web forwardWebsockets: Pushing the web forward
Websockets: Pushing the web forward
 
KubeCon NA 2017: Ambassador and Envoy (Envoy Salon)
KubeCon NA 2017: Ambassador and Envoy (Envoy Salon)KubeCon NA 2017: Ambassador and Envoy (Envoy Salon)
KubeCon NA 2017: Ambassador and Envoy (Envoy Salon)
 
VMUG St Louis - SDN in the Real World
VMUG St Louis - SDN in the Real WorldVMUG St Louis - SDN in the Real World
VMUG St Louis - SDN in the Real World
 
Nordic infrastructure Conference 2017 - SQL Server in DevOps
Nordic infrastructure Conference 2017 - SQL Server in DevOpsNordic infrastructure Conference 2017 - SQL Server in DevOps
Nordic infrastructure Conference 2017 - SQL Server in DevOps
 
Keeping your Kubernetes Cluster Secure
Keeping your Kubernetes Cluster SecureKeeping your Kubernetes Cluster Secure
Keeping your Kubernetes Cluster Secure
 
NYC Kubernetes Meetup: Ambassador and Istio - Flynn, Datawire
NYC Kubernetes Meetup: Ambassador and Istio - Flynn, DatawireNYC Kubernetes Meetup: Ambassador and Istio - Flynn, Datawire
NYC Kubernetes Meetup: Ambassador and Istio - Flynn, Datawire
 
2017 Microservices Practitioner Virtual Summit: The Mechanics of Deploying En...
2017 Microservices Practitioner Virtual Summit: The Mechanics of Deploying En...2017 Microservices Practitioner Virtual Summit: The Mechanics of Deploying En...
2017 Microservices Practitioner Virtual Summit: The Mechanics of Deploying En...
 
Docker Store: The New Destination for Enterprise Software - Lily Guo and Alfr...
Docker Store: The New Destination for Enterprise Software - Lily Guo and Alfr...Docker Store: The New Destination for Enterprise Software - Lily Guo and Alfr...
Docker Store: The New Destination for Enterprise Software - Lily Guo and Alfr...
 
Docker for Ops - Scott Coulton, Puppet
Docker for Ops - Scott Coulton, PuppetDocker for Ops - Scott Coulton, Puppet
Docker for Ops - Scott Coulton, Puppet
 
Andrea Di Persio
Andrea Di PersioAndrea Di Persio
Andrea Di Persio
 
Monitoring and Tuning GlassFish
Monitoring and Tuning GlassFishMonitoring and Tuning GlassFish
Monitoring and Tuning GlassFish
 
All Things Open 2017: How to Treat a Network as a Container
All Things Open 2017: How to Treat a Network as a ContainerAll Things Open 2017: How to Treat a Network as a Container
All Things Open 2017: How to Treat a Network as a Container
 
Global Operations with Docker for the Enterprise - Nico Kabar, Docker
Global Operations with Docker for the Enterprise - Nico Kabar, DockerGlobal Operations with Docker for the Enterprise - Nico Kabar, Docker
Global Operations with Docker for the Enterprise - Nico Kabar, Docker
 
Your Developers Can Be Heroes on Kubernetes
Your Developers Can Be Heroes on KubernetesYour Developers Can Be Heroes on Kubernetes
Your Developers Can Be Heroes on Kubernetes
 
Online Meetup: Intro to LinuxKit
Online Meetup: Intro to LinuxKitOnline Meetup: Intro to LinuxKit
Online Meetup: Intro to LinuxKit
 
Provisioning Servers Made Easy
Provisioning Servers Made EasyProvisioning Servers Made Easy
Provisioning Servers Made Easy
 
DCSF19 Deploying Istio as an Ingress Controller
DCSF19 Deploying Istio as an Ingress Controller DCSF19 Deploying Istio as an Ingress Controller
DCSF19 Deploying Istio as an Ingress Controller
 

Similar to Webinar: Accelerate Your Inner Dev Loop for Kubernetes Services

Similar to Webinar: Accelerate Your Inner Dev Loop for Kubernetes Services (20)

SQL Server: Now It's Everywhere You Want to Be
SQL Server: Now It's Everywhere You Want to BeSQL Server: Now It's Everywhere You Want to Be
SQL Server: Now It's Everywhere You Want to Be
 
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesPatterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to Kubernetes
 
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesPatterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to Kubernetes
 
Versioning for Developers
Versioning for DevelopersVersioning for Developers
Versioning for Developers
 
Alm tce parallel development
Alm tce parallel developmentAlm tce parallel development
Alm tce parallel development
 
Implementing Enterprise DevOps: Real Life Experiences
Implementing Enterprise DevOps: Real Life ExperiencesImplementing Enterprise DevOps: Real Life Experiences
Implementing Enterprise DevOps: Real Life Experiences
 
Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?
Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?
Sysco Oracle Tour 2016 - What's new in FMW 12.2.1?
 
To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…
 
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps:  Standardizing Chaotic Culture at NBCUniversalEfficient DevOps:  Standardizing Chaotic Culture at NBCUniversal
Efficient DevOps: Standardizing Chaotic Culture at NBCUniversal
 
Cont0519
Cont0519Cont0519
Cont0519
 
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 MeetupPreparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
 
AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...
AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...
AAI-4847 Full Disclosure on the Performance Characteristics of WebSphere Appl...
 
DWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
DWX 2023 - Datenbank-Schema Deployment im Kubernetes ReleaseDWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
DWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
 
Application Centric Microservices from Redhat Summit 2015
Application Centric Microservices from Redhat Summit 2015Application Centric Microservices from Redhat Summit 2015
Application Centric Microservices from Redhat Summit 2015
 
Building Big Architectures
Building Big ArchitecturesBuilding Big Architectures
Building Big Architectures
 
NoSQL for SQL Server Developers using Couchbase
NoSQL for SQL Server Developers using CouchbaseNoSQL for SQL Server Developers using Couchbase
NoSQL for SQL Server Developers using Couchbase
 
Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native Apps
 
DevOps and Microservice
DevOps and MicroserviceDevOps and Microservice
DevOps and Microservice
 
Continuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with JenkinsContinuous Integration for OpenVMS with Jenkins
Continuous Integration for OpenVMS with Jenkins
 
Distributed query deep dive conor cunningham
Distributed query deep dive   conor cunninghamDistributed query deep dive   conor cunningham
Distributed query deep dive conor cunningham
 

More from Ambassador Labs

[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
Ambassador Labs
 

More from Ambassador Labs (20)

Building Microservice Systems Without Cooking Your Laptop: Going “Remocal” wi...
Building Microservice Systems Without Cooking Your Laptop: Going “Remocal” wi...Building Microservice Systems Without Cooking Your Laptop: Going “Remocal” wi...
Building Microservice Systems Without Cooking Your Laptop: Going “Remocal” wi...
 
Ambassador Developer Office Hours: Summer of Kubernetes Ship Week 1: Intro to...
Ambassador Developer Office Hours: Summer of Kubernetes Ship Week 1: Intro to...Ambassador Developer Office Hours: Summer of Kubernetes Ship Week 1: Intro to...
Ambassador Developer Office Hours: Summer of Kubernetes Ship Week 1: Intro to...
 
Cloud native development without the toil
Cloud native development without the toilCloud native development without the toil
Cloud native development without the toil
 
[Confoo Montreal 2020] From Grief to Growth: The 7 Stages of Observability - ...
[Confoo Montreal 2020] From Grief to Growth: The 7 Stages of Observability - ...[Confoo Montreal 2020] From Grief to Growth: The 7 Stages of Observability - ...
[Confoo Montreal 2020] From Grief to Growth: The 7 Stages of Observability - ...
 
[Confoo Montreal 2020] Build Your Own Serverless with Knative - Alex Gervais
[Confoo Montreal 2020] Build Your Own Serverless with Knative - Alex Gervais[Confoo Montreal 2020] Build Your Own Serverless with Knative - Alex Gervais
[Confoo Montreal 2020] Build Your Own Serverless with Knative - Alex Gervais
 
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
 
Webinar: Effective Management of APIs and the Edge when Adopting Kubernetes
Webinar: Effective Management of APIs and the Edge when Adopting Kubernetes Webinar: Effective Management of APIs and the Edge when Adopting Kubernetes
Webinar: Effective Management of APIs and the Edge when Adopting Kubernetes
 
Ambassador: Building a Control Plane for Envoy
Ambassador: Building a Control Plane for Envoy Ambassador: Building a Control Plane for Envoy
Ambassador: Building a Control Plane for Envoy
 
Telepresence - Fast Development Workflows for Kubernetes
Telepresence - Fast Development Workflows for KubernetesTelepresence - Fast Development Workflows for Kubernetes
Telepresence - Fast Development Workflows for Kubernetes
 
[KubeCon NA 2018] Telepresence Deep Dive Session - Rafael Schloming & Luke Sh...
[KubeCon NA 2018] Telepresence Deep Dive Session - Rafael Schloming & Luke Sh...[KubeCon NA 2018] Telepresence Deep Dive Session - Rafael Schloming & Luke Sh...
[KubeCon NA 2018] Telepresence Deep Dive Session - Rafael Schloming & Luke Sh...
 
[KubeCon NA 2018] Effective Kubernetes Develop: Turbocharge Your Dev Loop - P...
[KubeCon NA 2018] Effective Kubernetes Develop: Turbocharge Your Dev Loop - P...[KubeCon NA 2018] Effective Kubernetes Develop: Turbocharge Your Dev Loop - P...
[KubeCon NA 2018] Effective Kubernetes Develop: Turbocharge Your Dev Loop - P...
 
The rise of Layer 7, microservices, and the proxy war with Envoy, NGINX, and ...
The rise of Layer 7, microservices, and the proxy war with Envoy, NGINX, and ...The rise of Layer 7, microservices, and the proxy war with Envoy, NGINX, and ...
The rise of Layer 7, microservices, and the proxy war with Envoy, NGINX, and ...
 
The Simply Complex Task of Implementing Kubernetes Ingress - Velocity NYC
The Simply Complex Task of Implementing Kubernetes Ingress - Velocity NYCThe Simply Complex Task of Implementing Kubernetes Ingress - Velocity NYC
The Simply Complex Task of Implementing Kubernetes Ingress - Velocity NYC
 
Ambassador Kubernetes-Native API Gateway
Ambassador Kubernetes-Native API GatewayAmbassador Kubernetes-Native API Gateway
Ambassador Kubernetes-Native API Gateway
 
Micro xchg 2018 - What is a Service Mesh?
Micro xchg 2018 - What is a Service Mesh? Micro xchg 2018 - What is a Service Mesh?
Micro xchg 2018 - What is a Service Mesh?
 
Webinar: Code Faster on Kubernetes
Webinar: Code Faster on KubernetesWebinar: Code Faster on Kubernetes
Webinar: Code Faster on Kubernetes
 
QCon SF 2017 - Microservices: Service-Oriented Development
QCon SF 2017 - Microservices: Service-Oriented DevelopmentQCon SF 2017 - Microservices: Service-Oriented Development
QCon SF 2017 - Microservices: Service-Oriented Development
 
Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...
Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...
Montreal Kubernetes Meetup: Developer-first workflows (for microservices) on ...
 
O'Reilly Software Architecture Conference London 2017: Building Resilient Mic...
O'Reilly Software Architecture Conference London 2017: Building Resilient Mic...O'Reilly Software Architecture Conference London 2017: Building Resilient Mic...
O'Reilly Software Architecture Conference London 2017: Building Resilient Mic...
 
Velocity NYC 2017: Building Resilient Microservices with Kubernetes, Docker, ...
Velocity NYC 2017: Building Resilient Microservices with Kubernetes, Docker, ...Velocity NYC 2017: Building Resilient Microservices with Kubernetes, Docker, ...
Velocity NYC 2017: Building Resilient Microservices with Kubernetes, Docker, ...
 

Recently uploaded

Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
masabamasaba
 

Recently uploaded (20)

What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Toronto Psychic Readings, Attraction spells,Brin...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 

Webinar: Accelerate Your Inner Dev Loop for Kubernetes Services

  • 1. Accelerate Your Inner Dev Loop for Kubernetes Services Abhay Saxena Principal Software Engineer, Datawire Jen Dyment Product Marketing Manager, Datawire
  • 2. ● Containers introduce complexities to inner dev loops ● Typical approaches to remedy these complexities introduce additional issues ● Service Preview allows you to: ○ Code microservices locally ○ Preview changes immediately with routed test traffic ○ Use your favorite tools (debuggers, IDEs, etc.) locally ○ Treat microservice as if it is live in the cluster ○ Work in isolation before merging your changes ● Service Preview is simple to implement tl;dr
  • 7. Other approaches to setting up dev environments have drawbacks Copy 1 Copy 3 MS 1 MS 2 MS 3 MS 4 Kubernetes Dev Cluster Copy 2 Individual Copies of Dev Cluster for Each Developer Issues - $$$ Cloud Costs - Pain to keep up- to-date Running Local Only Development Environments Issues - Requires “64-core laptops” - Maintenance of emulators - Pain to keep up-to-date
  • 8. MS2 Code MS1 Code MS1 Code MS 2 MS 3 MS 1 Kubernetes Dev Cluster Edge Requests Dev 1 Test Traffic Typical Traffic Dev 1 Service Preview Proxy Dev 2 Test Traffic Dev 2 Service Preview Proxy Service Preview in the Ambassador Edge Stack
  • 9. MS2 Code MS1 Code MS1 Code MS 2 MS 3 MS 1 Kubernetes Dev Cluster Edge Requests SHORTEN THE INNER DEV LOOP Dev 1 Test Traffic Typical Traffic Dev 1 Service Preview Proxy Dev 2 Test Traffic Dev 2 Service Preview Proxy
  • 10. WORK AND TEST CHANGES IN ISOLATION MS2 Code MS1 Code MS1 Code MS 2 MS 3 MS 1 Kubernetes Dev Cluster Edge Individually Identifiable Requests Dev 1 Test Traffic Typical Traffic Dev 1 Service Preview Proxy Dev 2 Test Traffic Dev 2 Service Preview Proxy
  • 11. Speed of Inner Dev Loop Isolated Code Loops Fidelity of Environment Low Maintenance Efforts/ Costs Scalability 1. Container Approach: Local Changes, Push to Cloud 2. Local Approach: Completely Local, Emulated Services 3. Cloud Approach: Duplicated Dev Clusters 4. Service Preview Approach: Proxies and Routing
  • 14. MS2 Code MS1 Code MS1 Code MS 2 MS 3 MS 1 Kubernetes Dev Cluster Edge Individually Identifiable Requests Dev 1 Test Traffic Typical Traffic Dev 1 Service Preview Proxy Dev 2 Test Traffic Dev 2 Service Preview Proxy
  • 15. A quick recap... ● Code microservices locally ● Preview changes immediately with routed test traffic ● Use your favorite tools (debuggers, IDEs, etc.) locally ● Treat microservice as if it is live in the cluster ● Work in isolation before merging your changes
  • 17. Get Started with Service Preview and Edge Control: https://www.getambassador.io/docs/latest/topics/using/edgectl/ Subscribe to our podcasts: https://www.getambassador.io/resources?types=Podcast Follow us on Twitter: https://twitter.com/getambassadorio Learning More youtube.com/watch?v=LDiyKOa1V_A
  • 18. Q&A

Editor's Notes

  1. Hello and welcome to Today’s webinar! Abhay Saxena is a Principal Software Engineer at Datawire where he is working on building software tools for developers that are adopting or using microservices and Kubernetes. He is currently the lead engineer on Telepresence, an open-source tool for local development of Kubernetes microservices. Over the last 15 years, he has worked in the finance industry building high-throughput systems using big data and machine learning in financial applications in constantly-changing environments.
  2. Before we jump into the presentation, we like to review what we will be covering at a very high level. First, we will be covering why we built Service Preview and why those that use it love it. Microservices are incredibly useful and exciting, but containers introduce complexities
  3. Please ask questions! We will leave time at the end of the presentation to answer your questions. If you have a question during the webinar, please ask it at any time in the Q&A window at the bottom of the screen.
  4. We’ve all seen that adopting a microservices architecture has the potential to supercharge your development cycles.
  5. Smaller microservice developments teams can own and run individual services freeing them from operational bottlenecks and lengthy release timelines associated with orchestrating large product releases.
  6. Containers, which are used to implement microservices, introduce new challenges for the inner dev loop. the inner dev loop is iterative process of writing, building and debugging code that a single developer performs before sharing the code, either publically or with their team. This presents two immediate challenges for developers. The first is that container building, uploading and deploying adds minutes to each cycle. These minutes are not only wasted time, but the also break a developer’s workflow, causing them to lose their focus. This really adds up if you are previewing your code 25-75 times a day. Second, reviewing your code in isolation before sharing it is not really possible with a shared staging environment.
  7. Speaking to many developers, we saw that there are two main approaches for setting up dev environments to tackle these issues of lengthened inner dev loops and lack of isolation. The first is running completely locally. So this entail developers duplicating microservices on their local machine, creating emulated services, and maintaining those environments. We heard stories of destroyed laptops and hours of maintenance. The second is to create individual copies of each dev cluster for each developer. When you have 300+ developers, the cloud costs really add up and keeping these environments up to date is time-consuming for everyone involved. _____ Architecture to speed you up Technologies can slow you down Monoliths -- fast on dev, slow on release Microserivces-- slow on dev, fast on release Inner loop was fast Whole software development life cycle was inefficient Teams didn’t have the agility needed
  8. To help address these issues, Datawire created Service Preview. Service Preview allows you to leverage a shared staging cluster with the high-fidelity, up-to-date environment that scales well as your application grows in size and complexity. This is of course without having to deal with delayed inner dev loops or a lack of isolation. In this diagram, you can see the typical traffic and how it is routed through the cluster.
  9. Send individually identifiable traffic through the edge to a specific service Traffic routes through live system before entering the microservice being coded Instead of running the service in remote cluster, traffic is routed through proxy to the code on local computer Traffic is routed back through live system, before egressing at the edge Developer can modify code, debug, and view results through any IDE and/or tool chain of their choice
  10. The other developers are not affected and can go through the same workflow without affecting anyone else’s environment.
  11. This table here summarizes the four different approaches on the left and how well the tradeoffs teams must consider when setting up dev environments.