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
Microservices with Consul and Nomad
Search
Richard Kettelerij
September 20, 2018
Technology
0
280
Microservices with Consul and Nomad
Richard Kettelerij
September 20, 2018
Tweet
Share
Other Decks in Technology
See All in Technology
Git scrapingで始める継続的なデータ追跡 / Git Scraping
ohbarye
5
620
RubyでKubernetesプログラミング
sat
PRO
4
160
財務データを題材に、 ETLとは何であるかを考える
shoe116
3
1.6k
embedパッケージを深掘りする / Deep Dive into embed Package in Go
task4233
1
230
Re:Define 可用性を支える モニタリング、パフォーマンス最適化、そしてセキュリティ
pyama86
4
660
Goで実践するBFP
hiroyaterui
1
130
AWSサービスアップデート 2024/12 Part3
nrinetcom
PRO
0
160
TSのコードをRustで書き直した話
askua
4
680
カップ麺の待ち時間(3分)でわかるPartyRockアップデート
ryutakondo
0
160
やっちゃえ誤自宅Nutanix
yukiafronia
0
250
コロプラのオンボーディングを採用から語りたい
colopl
5
1.5k
Plants vs thieves: Automated Tests in the World of Web Security
leichteckig
0
130
Featured
See All Featured
Six Lessons from altMBA
skipperchong
27
3.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Rails Girls Zürich Keynote
gr2m
94
13k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.2k
Fireside Chat
paigeccino
34
3.1k
BBQ
matthewcrist
85
9.4k
Designing for humans not robots
tammielis
250
25k
How GitHub (no longer) Works
holman
312
140k
Transcript
mindloops Richard Kettelerij Microservices with Consul & Nomad @rkettelerij
Intro
Agenda • Intro • Use case @ Police • Hashicorp
stack • Consul (incl. demo) • Nomad (incl. demo) • Recap
Product line Cloud, Big data & Internet
None
Already in place…
What could be improved…. • Limited automation around creating new
VM’s • No solution for high availability • No zero-downtime deployments - Purpose-built single instance VM for each microservice -
Architecture (over a year ago) service-foo service-bar service-qux
More VM’s service-foo service-bar service-qux service-foo service-qux service-bar
None
None
None
Provisioning tools
Runtime tools
Suite
Consul • Service discovery (via HTTP and DNS) • Health
checking • DNS (A record, SRV record) • HTTP • Files: Consul-Template • Environment variables: EnvConsul • SDKs/Frameworks: Spring Cloud Consul, Dropwizard, etc, etc
Consul Consul Connect (service segmentation) • Service configuration (K/V store
with watches)
service-foo service-bar service-qux service-foo service-qux service-bar More VM’s
service-foo service-bar service-qux service-foo service-qux Consul cluster service-bar Service discovery
Multiple datacenters test prod OpenStack tenant A test prod OpenStack
tenant B service- service- service- service-foo service-qux Consul cluster service-bar Webserver service- service- service- service-foo service-qux Consul cluster service-bar Webserver service- service- service- service-foo service-qux Consul cluster service-bar Webserver service- service- service- service-foo service-qux Consul cluster service-bar Webserver
Science • Raft • SWIM
Demo time!
None
What is Nomad? Scheduler a.k.a Cluster manager a.k.a Orchestrator
What is Nomad?
Type of jobs • System • Service • Batch
Why Nomad? • Simple • First-class Consul integration • Multiple
workloads (Java, exec, Docker, ….)
node1 Nomad Consul & Nomad cluster node2 service-bar node1 service-foo
node3 service-qux service- qux service- fox public-node1
Demo time!
Recap • Why did we do this? High availability •
What did we gain? • High availability • Location transparency • Zero-downtime / rolling-upgrades • Resilience against machine failures
Recap Gradual migration
Thank you! @rkettelerij