SlideShare a Scribd company logo
LOADBALANCERS: THE
FABRIC FOR YOUR
MICROSERVICES
Chiradeep Vittal
API World 2016
About me
¨ Distinguished Engineer
at Citrix
¨ Work on Citrix
Netscaler and
containers
Load balancers are important (again)
¨ Containers and Microservices
¨ Background on Load Balancing
¨ Teaching old load balancers new tricks
¨ Emerging patterns for Load Balancing in
microservices
¨ Future directions
Information Technology is rapidly
accelerating
Time
Web
Digital
Social
Mobile
Things
Smart Things
RateofChange
The challenge for IT
Match the
velocity of
business change
Addressing the gap: Agile
© Christopher Little / Wikimedia Commons / CC-BY-3.0
¨ Collaboration between Dev
and Ops teams
¨ Tooling and automation to
squeeze commit-to-deploy
time
Addressing the Gap:
DevOps
Agile and DevOps
1. Frequent Iterations
2. All phases all the time
3. Risk-based
1. Shorten time from commit
to production
2. “You build it, You run it”
3. Measure everything
4. Experimentation and
learning
Agile DevOps
Agile + DevOps Revolution
10+ Deploys per Day
Flickr, 2009
50 million Deploys Per
Year
Amazon Web Services,
2015
Image by BMW Werk Leipzig - http://bmw-werk-leipzig.de, CC BY-SA 2.0 de, https://commons.wikimedia.org/w/index.php?curid=11928438
Key
Mechanisms:
Automation
Key Mechanisms: Microservices
LB
Web
Data
1. Small Autonomous processes
2. Loose coupling
3. Bounded contexts
4. Deploy & scale independently
Key Mechanisms: Microservices
Containers & speed
Compile (seconds)
VM Build / Configure (minutes)
Deploy VM (minutes)
Compile (seconds)
Container Build (seconds)
Container Deploy (seconds)
Before Containers (virtual machines) With Containers
Container Wins
¨ Small & Autonomous
¨ Deploy and scale independently
¨ Increased Velocity
¨ Reduced risk
¨ Efficiency
Features Benefits
Containers or Microservices?
¨ Microservices == architecture
¨ Containers == implementation
¨ Containers win over VMs for
Microservices
Monoliths vs. Microservices
LB
Web
Data
Load Balancing: Traditional vs. Cloud Native
Static Applications, well
defined topology
Dynamic Microservices,
changing topology
W W W
A A A A A
W
M
M
TrafficismostlyN-S
M
M
M
M
M
M
M
M
M
Traffic is mix
of N-S and E-W
Cloud-Native
Patterns of
architecture
and
organization
that deliver
software with
speed and
reliability
¨ Auto Scale
¨ Continuous Delivery
¨ Baked-in Resilience
¨ Deep Monitoring
¨ Collaboration
Cloud Native + Containers is Network
Intensive
¨ Implications on
¤ Performance
¤ Reliability
¤ Security
¤ Routing
¤ Naming and discovery
¤ Monitoring
Cloud Native Landscape - Microservices
Microservices
APIs
Performance
Resilience
Security Visibility
Continuous
Delivery
AutoScal
e
Circuit
Breaker
Load
Balancing
Throttling
Discovery
Audit Segmentation
E2E
Encryption
Routing
Chaos
Monkey
Distributed
Debug
Back-off
Lifecycle
Management
Auth
Containers
Container
Networking
Container
Security
Integrity Isolation AuthN/Z
Container
Orchestration
Infrastructure
Orchestration
Network
Orchestration
Cloud
Orchestration
Multi-cloud
Orchestration
Private
Cloud
OrchestrationHypervisor
Orchestration
Network
Orchestration
IPAM / DNS
Overlay /
Underlay
Microservices
Lifecycle
Management
Container
Performance
Network
Perf
scheduler
Container
Storage
Storage
Orchestration
Storage
Orchestration
Cloud Native Landscape - Infrastructure
Container Managers to the rescue?
Docker Swarm Kubernetes
(from Google)
Mesosphere
DCOS
(based on Apache
Mesos)
AWS ECS
Container Cluster Managers
α1
β1
δ1
β2
α2
δ3
α3
α4
δ2
α5
α6
HostH1
HostH2
HostH3
HostH4
δ4
ClusterManager
Cluster API
Cluster Managers – Sweet Spots
¨ Infrastructure independence
¨ Scheduling
¨ Discovery
¨ Scaling (partially)
¨ Security (a little bit)
¨ Load balancing (limited)
A brief history of Load balancing
Internet
W W
High Availability
Internet
W W WW
HA + Load Balancing
Internet
Webserver
A brief history of Load balancing
Internet
W WW
App 1 App 2
W WW
foo.com/app1 foo.com/app2
L7 routing
Internet
W WW
SSL Traffic
Unencrypted Traffic
Internet
W WW
App Firewall
What LB-in-the-wire enables
¨ Resilience
¨ Encryption offload
¨ Application acceleration
¨ Defend L4à L7
¨ L7 routing
¨ Application Performance Analytics
Load Balancing Form Factors
Hardware Software
VM
Virtual As-a-service Containerized
Physical
Price-Performance
MPX
VPX
Hypervisor
Virtual
Run Anywhere
=
NetScaler CPX: Cloud Native Load
Balancer
CPX (new)
Container
SDX
Platform
Multi-Tenant
=
NetScaler CPX
Containerized
NetScaler for
Developers /
Cloud native
deployments
¨ Same hardened code, same features*
as bigger form factors
¨ Unified control plane with Ingress and
other LB (NetScaler MAS)
¨ Unified monitoring, logging and
analytics
* Same as NetScaler Standard Edition minus VPN
NetScaler CPX Express
¨ “Developer” Edition*
¨ No license required
¨ Available for download from Docker App Store in Q3
¨ Drop-in replaceable with licensed version
¨ Get it here:
– http://microloadbalancer.com
*Not for production use
https://www.microloadbalancer.com
Load Balancing for container clusters – Ingress / Edge
α5
α6
HostH4
Scale out
Internet
α1
β1
δ1
HostH1
β2
α2
δ3
HostH2
α3
α4
δ2HostH3
Public Endpoint
https://alpha:443
LB
Load Balancing – intra-cluster
α1
β1
HostH1
α2
δ3
HostH2
α4
δ2
HostH3
LB
LB per endpoint
Load Balancing – intra-cluster
α1
β1
HostH1
α2
δ3
HostH2
α4
δ2
HostH3
LBLB LB
LB per container host
• Service clients use
an LB local to
their host
• E.g., Kube-proxy,
Swarm, Mesos -
MinuteMan
Ingress vs Intra-cluster differences
¨ Performance
¨ Count
¨ Frequency of reconfiguration
¨ L4 (intra-cluster) vs L7 (ingress)
¨ Form factor
Reconfiguration of Load Balancer
α1
β1
HostH1
β2
α2
HostH2
α3
α4
HostH3
Ingress LB
α5
α6
HostH4
ClusterManager
LB
Controller
Cluster API
Container
Events Reconfigur
ation
Container
State
Container
State Query
Nitrox – Configure Citrix NetScaler for
Cluster Managers
¨ github.com/chiradeep/nitrox
¨ Apache license
¨ Support for integrating NetScaler with
¤ Kubernetes
¤ Swarm
¤ Consul
¤ Marathon
Microservices LB patterns
¨ Client-side LB
¨ Zero-downtime deploys
¨ Resilience patterns
¨ Visibility / Insights
Client-side LB
¤ Embedded into calling
application
n e.g., Netflix Ribbon
(with Eureka)
¤ Run as side-cars
(alongside each
application or one-
per-host) Eureka
M M
M
M
M
M
Client-side LB
¤ Run as side-cars, or
one-per-host
Service
Discovery
M
M
M
M
M
M
Clients
Service
LB
LB
Client-side LB Examples
¨ Netflix Prana - Hystrix as side car (deprecated)
¨ Linkerd from Buoyant.io (based on Twitter Finagle)
¨ AirBnB Smartstack/Synapse (uses HAProxy)
¨ Uber Hyperbahn
¤ Like Finagle, switched from HAProxy
¨ Kube Proxy
¤ Initially user-space, now based on IPTables
¨ Docker Swarm LB
¤ Based on IPVS
¨ Mesos LB
¤ Based on IPTables
Zero-Downtime Deploys
¨ Canary deploys
¨ Traffic can be selected
based on source
(country), headers
M M M M
Version N
M M M M M
Version N+1
10%90%
CD
Pipeline
Zero-Downtime Deploys
¨ Blue-green deploys
M M M M
Version N
M M M M M
Version N+1
100%
CD
Pipeline
Zero downtime deploys with NetScaler
HostH1
HostH2
HostH3
Ingress NetScaler
HostH4
ContainerClusterCluster API
Container
Events Reconfig
uration
Controller
NetScaler CPXJenkins
Advanced Resilience – Circuit Breaker
¨ Circuit Breaker is a
pattern that prevents
cascading failures due
to unresponsive
downstream services
¨ A load balancer can be
configured to ignore a
slow backend
Credit: http://martinfowler.com/bliki/CircuitBreaker.html
Visibility
¨ Compliance
¨ Topology
¨ Analytics
M
M
M M M
M M M M M
M
Analytics
Topology and Compliance
Policy
Violation
Wrap-up
¨ Load balancing is
different for containers /
microservices
¨ Integration with container
cluster managers is
needed
¨ Consider using the same
LB technology for ingress
and intra-cluster
¨ Emerging patterns
solidify the importance
of the load balancer
¨ LB in the wire brings
¤ Simplicity
¤ Resilience
¤ Future proofing
https://www.microloadbalancer.com

More Related Content

PDF
Load Balancing for Containers and Cloud Native Architecture
PDF
Load Balancing for Containers and Cloud Native Architecture
PDF
Microservices: State of the Union
PPTX
Cloud Solution Day 2016: Service Mesh for Kubernetes
PDF
Kubernetes: The evolution of distributed systems | DevNation Tech Talk
PPTX
Kubernetes + netflix oss
PDF
3 - Delen Private Bank: FOSS adventures in a Cloud Native world
PDF
Intro to creating kubernetes operators
Load Balancing for Containers and Cloud Native Architecture
Load Balancing for Containers and Cloud Native Architecture
Microservices: State of the Union
Cloud Solution Day 2016: Service Mesh for Kubernetes
Kubernetes: The evolution of distributed systems | DevNation Tech Talk
Kubernetes + netflix oss
3 - Delen Private Bank: FOSS adventures in a Cloud Native world
Intro to creating kubernetes operators

What's hot (20)

PDF
Cncf storage-final-filip
PDF
Designing Cloud Native Applications with Kubernetes
PPTX
Envoy @ Lyft: Developer Productivity
PDF
Build Robust Blockchain Services with Hyperledger and Containers
PPTX
Multi-Clusters Made Easy with Liqo:
Getting Rid of Your Clusters Keeping Them...
PDF
Kafka on Kubernetes—From Evaluation to Production at Intuit
PPTX
Production ready tooling for microservices on kubernetes
PDF
MesosCon 2016 - minimesos, the experimentation and testing tool for Apache Mesos
PPTX
Kubernetes Meetup: CNI, Flex Volume, and Scheduler
PPTX
Kubernetes And Istio and Azure AKS DevOps
PDF
The service mesh: resilient communication for microservice applications
PPTX
Simple, Scalable and Secure Networking for Data Centers with Project Calico
PDF
Admission controllers - PSP, OPA, Kyverno and more!
PDF
Securing Your Deployment Pipeline With Docker
PDF
WTF Do We Need a Service Mesh?
PPTX
Container Networking Meetup March 31 2016
PDF
19. Cloud Native Computing - Kubernetes - Bratislava - Databases in K8s world
PDF
The Kubernetes Effect
PPTX
Getting Started with Kafka on k8s
PDF
Kubernetes Multitenancy - KubeSec Enterprise Security Summit
Cncf storage-final-filip
Designing Cloud Native Applications with Kubernetes
Envoy @ Lyft: Developer Productivity
Build Robust Blockchain Services with Hyperledger and Containers
Multi-Clusters Made Easy with Liqo:
Getting Rid of Your Clusters Keeping Them...
Kafka on Kubernetes—From Evaluation to Production at Intuit
Production ready tooling for microservices on kubernetes
MesosCon 2016 - minimesos, the experimentation and testing tool for Apache Mesos
Kubernetes Meetup: CNI, Flex Volume, and Scheduler
Kubernetes And Istio and Azure AKS DevOps
The service mesh: resilient communication for microservice applications
Simple, Scalable and Secure Networking for Data Centers with Project Calico
Admission controllers - PSP, OPA, Kyverno and more!
Securing Your Deployment Pipeline With Docker
WTF Do We Need a Service Mesh?
Container Networking Meetup March 31 2016
19. Cloud Native Computing - Kubernetes - Bratislava - Databases in K8s world
The Kubernetes Effect
Getting Started with Kafka on k8s
Kubernetes Multitenancy - KubeSec Enterprise Security Summit
Ad

Viewers also liked (19)

PDF
KubeCon EU 2016: Kubernetes meets Finagle for Resilient Microservices
PPTX
JMeter Intro
PPTX
Performance and Load Testing
PDF
Network Functions Virtualization and CloudStack
PDF
Performance Testing - Apache Benchmark, JMeter
PDF
SDN in CloudStack
PPTX
CloudStack + SDN
PDF
Distributed Tracing
PDF
Load Testing with JMeter
PDF
Cloud Native Landscape (CNCF and OCI)
PPTX
The 3 Models in the NGINX Microservices Reference Architecture
PDF
Jmeter Performance Testing
PPT
Performance testing jmeter
PDF
gRPC: The Story of Microservices at Square
PDF
DockerCon SF 2015: Resilient Routing and Discovery
PDF
Magic Security Sprinkles: Secure, Resilient Microservices on CoreOS and Kuber...
PPTX
OpenShift Enterprise 3.1 vs kubernetes
PDF
Nginx Internals
PDF
Continuous Performance Testing
KubeCon EU 2016: Kubernetes meets Finagle for Resilient Microservices
JMeter Intro
Performance and Load Testing
Network Functions Virtualization and CloudStack
Performance Testing - Apache Benchmark, JMeter
SDN in CloudStack
CloudStack + SDN
Distributed Tracing
Load Testing with JMeter
Cloud Native Landscape (CNCF and OCI)
The 3 Models in the NGINX Microservices Reference Architecture
Jmeter Performance Testing
Performance testing jmeter
gRPC: The Story of Microservices at Square
DockerCon SF 2015: Resilient Routing and Discovery
Magic Security Sprinkles: Secure, Resilient Microservices on CoreOS and Kuber...
OpenShift Enterprise 3.1 vs kubernetes
Nginx Internals
Continuous Performance Testing
Ad

Similar to Loadbalancers: The fabric for your micro services (20)

PDF
AWS Certified Cloud Practitioner Course S7-S10
PPTX
Load balancing in cloud computing.pptx
PPTX
Cloud computing and innovations
PDF
InfoQ_NGINX_Fundamentals_of_Microservices.pptx.pdf
PPTX
The Journey of IT – Mainframe to Serverless
PPTX
OpenStack Summit Fall 2018: LBaaS
PDF
Ct nyc-philly open stack meetups april 2014 final
PDF
Containers, microservices and serverless for realists
PDF
Enabling SDN for Service Providers by Khay Kid Chow
PDF
Banv meetup-contrail
PDF
Istio Service Mesh
PDF
[En] IPVS for Docker Containers
PDF
IPVS for Docker Containers
PDF
Fundamentals of microservices
PDF
Txlf2012
PDF
Banv meetup 04162014
PPT
Scalable networking in Apache CloudStack
PPTX
QConSF-MicroServices-IPC-Netflix-Sudhir-2014.pptx
PDF
Azure meetup cloud native concepts - may 28th 2018
PDF
Immediate download DevOps for networking boost your organization's growth by ...
AWS Certified Cloud Practitioner Course S7-S10
Load balancing in cloud computing.pptx
Cloud computing and innovations
InfoQ_NGINX_Fundamentals_of_Microservices.pptx.pdf
The Journey of IT – Mainframe to Serverless
OpenStack Summit Fall 2018: LBaaS
Ct nyc-philly open stack meetups april 2014 final
Containers, microservices and serverless for realists
Enabling SDN for Service Providers by Khay Kid Chow
Banv meetup-contrail
Istio Service Mesh
[En] IPVS for Docker Containers
IPVS for Docker Containers
Fundamentals of microservices
Txlf2012
Banv meetup 04162014
Scalable networking in Apache CloudStack
QConSF-MicroServices-IPC-Netflix-Sudhir-2014.pptx
Azure meetup cloud native concepts - may 28th 2018
Immediate download DevOps for networking boost your organization's growth by ...

More from Chiradeep Vittal (10)

PDF
Directions for CloudStack Networking
PDF
Private cloud networking_cloudstack_days_austin
PDF
StackWatch: A prototype CloudWatch service for CloudStack
PDF
CloudStack Networking Deepdive CCCEU13
PPTX
StackMate - CloudFormation for CloudStack
PDF
SDN in Apache CloudStack (ApacheCon NA 2013)
PDF
Scalable Object Storage with Apache CloudStack and Apache Hadoop
PDF
Networking in the Cloud Age (LISA 2012 Tutorial)
PDF
The Future of Apache CloudStack (Not So Cloudy) (Collab 2012)
PDF
Evolution of CloudStack Architecture (Collab 2012)
Directions for CloudStack Networking
Private cloud networking_cloudstack_days_austin
StackWatch: A prototype CloudWatch service for CloudStack
CloudStack Networking Deepdive CCCEU13
StackMate - CloudFormation for CloudStack
SDN in Apache CloudStack (ApacheCon NA 2013)
Scalable Object Storage with Apache CloudStack and Apache Hadoop
Networking in the Cloud Age (LISA 2012 Tutorial)
The Future of Apache CloudStack (Not So Cloudy) (Collab 2012)
Evolution of CloudStack Architecture (Collab 2012)

Recently uploaded (20)

PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
A Presentation on Artificial Intelligence
PDF
Modernizing your data center with Dell and AMD
PPTX
Big Data Technologies - Introduction.pptx
PDF
Encapsulation theory and applications.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
Cloud computing and distributed systems.
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Empathic Computing: Creating Shared Understanding
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
A Presentation on Artificial Intelligence
Modernizing your data center with Dell and AMD
Big Data Technologies - Introduction.pptx
Encapsulation theory and applications.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Review of recent advances in non-invasive hemoglobin estimation
Understanding_Digital_Forensics_Presentation.pptx
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Dropbox Q2 2025 Financial Results & Investor Presentation
Reach Out and Touch Someone: Haptics and Empathic Computing
Building Integrated photovoltaic BIPV_UPV.pdf
“AI and Expert System Decision Support & Business Intelligence Systems”
20250228 LYD VKU AI Blended-Learning.pptx
Cloud computing and distributed systems.
NewMind AI Weekly Chronicles - August'25 Week I
Empathic Computing: Creating Shared Understanding
Digital-Transformation-Roadmap-for-Companies.pptx
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...

Loadbalancers: The fabric for your micro services