Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
HTTP routing with Linkerd
Search
Borys Pierov
December 08, 2017
Programming
260
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
HTTP routing with Linkerd
A practical example of routing HTTP traffic with Linkerd
Borys Pierov
December 08, 2017
More Decks by Borys Pierov
See All by Borys Pierov
Modeling Trees: Graphs vs SQL-based MPTT
ashald
0
340
Other Decks in Programming
See All in Programming
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
220
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
210
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
290
ジョジョの世界をXRで再現する
mofurune
0
160
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
190
The Rails Doctrine Decade
koic
2
590
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.2k
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
2
560
残高管理から台帳サービスへの進化
artoy
1
200
TechTown - Creating Composable Callables in Contemporary C++
rollbear
0
130
Domain-Driven Transformation
hschwentner
2
2.3k
AmebaブログはKMPから卒業します
kmars0605
0
190
Featured
See All Featured
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
320
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
570
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
270
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
630
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Principles of Awesome APIs and How to Build Them.
keavy
128
18k
What's in a price? How to price your products and services
michaelherold
247
13k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Technical Leadership for Architectural Decision Making
baasie
3
600
Everyday Curiosity
cassininazir
0
350
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
340
Optimising Largest Contentful Paint
csswizardry
37
4k
Transcript
$ echo ‘HTTP routing with Linkerd’
$ echo $(whoami)@$(domainname)
[email protected]
$ man ncbi NAME NCBI – National Center for Biotechnology
Information DESCRIPTION World’s go-to place for biomedical and genomic info HISTORY Building software since 1988 ENVIRONMENT Hybrid on-premises & multi-cloud Over 3K services Serving 7K RPS EXAMPLES PubMed, GenBank, PMC, BLAST
$ http_proxy=linkerd:4140 curl http://foo.l5d.ncbi.nlm.nih.gov
service │ works w/ │ containers & w/o │ │
│ ┌───┴────┐ ┌┴┐ $ http_proxy=linkerd:4140 curl http://foo.l5d.ncbi.nlm.nih.gov └──┬──┘ └────────┬─────────┘ │ │ /etc/hosts │ │ │ │ convention
$ curl –H “Host: foo.l5d.ncbi.nlm.nih.gov” http://linkerd:4140
service │ │ ┌┴┐ $ curl –H “Host: foo.l5d.ncbi.nlm.nih.gov” http://linkerd:4140
└────────┬─────────┘ └──┬──┘ │ │ │ │ long domain names phobia │ /etc/hosts
<Location "/foo"> RequestHeader set Host foo.l5d.ncbi.nlm.nih.gov ProxyPass http://linkerd:4140 </Location>
routers: - protocol: http dstPrefix: /http identifier: - kind: io.l5d.header.token
header: Host interpreter: ... servers: - port: 4140
GET /login HTTP/1.1 Host: foo.l5d.ncbi.nlm.nih.gov
/http/foo.l5d.ncbi.nlm.nih.gov
/http => /#/rinet/80 /http => /$/domainToPath /gov/nih/nlm/ncbi/l5d => /service /service
=> /#/consul/.local /service/foo => /service/foo-1 /service/bar => /service/bar-1 /service/baz => /service/baz-1
None
None
None
None
foo bar baz
foo l5d bar l5d baz
foo-1 l5d bar-1 l5d baz-1 foo-2 bar-2 baz-2
foo-1 l5d bar-1 l5d baz-1 foo-2 bar-2 baz-2 CTX CTX
CTX CTX
$ curl –H “Host: foo.l5d.ncbi.nlm.nih.gov” http://linkerd:4140 \ > -H “l5d-dtab:
/service/baz=>/versioned/baz-2”
foo-1 l5d bar-1 l5d baz-1 foo-2 bar-2 baz-2 CTX CTX
CTX