Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Emissary Ingress 101 by danielbryantuk June CNC...
Search
cncf-canada-meetups
June 01, 2021
Technology
0
72
Emissary Ingress 101 by danielbryantuk June CNCF Canada Meetup
Emissary-ingress 101: An introduction to the CNCF incubation-level API gateway
cncf-canada-meetups
June 01, 2021
Tweet
Share
More Decks by cncf-canada-meetups
See All by cncf-canada-meetups
Canada Cloud Native Meetups - 2025 Sponsor Deck
cncfcanada
0
72
[ CNCF Q1 2024 ] Intro to Continuous Profiling and Grafana Pyroscope
cncfcanada
0
140
[CNCF Q1 2024] Remediate Kubernetes Security Threats in Real-Time with Falco Talon
cncfcanada
0
26
[Q2 CNCF 2023] Metrio, a Cloud run journey
cncfcanada
0
21
[CNCF Q1 2024] Agentic Installer LLMs Helm Charts by Chris Gruel @Akeyless
cncfcanada
0
33
Karpenter @LightSpeed
cncfcanada
0
61
Shorten the dev loop with mirrord
cncfcanada
0
39
October 2023 Montreal CNCF Meetup
cncfcanada
0
45
Beyond Dashboarding The Grafana Observability Stack by Steve Caron
cncfcanada
0
100
Other Decks in Technology
See All in Technology
AIエージェント入門
minorun365
PRO
33
20k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership, regardless of position
madoxten
21
9.9k
4th place solution Eedi - Mining Misconceptions in Mathematics
rist
0
150
目標と時間軸 〜ベイビーステップでケイパビリティを高めよう〜
kakehashi
PRO
8
1k
どちらかだけじゃもったいないかも? ECSとEKSを適材適所で併用するメリット、運用課題とそれらの対応について
tk3fftk
2
280
"TEAM"を導入したら最高のエンジニア"Team"を実現できた / Deploying "TEAM" and Building the Best Engineering "Team"
yuj1osm
1
240
AIエージェント時代のエンジニアになろう #jawsug #jawsdays2025 / 20250301 Agentic AI Engineering
yoshidashingo
9
4.2k
AWSではじめる Web APIテスト実践ガイド / A practical guide to testing Web APIs on AWS
yokawasa
8
790
【内製開発Summit 2025】イオンスマートテクノロジーの内製化組織の作り方/In-house-development-summit-AST
aeonpeople
2
1.1k
20250309 無冠のわたし これからどう先生きのこれる?
akiko_pusu
1
160
AWSアカウントのセキュリティ自動化、どこまで進める? 最適な設計と実践ポイント
yuobayashi
7
1.8k
株式会社Awarefy(アウェアファイ)会社説明資料 / Awarefy-Company-Deck
awarefy
3
12k
Featured
See All Featured
The Invisible Side of Design
smashingmag
299
50k
Speed Design
sergeychernyshev
28
820
The Cult of Friendly URLs
andyhume
78
6.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
366
25k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
440
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.4k
Site-Speed That Sticks
csswizardry
4
420
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Transcript
Emissary Ingress 101 Daniel Bryant @danielbryantuk | db@datawire.io Director of
DevRel, Ambassador Labs
What is Emissary Ingress? Open-source cloud-native API gateway, powered by
Envoy • Formerly known as Ambassador API Gateway • CNCF Incubation project • Developer-focused (self-service config) ◦ CRDs, Ingress, or Kubernetes annotations • Wide adoption over the past four years 2
Traffic management Emissary is an API Gateway Jane: /quote/ Mark:
/quote/update/ 3
Emissary is an API Gateway Jane: /quote/ Mark: /quote/update/ App
development App security 4 Mark: /quote/update/ X Rate Limiting Resilience Observability
Resilience • Advanced load balancing • Circuit breakers • Automatic
retries • Timeouts • Auth (via ext_authz) • Rate limiting (via rls.proto) Observability • Distributed tracing • Real-time metrics • Logs (+Envoy output) Cloud-native • Service discovery with Kubernetes and Consul • Zero downtime configuration • Stateless high availability architecture L7 support • HTTP/1.0, HTTP/1.1, HTTP/2 • gRPC, gRPC-Web • TCP, WebSockets • Server Name Indication (SNI) • Gzip compression Emissary Core Features Emissary Core Features 5
Emissary is Built on Envoy Proxy 6
Emissary is Ambassador’s Open Core 7
Use cases
API Gateway for North/South traffic Traffic management App security App
development 9
Internal / External 10
Hub and Spoke Traffic management App security App development 11
None
Service meshes: We’ve got you covered https://www.getambassador.io/docs/edge-stack/latest/howtos/
Configuration
Configuring the Control Plane apiVersion: getambassador.io/v2 kind: Mapping metadata: name:
quote-mapping spec: prefix: /quote/ service: quote apiVersion: getambassador.io/v2 kind: Host metadata: name: wildcard-host spec: hostname: “*” acmeProvider: authority: none tlsSecret: name: base-cert apiVersion: getambassador.io/v2 kind: AuthService metadata: name: extauth-service spec: auth_service: example-auth path_prefix: “/extauth” allowed_request_headers: - “x-example-session” allowed_authorization_headers: - “x-example-session” - “x-example-userid” apiVersion: getambassador.io/v2 kind: Mapping metadata: name: quote2-mapping spec: prefix: /quote/ service: fancy-quote weight: 10 apiVersion: getambassador.io/v2 kind: Mapping metadata: name: restricted-mapping spec: host: restricted.example.com prefix: /restricted/ rewrite: /a/very/safe/path/ rewrite_host: safe.example.com service: dangerous-service 15
Configuring the Control Plane apiVersion: getambassador.io/v2 kind: Mapping metadata: name:
quote-mapping spec: prefix: /quote/ service: quote apiVersion: networking.k8s.io/v1 kind: Ingress metadata: annotations: kubernetes.io/ingress.class: ambassador name: example-ingress spec: tls: - hosts: - sslexample.foo.com secretName: sslexample-cert rules: - host: sslexample.foo.com http: paths: - path: /quote/ backend: serviceName: quote servicePort: 80 apiVersion: getambassador.io/v2 kind: Host metadata: name: wildcard-host spec: hostname: “sslexample.foo.com” acmeProvider: authority: none tlsSecret: name: sslexample-cert 16
Gateway API www.getambassador.io/docs/edge-stack/latest/topics/using/gateway-api/
Service meshes: We’ve got you covered https://www.getambassador.io/docs/edge-stack/latest/howtos/
Make Money* with Emissary-Ingress & Linkerd Install add_linkerd_headers: true *
Making money not guaranteed!
Emissary + Linkerd https://www.getambassador.io/docs/edge-stack/latest/howtos/linkerd2/ www.youtube.com/watch?v=nWCvine4_Sw
Emissary + HashiCorp Consul www.youtube.com/watch?v=QnvU4vCgAlE blog.getambassador.io/part-3-incremental-app-migration-from-vms-to-kubernetes-amb assador-and-consul-aacf87eea3e8
Observability www.getambassador.io/docs/edge-stack/latest/howtos/prometheus/ www.getambassador.io/docs/edge-stack/latest/topics/running/services/tracing-service/ www.youtube.com/watch?v=hPifPTEAFK0
Observability and understandability www.youtube.com/watch?v=bdvxsEIhHcc a8r.io
Adoption
Four Remarkable Years Initial release, March 2017 Ambassador 1.0 release,
Jan 2020 CNCF donation as Emissary, April 2021 3.3K GitHub stars 5000+ Slack members 160+ contributors 500+ forks 25
None
The cloud native superpower: The people Emissary Ingress could never
have come this far without the amazing community that’s grown up around it Many, many thanks! (And we’re only just getting started)
Proven and Growing Rapidly Many production deployments: • AppDirect: (KubeCon
NA 2018 presentation) • GoSpotCheck: (KubeCon NA 2019 presentation) • Lifion by ADP • Ticketmaster • Chick-Fil-A • OneFootball (KubeCon EU 2019 presentation) 28
Getting Started with Emissary-Ingress www.getambassador.io/docs/edge-stack/latest/topics/install/install-ambassador-oss/ app.getambassador.io/initializer/
Thanks! @danielbryantuk | db@datawire.io To get involved or ask questions:
www.getambassador.io/developer-office-hours/ a8r.io/slack 30