SlideShare une entreprise Scribd logo
1  sur  52
Télécharger pour lire hors ligne
The Past, Present, and Future of
Cloud Native API Gateways
Daniel Bryant
tl;dr
• Edge gateways have undergone a series of evolutions, driven by architecture
• “Cloud native” (microservices/K8s) changes architecture and workflow
• Chose your cloud API gateway solution intentionally
2
@danielbryantuk
3
4
Edge: The boundary between your
data center and your user(s)
5
Thesis: The evolution of the edge has
been driven by application architecture
6
The past:
A trip down memory lane
7
~1995
Application Architecture in the ‘90s
8
Hardware Load Balancer
9
User Systems administrators
Purpose High availability / scalability
Key Features
Load balancing
(round robin, sticky sessions)
Health checks
10
~2000
Similar application architecture
11
12
20022001
Software Load Balancer
13
User
Systems administrators
(“pre DevOps”)
Purpose High availability / scalability
Key Features
Load balancing
Health checks
Observability
14
~2005
15
16
Ecommerce
0
75
150
225
300
2000 2005 2010 2015 2019
Amazon Revenue,
Billions
17
The Application Delivery Controller (ADC)
18
Application Delivery Controllers
19
User Systems administrators
Purpose
High availability and
application acceleration
Key Features
SSL offload, caching,
compression + load balancing
20
https://www.flickr.com/photos/pchow98/5518600886
21
~2010
The proliferation of APIs
22
2005: API launched 2008 2009
API Gateway (1st Gen)
23
User
Systems administrators &
API developers
Purpose
Expose business APIs to
broader ecosystem
(“API management”)
Key Features
L7 routing (e.g., throttling),
Publishing, Dev Portal,
Analytics, Monetization
24
~2015
25
Mini-services
26
API Gateway (2nd Generation)
27
API Gateway (2nd Generation)
28
User
Systems administrators &
API developers
Purpose
Centralize cross-cutting app
concerns
Key Features
Authentication, rate limiting,
monitoring + routing
29
Present day:
Cloud-native apps
Cloud-Native Microservices
30
• Modularisation (“microservices”)
• Built, released, & operated by
independent application teams
• Scaled independently
App Architecture: A Spectrum of Services
• Different locations (K8S, VMs, FaaS)
• Different protocols (gRPC, HTTP, WebSockets, TCP)
• Different load balancing requirements (sticky
sessions, round robin)
• Different authentication requirements
31
Cloud Gateway
32
Real-time Service
Discovery
Need ADC-like traffic management
capabilities: timeouts, retries, rate
limiting, load balancing, caching, …
Need API Gateway-type
management capabilities:
authentication, developer
portal, metrics, …
1
2
3
“Microservices” lead to an even bigger change.
33
34
Developers are on call.
Microservices: Full Cycle Development
35
• App teams have full responsibility (and authority) for
delivering a service
• Increases agility by accelerating the feedback loop.
• https://netflixtechblog.com/full-cycle-developers-at-netflix-a08c31f83249
36
This is a change in workflow.
37
Thesis: The evolution of the edge will be
driven by application architecture and the
application development workflow.
38
Two Biggest
Challenges
Challenge #1: Scaling Edge Management
39
Development
Team
Operations / Platform Team
Challenge #1: Scaling Edge Management
Challenge #2: Supporting Diverse Edge Requirements
41
42
Three Strategies
Three Strategies for the Edge with Kubernetes
#1: Deploy an Additional Kubernetes API Gateway
#2: Extend Existing API Gateway
#3: Deploy an in-Cluster Edge Stack
43
https://www.getambassador.io/resources/strategies-managing-apis-edge-kubernetes/
#1 Deploy an Additional Kubernetes API Gateway
• Simply deploy an additional “in-cluster” gateway
• Below the existing gateway
• Below the load balancer
• Management
• Development teams responsible
• OR existing ops team manages this
44
#1 Deploy an Additional Kubernetes API Gateway
• Pros
• There is minimal change to the core edge infrastructure.
• Incremental migration easily
• Cons
• Increased management overhead of working with
different components
• Challenging to expose the functionality to each
independent microservice teams
45
#2 Extend Existing API Gateway
• Implemented by modifying or augmenting the existing API
gateway solution
• Enable synchronization between the API endpoints and
location of k8s services
• Custom ingress controller for the existing API Gateway or
load balancer
46
#2 Extend Existing API Gateway
• Pros
• Reuse the existing tried and trusted API gateway
• Leverage existing integrations with on-premises
infrastructure and services
• Cons
• Workflows must change to preserve a single source of
truth for the API gateway configuration
• Limited amount of configuration parameters via
Kubernetes annotations
47
#3 Deploy an In-Cluster Edge Stack
• Deploy Kubernetes-native API gateway with
integrated supporting edge components
• Installed in each of the new Kubernetes clusters,
replacing existing edge
• Ops team own, and provide sane defaults
• Dev teams responsible for configuring the edge
stack as part of their normal workflow
48
#3 Deploy an In-Cluster Edge Stack
• Pros
• Edge management is simplified into a single stack
• Supports cloud native best practices: “single
source of truth”, GitOps etc
• Cons
• Potentially a large architectural shift
• Platform team must learn about new proxy
technologies and edge components
49
50
Wrapping Up
In Conclusion
• Edge/API gateways have undergone a series of evolutions, driven by architecture
• Hardware -> software
• Networking Layer 4 -> Layer 7
• Centralized management -> decentralised
• Adopting microservices/Kubernetes changes workflow. We need to:
• Scale edge management
• Support multi-protocol and cross-functional requirements
• Chose your solution intentionally
51
Many thanks!
• Learn more:
• https://www.getambassador.io/learn/building-kubernetes-platform/
• https://www.getambassador.io/podcasts/
• https://blog.getambassador.io/
• Find me in:
• Datawire OSS Slack: http://d6e.co/slack
• Twitter @danielbryantuk
52

Contenu connexe

Tendances

How kubernetes operators can rescue dev secops in midst of a pandemic updated
How kubernetes operators can rescue dev secops in midst of a pandemic updatedHow kubernetes operators can rescue dev secops in midst of a pandemic updated
How kubernetes operators can rescue dev secops in midst of a pandemic updated
Shikha Srivastava
 
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
VMware Tanzu
 

Tendances (20)

Containing your microservice sprawl
Containing your microservice sprawlContaining your microservice sprawl
Containing your microservice sprawl
 
Toward Hybrid Cloud Serverless Transparency with Lithops Framework
Toward Hybrid Cloud Serverless Transparency with Lithops FrameworkToward Hybrid Cloud Serverless Transparency with Lithops Framework
Toward Hybrid Cloud Serverless Transparency with Lithops Framework
 
How kubernetes operators can rescue dev secops in midst of a pandemic updated
How kubernetes operators can rescue dev secops in midst of a pandemic updatedHow kubernetes operators can rescue dev secops in midst of a pandemic updated
How kubernetes operators can rescue dev secops in midst of a pandemic updated
 
Sicurezza integrate nella tua piattaforma Cloud-Native con VMware NSX (Pivota...
Sicurezza integrate nella tua piattaforma Cloud-Native con VMware NSX (Pivota...Sicurezza integrate nella tua piattaforma Cloud-Native con VMware NSX (Pivota...
Sicurezza integrate nella tua piattaforma Cloud-Native con VMware NSX (Pivota...
 
Tackle Containerization Advisor (TCA) for Legacy Applications
Tackle Containerization Advisor (TCA) for Legacy ApplicationsTackle Containerization Advisor (TCA) for Legacy Applications
Tackle Containerization Advisor (TCA) for Legacy Applications
 
Lo Scenario Cloud-Native (Pivotal Cloud-Native Workshop: Milan)
Lo Scenario Cloud-Native (Pivotal Cloud-Native Workshop: Milan)Lo Scenario Cloud-Native (Pivotal Cloud-Native Workshop: Milan)
Lo Scenario Cloud-Native (Pivotal Cloud-Native Workshop: Milan)
 
Serverless design with Fn project
Serverless design with Fn projectServerless design with Fn project
Serverless design with Fn project
 
DevOps as a Service - Kuberiter
DevOps as a Service - KuberiterDevOps as a Service - Kuberiter
DevOps as a Service - Kuberiter
 
Migrating from oracle soa suite to microservices on kubernetes
Migrating from oracle soa suite to microservices on kubernetesMigrating from oracle soa suite to microservices on kubernetes
Migrating from oracle soa suite to microservices on kubernetes
 
[DW Webinar] Effective Management of APIs and the Edge when Adopting Kubernetes
[DW Webinar] Effective Management of APIs and the Edge when Adopting Kubernetes[DW Webinar] Effective Management of APIs and the Edge when Adopting Kubernetes
[DW Webinar] Effective Management of APIs and the Edge when Adopting Kubernetes
 
Modern application development with heroku
Modern application development with herokuModern application development with heroku
Modern application development with heroku
 
Containers and the Docker EE Difference and usecases
Containers and the Docker EE Difference and usecasesContainers and the Docker EE Difference and usecases
Containers and the Docker EE Difference and usecases
 
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
Four Steps Toward a Safer Continuous Delivery Practice (Hint: Add Monitoring)
 
LJC 4/21"Easy Debugging of Java Microservices Running on Kubernetes with Tele...
LJC 4/21"Easy Debugging of Java Microservices Running on Kubernetes with Tele...LJC 4/21"Easy Debugging of Java Microservices Running on Kubernetes with Tele...
LJC 4/21"Easy Debugging of Java Microservices Running on Kubernetes with Tele...
 
How to secure your CI/CD pipeline with Docker EE Platform
How to secure your CI/CD pipeline with Docker EE PlatformHow to secure your CI/CD pipeline with Docker EE Platform
How to secure your CI/CD pipeline with Docker EE Platform
 
Bringing DevOps to Routing with evolved XR: an overview
Bringing DevOps to Routing with evolved XR: an overviewBringing DevOps to Routing with evolved XR: an overview
Bringing DevOps to Routing with evolved XR: an overview
 
Building REST APIs with Spring Boot and Spring Cloud
Building REST APIs with Spring Boot and Spring CloudBuilding REST APIs with Spring Boot and Spring Cloud
Building REST APIs with Spring Boot and Spring Cloud
 
Do You Need A Service Mesh?
Do You Need A Service Mesh?Do You Need A Service Mesh?
Do You Need A Service Mesh?
 
I Segreti per Modernizzare con Successo le Applicazioni (Pivotal Cloud-Native...
I Segreti per Modernizzare con Successo le Applicazioni (Pivotal Cloud-Native...I Segreti per Modernizzare con Successo le Applicazioni (Pivotal Cloud-Native...
I Segreti per Modernizzare con Successo le Applicazioni (Pivotal Cloud-Native...
 
In-Stream Processing Service Blueprint, Reference architecture for real-time ...
In-Stream Processing Service Blueprint, Reference architecture for real-time ...In-Stream Processing Service Blueprint, Reference architecture for real-time ...
In-Stream Processing Service Blueprint, Reference architecture for real-time ...
 

Similaire à SoftwareCircus 2020 "The Past, Present, and Future of Cloud Native API Gateways"

[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
 

Similaire à SoftwareCircus 2020 "The Past, Present, and Future of Cloud Native API Gateways" (20)

CloudBuilders 2022: "The Past, Present, and Future of Cloud Native API Gateways"
CloudBuilders 2022: "The Past, Present, and Future of Cloud Native API Gateways"CloudBuilders 2022: "The Past, Present, and Future of Cloud Native API Gateways"
CloudBuilders 2022: "The Past, Present, and Future of Cloud Native API Gateways"
 
[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
 
Episode 1: Building Kubernetes-as-a-Service
Episode 1: Building Kubernetes-as-a-ServiceEpisode 1: Building Kubernetes-as-a-Service
Episode 1: Building Kubernetes-as-a-Service
 
ISTIO Deep Dive
ISTIO Deep DiveISTIO Deep Dive
ISTIO Deep Dive
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
 
Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application Development
 
Integration in the Cloud, by Rob Davies
Integration in the Cloud, by Rob DaviesIntegration in the Cloud, by Rob Davies
Integration in the Cloud, by Rob Davies
 
API Tips & Tricks - Policy Management and Elastic Deployment
API Tips & Tricks - Policy Management and Elastic DeploymentAPI Tips & Tricks - Policy Management and Elastic Deployment
API Tips & Tricks - Policy Management and Elastic Deployment
 
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Develop and deploy Kubernetes  applications with Docker - IBM Index 2018Develop and deploy Kubernetes  applications with Docker - IBM Index 2018
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
 
Containers as Infrastructure for New Gen Apps
Containers as Infrastructure for New Gen AppsContainers as Infrastructure for New Gen Apps
Containers as Infrastructure for New Gen Apps
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015Docker & aPaaS: Enterprise Innovation and Trends for 2015
Docker & aPaaS: Enterprise Innovation and Trends for 2015
 
Cloud Native Application Development
Cloud Native Application DevelopmentCloud Native Application Development
Cloud Native Application Development
 
Simplify Your Way To Expert Kubernetes Management
Simplify Your Way To Expert Kubernetes ManagementSimplify Your Way To Expert Kubernetes Management
Simplify Your Way To Expert Kubernetes Management
 
MuleSoft Manchester Meetup #4 slides 11th February 2021
MuleSoft Manchester Meetup #4 slides 11th February 2021MuleSoft Manchester Meetup #4 slides 11th February 2021
MuleSoft Manchester Meetup #4 slides 11th February 2021
 
From Containerized Application to Secure and Scaling With Kubernetes
From Containerized Application to Secure and Scaling With KubernetesFrom Containerized Application to Secure and Scaling With Kubernetes
From Containerized Application to Secure and Scaling With Kubernetes
 
Microservices.pdf
Microservices.pdfMicroservices.pdf
Microservices.pdf
 
Microservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing MicroservicesMicroservices @ Work - A Practice Report of Developing Microservices
Microservices @ Work - A Practice Report of Developing Microservices
 
Kubernetes on the Edge / 在邊緣的K8S
Kubernetes on the Edge / 在邊緣的K8SKubernetes on the Edge / 在邊緣的K8S
Kubernetes on the Edge / 在邊緣的K8S
 
Evolution of the IBM Cloud Console: From Monolith to Microservices and Beyond
Evolution of the IBM Cloud Console: From Monolith to Microservices and BeyondEvolution of the IBM Cloud Console: From Monolith to Microservices and Beyond
Evolution of the IBM Cloud Console: From Monolith to Microservices and Beyond
 
Accelerate Application Innovation Journey with Azure Kubernetes Service
Accelerate Application Innovation Journey with Azure Kubernetes Service Accelerate Application Innovation Journey with Azure Kubernetes Service
Accelerate Application Innovation Journey with Azure Kubernetes Service
 

Plus de Daniel Bryant

Plus de Daniel Bryant (20)

ITKonekt 2023: The Busy Platform Engineers Guide to API Gateways
ITKonekt 2023: The Busy Platform Engineers Guide to API GatewaysITKonekt 2023: The Busy Platform Engineers Guide to API Gateways
ITKonekt 2023: The Busy Platform Engineers Guide to API Gateways
 
CraftConf 2023 "Microservice Testing Techniques: Mocks vs Service Virtualizat...
CraftConf 2023 "Microservice Testing Techniques: Mocks vs Service Virtualizat...CraftConf 2023 "Microservice Testing Techniques: Mocks vs Service Virtualizat...
CraftConf 2023 "Microservice Testing Techniques: Mocks vs Service Virtualizat...
 
PlatformCon 23: "The Busy Platform Engineers Guide to API Gateways"
PlatformCon 23: "The Busy Platform Engineers Guide to API Gateways"PlatformCon 23: "The Busy Platform Engineers Guide to API Gateways"
PlatformCon 23: "The Busy Platform Engineers Guide to API Gateways"
 
Java Meetup 23: 'Debugging Microservices "Remocally" in Kubernetes with Telep...
Java Meetup 23: 'Debugging Microservices "Remocally" in Kubernetes with Telep...Java Meetup 23: 'Debugging Microservices "Remocally" in Kubernetes with Telep...
Java Meetup 23: 'Debugging Microservices "Remocally" in Kubernetes with Telep...
 
DevRelCon 2022: "Is Product Led Growth (PLG) the “DevOps” of the DevRel World"
DevRelCon 2022: "Is Product Led Growth (PLG) the “DevOps” of the DevRel World"DevRelCon 2022: "Is Product Led Growth (PLG) the “DevOps” of the DevRel World"
DevRelCon 2022: "Is Product Led Growth (PLG) the “DevOps” of the DevRel World"
 
Fall 22: "From Kubernetes to PaaS to... err, what's next"
Fall 22: "From Kubernetes to PaaS to... err, what's next"Fall 22: "From Kubernetes to PaaS to... err, what's next"
Fall 22: "From Kubernetes to PaaS to... err, what's next"
 
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...
 
KubeCrash 22: Debugging Microservices "Remocally" in Kubernetes with Telepres...
KubeCrash 22: Debugging Microservices "Remocally" in Kubernetes with Telepres...KubeCrash 22: Debugging Microservices "Remocally" in Kubernetes with Telepres...
KubeCrash 22: Debugging Microservices "Remocally" in Kubernetes with Telepres...
 
JAX London 22: Debugging Microservices "Remocally" in Kubernetes with Telepre...
JAX London 22: Debugging Microservices "Remocally" in Kubernetes with Telepre...JAX London 22: Debugging Microservices "Remocally" in Kubernetes with Telepre...
JAX London 22: Debugging Microservices "Remocally" in Kubernetes with Telepre...
 
KubeCon EU 2022: From Kubernetes to PaaS to Err What's Next
KubeCon EU 2022: From Kubernetes to PaaS to Err What's NextKubeCon EU 2022: From Kubernetes to PaaS to Err What's Next
KubeCon EU 2022: From Kubernetes to PaaS to Err What's Next
 
Devoxx UK 22: Debugging Java Microservices "Remocally" in Kubernetes with Tel...
Devoxx UK 22: Debugging Java Microservices "Remocally" in Kubernetes with Tel...Devoxx UK 22: Debugging Java Microservices "Remocally" in Kubernetes with Tel...
Devoxx UK 22: Debugging Java Microservices "Remocally" in Kubernetes with Tel...
 
DevXDay KubeCon NA 2021: "From Kubernetes to PaaS to Developer Control Planes"
DevXDay KubeCon NA 2021: "From Kubernetes to PaaS to Developer Control Planes"DevXDay KubeCon NA 2021: "From Kubernetes to PaaS to Developer Control Planes"
DevXDay KubeCon NA 2021: "From Kubernetes to PaaS to Developer Control Planes"
 
JAX London 2021: Jumpstart Your Cloud Native Development: An Overview of Prac...
JAX London 2021: Jumpstart Your Cloud Native Development: An Overview of Prac...JAX London 2021: Jumpstart Your Cloud Native Development: An Overview of Prac...
JAX London 2021: Jumpstart Your Cloud Native Development: An Overview of Prac...
 
Container Days: Easy Debugging of Microservices Running on Kubernetes with Te...
Container Days: Easy Debugging of Microservices Running on Kubernetes with Te...Container Days: Easy Debugging of Microservices Running on Kubernetes with Te...
Container Days: Easy Debugging of Microservices Running on Kubernetes with Te...
 
Canadian CNCF: "Emissary-ingress 101: An introduction to the CNCF incubation-...
Canadian CNCF: "Emissary-ingress 101: An introduction to the CNCF incubation-...Canadian CNCF: "Emissary-ingress 101: An introduction to the CNCF incubation-...
Canadian CNCF: "Emissary-ingress 101: An introduction to the CNCF incubation-...
 
MJC 2021: "Debugging Java Microservices Running on Kubernetes with Telepresence"
MJC 2021: "Debugging Java Microservices Running on Kubernetes with Telepresence"MJC 2021: "Debugging Java Microservices Running on Kubernetes with Telepresence"
MJC 2021: "Debugging Java Microservices Running on Kubernetes with Telepresence"
 
GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...
GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...
GOTOpia 2/2021 "Cloud Native Development Without the Toil: An Overview of Pra...
 
HashiCorp Webinar: "Getting started with Ambassador and Consul on Kubernetes ...
HashiCorp Webinar: "Getting started with Ambassador and Consul on Kubernetes ...HashiCorp Webinar: "Getting started with Ambassador and Consul on Kubernetes ...
HashiCorp Webinar: "Getting started with Ambassador and Consul on Kubernetes ...
 
Ambassador Fest: "Kubernetes Workflow 101: The Big Picture of Idea to an API ...
Ambassador Fest: "Kubernetes Workflow 101: The Big Picture of Idea to an API ...Ambassador Fest: "Kubernetes Workflow 101: The Big Picture of Idea to an API ...
Ambassador Fest: "Kubernetes Workflow 101: The Big Picture of Idea to an API ...
 
KubeCon NA 2019 "Introduction to Telepresence: Fast Development (and Debuggin...
KubeCon NA 2019 "Introduction to Telepresence: Fast Development (and Debuggin...KubeCon NA 2019 "Introduction to Telepresence: Fast Development (and Debuggin...
KubeCon NA 2019 "Introduction to Telepresence: Fast Development (and Debuggin...
 

Dernier

TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 

Dernier (20)

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
The Guide to Integrating Generative AI into Unified Continuous Testing Platfo...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
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...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 

SoftwareCircus 2020 "The Past, Present, and Future of Cloud Native API Gateways"

  • 1. The Past, Present, and Future of Cloud Native API Gateways Daniel Bryant
  • 2. tl;dr • Edge gateways have undergone a series of evolutions, driven by architecture • “Cloud native” (microservices/K8s) changes architecture and workflow • Chose your cloud API gateway solution intentionally 2
  • 4. 4 Edge: The boundary between your data center and your user(s)
  • 5. 5 Thesis: The evolution of the edge has been driven by application architecture
  • 6. 6 The past: A trip down memory lane
  • 9. Hardware Load Balancer 9 User Systems administrators Purpose High availability / scalability Key Features Load balancing (round robin, sticky sessions) Health checks
  • 13. Software Load Balancer 13 User Systems administrators (“pre DevOps”) Purpose High availability / scalability Key Features Load balancing Health checks Observability
  • 15. 15
  • 16. 16 Ecommerce 0 75 150 225 300 2000 2005 2010 2015 2019 Amazon Revenue, Billions
  • 17. 17
  • 18. The Application Delivery Controller (ADC) 18
  • 19. Application Delivery Controllers 19 User Systems administrators Purpose High availability and application acceleration Key Features SSL offload, caching, compression + load balancing
  • 22. The proliferation of APIs 22 2005: API launched 2008 2009
  • 23. API Gateway (1st Gen) 23 User Systems administrators & API developers Purpose Expose business APIs to broader ecosystem (“API management”) Key Features L7 routing (e.g., throttling), Publishing, Dev Portal, Analytics, Monetization
  • 25. 25
  • 27. API Gateway (2nd Generation) 27
  • 28. API Gateway (2nd Generation) 28 User Systems administrators & API developers Purpose Centralize cross-cutting app concerns Key Features Authentication, rate limiting, monitoring + routing
  • 30. Cloud-Native Microservices 30 • Modularisation (“microservices”) • Built, released, & operated by independent application teams • Scaled independently
  • 31. App Architecture: A Spectrum of Services • Different locations (K8S, VMs, FaaS) • Different protocols (gRPC, HTTP, WebSockets, TCP) • Different load balancing requirements (sticky sessions, round robin) • Different authentication requirements 31
  • 32. Cloud Gateway 32 Real-time Service Discovery Need ADC-like traffic management capabilities: timeouts, retries, rate limiting, load balancing, caching, … Need API Gateway-type management capabilities: authentication, developer portal, metrics, … 1 2 3
  • 33. “Microservices” lead to an even bigger change. 33
  • 35. Microservices: Full Cycle Development 35 • App teams have full responsibility (and authority) for delivering a service • Increases agility by accelerating the feedback loop. • https://netflixtechblog.com/full-cycle-developers-at-netflix-a08c31f83249
  • 36. 36 This is a change in workflow.
  • 37. 37 Thesis: The evolution of the edge will be driven by application architecture and the application development workflow.
  • 39. Challenge #1: Scaling Edge Management 39 Development Team Operations / Platform Team
  • 40. Challenge #1: Scaling Edge Management
  • 41. Challenge #2: Supporting Diverse Edge Requirements 41
  • 43. Three Strategies for the Edge with Kubernetes #1: Deploy an Additional Kubernetes API Gateway #2: Extend Existing API Gateway #3: Deploy an in-Cluster Edge Stack 43 https://www.getambassador.io/resources/strategies-managing-apis-edge-kubernetes/
  • 44. #1 Deploy an Additional Kubernetes API Gateway • Simply deploy an additional “in-cluster” gateway • Below the existing gateway • Below the load balancer • Management • Development teams responsible • OR existing ops team manages this 44
  • 45. #1 Deploy an Additional Kubernetes API Gateway • Pros • There is minimal change to the core edge infrastructure. • Incremental migration easily • Cons • Increased management overhead of working with different components • Challenging to expose the functionality to each independent microservice teams 45
  • 46. #2 Extend Existing API Gateway • Implemented by modifying or augmenting the existing API gateway solution • Enable synchronization between the API endpoints and location of k8s services • Custom ingress controller for the existing API Gateway or load balancer 46
  • 47. #2 Extend Existing API Gateway • Pros • Reuse the existing tried and trusted API gateway • Leverage existing integrations with on-premises infrastructure and services • Cons • Workflows must change to preserve a single source of truth for the API gateway configuration • Limited amount of configuration parameters via Kubernetes annotations 47
  • 48. #3 Deploy an In-Cluster Edge Stack • Deploy Kubernetes-native API gateway with integrated supporting edge components • Installed in each of the new Kubernetes clusters, replacing existing edge • Ops team own, and provide sane defaults • Dev teams responsible for configuring the edge stack as part of their normal workflow 48
  • 49. #3 Deploy an In-Cluster Edge Stack • Pros • Edge management is simplified into a single stack • Supports cloud native best practices: “single source of truth”, GitOps etc • Cons • Potentially a large architectural shift • Platform team must learn about new proxy technologies and edge components 49
  • 51. In Conclusion • Edge/API gateways have undergone a series of evolutions, driven by architecture • Hardware -> software • Networking Layer 4 -> Layer 7 • Centralized management -> decentralised • Adopting microservices/Kubernetes changes workflow. We need to: • Scale edge management • Support multi-protocol and cross-functional requirements • Chose your solution intentionally 51
  • 52. Many thanks! • Learn more: • https://www.getambassador.io/learn/building-kubernetes-platform/ • https://www.getambassador.io/podcasts/ • https://blog.getambassador.io/ • Find me in: • Datawire OSS Slack: http://d6e.co/slack • Twitter @danielbryantuk 52