Sai, Field Engineer @ Solo.io
Istio Service Mesh
For
Developers & Platform Engineers
Home Lab
BEFORE
Home Lab
NOW
Business Drivers for Application Modernization
Reduce Costs
/ Shift Capex
to Opex
Access to
Innovation
Increase flexibility
and Capacity
of Infrastructure
Increase Velocity of
Development
Reduce Risk
Monolithic Microservices
The Way We Build Applications
Monolithic
On-Prem
Built on
a VM+OS
Large Teams
Microservices
Cloud
Built on
Kubernetes
Agile Teams
Challenges with Microservices
● How to observe interactions among
services?
● How to secure service to service
communication?
● How to manage transient failures?
● How to control traffic?
Online Boutique Microservices Demo
Source: https://github.com/GoogleCloudPlatform/microservices-demo
Application Networking Challenges
● Service discovery
● Load balancing
● Timeouts
● Retry / Budgets
● Circuit breaking
● Tracing, observability
● Secure transport
● Extension
Challenges
Application Networking
Data Plane & Control Plane
Why Envoy for Service Mesh Data Plane
● Neutral Foundation (CNCF)
● Large, diverse, vibrant community
● Built ground up for dynamic services
environment
● Dynamic configuration, driven by API
● Highly extensible
● L7 filters (HTTP/1, HTTP/2, gRPC,
redis, mysql, Kafka, etc)
● Deep signals telemetry out of the box
● Versatile deployment options
Istio - Open Source Service Mesh
2017
Istio Launched
Data Plane
Enhancements
2019-20
7 New Community Releases
1000s Production Users
~ 1000 Community Contributors
2022
CNCF
2019-2022
Case Studies
https://istio.io/latest/about/case-studies/
Istio Service Mesh Architecture
Istio Deployment (Sidecar Architecture)
Use Cases
Too Much TRUST!
Zero Trust Security
Secure Networking - Server Side TLS
Secure Networking - mTLS
Network Security in Kubernetes
Default State
!!!
Desired State
“Zero Trust Security”
DIY … Whoops !
○ 81% of companies experienced a certificate-related outage in the
past two years
○ 65% are concerned about the increased workload and risk of outages
caused by shorter SSL/TLS certificate lifespans.
○ Human error was a major contributing factor in 95% of breaches
Istio to the Rescue !
Resiliency - There will be Failures
Common Mitigations
● Waiting indefinitely is bad
● Trying again is good
● Degrade gracefully when services are
overwhelmed
Timeout - Don’t wait Indefinitely
Retry - Trying Again is Good
👍
Circuit Breaker - Degrade gracefully
Observability - Insights for Competitive Advantage
Building a Uniform Approach
● Understand traffic patterns
● Determine service health
● Anticipate outages
● Detect dangerous activity
● Audit access
Observability - Metrics and Access Logging
[2020-11-25T21:26:18.409Z] "GET /status/418 HTTP/1.1" 418 - via_upstream
- "-" 0 135 3 1 "-" "curl/7.73.0-DEV"
"84961386-6d84-929d-98bd-c5aee93b5c88" "httpbin:8000" "127.0.0.1:80"
inbound|8000|| 127.0.0.1:41854 10.44.1.27:80 10.44.1.23:37652
outbound_.8000_._.httpbin.foo.svc.cluster.local default
[2020-11-25T21:26:18.409Z] "GET /status/418 HTTP/1.1" 418 - via_upstream
- "-" 0 135 3 1 "-" "curl/7.73.0-DEV"
"84961386-6d84-929d-98bd-c5aee93b5c88" "httpbin:8000" "127.0.0.1:80"
inbound|8000|| 127.0.0.1:41854 10.44.1.27:80 10.44.1.23:37652
outbound_.8000_._.httpbin.foo.svc.cluster.local default
[2020-11-25T21:26:18.409Z] "GET /status/418 HTTP/1.1" 418 - via_upstream
- "-" 0 135 3 1 "-" "curl/7.73.0-DEV"
"84961386-6d84-929d-98bd-c5aee93b5c88" "httpbin:8000" "127.0.0.1:80"
inbound|8000|| 127.0.0.1:41854 10.44.1.27:80 10.44.1.23:37652
outbound_.8000_._.httpbin.foo.svc.cluster.local default
metrics
RECAP
Business Drivers for Adopting Istio
Life without ServiceMesh `vs` Life with ServiceMesh
Business Logic
Security Logic
Traffic Management Logic
Golden Metrics/
Observability Logic
Resiliency Logic
Managed by
Developer
- Multiple Tasks
- Multiple Frameworks
- Language Specific
- Poor Dev Experience
- 100s of Manual Steps
Business Logic
Security Logic
Traffic Management Logic
Golden Metrics/
Observability Logic
Resiliency Logic
Managed by
Developer
- Focus on Biz Logic
- Developer Productivity
Managed by
ServiceMesh
- Automated Workflow
- Deploy Consistent
Infrastructure Layer
- Eliminate Language
Specific Libraries
- Consistent Security &
Observability across LOBs
Before Service Mesh After Service Mesh
Microservice App Microservice App
Istio Deployment (Sidecar Architecture)
Istio Ambient Mesh (Sidecar-less Architecture)
A recent, open source contribution to the Istio project,
that defines a new sidecar-less data plane.
Improve
Performance
Simplify
Operations
Cost
Reduction
https://istio.io/latest/blog/2022/introducing-ambient-mesh/
Istio Deployment (Sidecar-less Architecture)
Something to think about …
Something to think about …
● the Istio Ingress Gateway doesn’t provide the capabilities of an enterprise API
gateway
● It’s complex to use and to manage, especially in a multi-cloud context
● mTLS across the clusters
● Lifecycle management for control planes and istio gateways
● Global Observability (centralized metrics and access logging)
● Long term support
Something to think about …
Learn More …
Learn More …
10,000+ students have
attended hands-on workshops
1,800+ engineers have
achieved certifications
NPS
Score
75
https://academy.solo.io
Istio User Group
SINGAPORE
Thanks for attending!
@_hellosai_
sai.linnthu@solo.io
https://www.linkedin.com/in/sailinnthu/
https://www.youtube.com/@SaiLinnThu
Field Engineer - APAC @ Solo.io

Istio Service Mesh for Developers and Platform Engineers

  • 1.
    Sai, Field Engineer@ Solo.io Istio Service Mesh For Developers & Platform Engineers
  • 2.
  • 3.
  • 4.
    Business Drivers forApplication Modernization Reduce Costs / Shift Capex to Opex Access to Innovation Increase flexibility and Capacity of Infrastructure Increase Velocity of Development Reduce Risk Monolithic Microservices
  • 5.
    The Way WeBuild Applications Monolithic On-Prem Built on a VM+OS Large Teams Microservices Cloud Built on Kubernetes Agile Teams
  • 6.
    Challenges with Microservices ●How to observe interactions among services? ● How to secure service to service communication? ● How to manage transient failures? ● How to control traffic?
  • 7.
    Online Boutique MicroservicesDemo Source: https://github.com/GoogleCloudPlatform/microservices-demo
  • 8.
    Application Networking Challenges ●Service discovery ● Load balancing ● Timeouts ● Retry / Budgets ● Circuit breaking ● Tracing, observability ● Secure transport ● Extension Challenges
  • 9.
  • 10.
    Data Plane &Control Plane
  • 11.
    Why Envoy forService Mesh Data Plane ● Neutral Foundation (CNCF) ● Large, diverse, vibrant community ● Built ground up for dynamic services environment ● Dynamic configuration, driven by API ● Highly extensible ● L7 filters (HTTP/1, HTTP/2, gRPC, redis, mysql, Kafka, etc) ● Deep signals telemetry out of the box ● Versatile deployment options
  • 12.
    Istio - OpenSource Service Mesh 2017 Istio Launched Data Plane Enhancements 2019-20 7 New Community Releases 1000s Production Users ~ 1000 Community Contributors 2022 CNCF 2019-2022
  • 13.
  • 14.
    Istio Service MeshArchitecture
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
    Secure Networking -Server Side TLS
  • 20.
  • 21.
    Network Security inKubernetes Default State !!! Desired State “Zero Trust Security”
  • 22.
    DIY … Whoops! ○ 81% of companies experienced a certificate-related outage in the past two years ○ 65% are concerned about the increased workload and risk of outages caused by shorter SSL/TLS certificate lifespans. ○ Human error was a major contributing factor in 95% of breaches
  • 23.
    Istio to theRescue !
  • 24.
    Resiliency - Therewill be Failures Common Mitigations ● Waiting indefinitely is bad ● Trying again is good ● Degrade gracefully when services are overwhelmed
  • 25.
    Timeout - Don’twait Indefinitely
  • 26.
    Retry - TryingAgain is Good 👍
  • 27.
    Circuit Breaker -Degrade gracefully
  • 28.
    Observability - Insightsfor Competitive Advantage Building a Uniform Approach ● Understand traffic patterns ● Determine service health ● Anticipate outages ● Detect dangerous activity ● Audit access
  • 29.
    Observability - Metricsand Access Logging [2020-11-25T21:26:18.409Z] "GET /status/418 HTTP/1.1" 418 - via_upstream - "-" 0 135 3 1 "-" "curl/7.73.0-DEV" "84961386-6d84-929d-98bd-c5aee93b5c88" "httpbin:8000" "127.0.0.1:80" inbound|8000|| 127.0.0.1:41854 10.44.1.27:80 10.44.1.23:37652 outbound_.8000_._.httpbin.foo.svc.cluster.local default [2020-11-25T21:26:18.409Z] "GET /status/418 HTTP/1.1" 418 - via_upstream - "-" 0 135 3 1 "-" "curl/7.73.0-DEV" "84961386-6d84-929d-98bd-c5aee93b5c88" "httpbin:8000" "127.0.0.1:80" inbound|8000|| 127.0.0.1:41854 10.44.1.27:80 10.44.1.23:37652 outbound_.8000_._.httpbin.foo.svc.cluster.local default [2020-11-25T21:26:18.409Z] "GET /status/418 HTTP/1.1" 418 - via_upstream - "-" 0 135 3 1 "-" "curl/7.73.0-DEV" "84961386-6d84-929d-98bd-c5aee93b5c88" "httpbin:8000" "127.0.0.1:80" inbound|8000|| 127.0.0.1:41854 10.44.1.27:80 10.44.1.23:37652 outbound_.8000_._.httpbin.foo.svc.cluster.local default metrics
  • 30.
  • 31.
    Business Drivers forAdopting Istio
  • 32.
    Life without ServiceMesh`vs` Life with ServiceMesh Business Logic Security Logic Traffic Management Logic Golden Metrics/ Observability Logic Resiliency Logic Managed by Developer - Multiple Tasks - Multiple Frameworks - Language Specific - Poor Dev Experience - 100s of Manual Steps Business Logic Security Logic Traffic Management Logic Golden Metrics/ Observability Logic Resiliency Logic Managed by Developer - Focus on Biz Logic - Developer Productivity Managed by ServiceMesh - Automated Workflow - Deploy Consistent Infrastructure Layer - Eliminate Language Specific Libraries - Consistent Security & Observability across LOBs Before Service Mesh After Service Mesh Microservice App Microservice App
  • 33.
  • 34.
    Istio Ambient Mesh(Sidecar-less Architecture) A recent, open source contribution to the Istio project, that defines a new sidecar-less data plane. Improve Performance Simplify Operations Cost Reduction https://istio.io/latest/blog/2022/introducing-ambient-mesh/
  • 35.
  • 36.
  • 37.
  • 38.
    ● the IstioIngress Gateway doesn’t provide the capabilities of an enterprise API gateway ● It’s complex to use and to manage, especially in a multi-cloud context ● mTLS across the clusters ● Lifecycle management for control planes and istio gateways ● Global Observability (centralized metrics and access logging) ● Long term support Something to think about …
  • 39.
  • 40.
    Learn More … 10,000+students have attended hands-on workshops 1,800+ engineers have achieved certifications NPS Score 75 https://academy.solo.io
  • 41.
  • 42.