SlideShare a Scribd company logo
HASHICORP
Deploying and Discovering at Scale
with Consul & Nomad
HASHICORP
Jon Benson
@jm_benson
HASHICORP
Agenda
• Nomad Overview
• Nomad Architecture
HASHICORP
Agenda
• Consul Overview
• Consul Architecture
• Prepared Queries
HASHICORP
Agenda
• Demo
• Questions!
HASHICORP
Advantages of a Scheduler
Higher Resource Utilization
Decouple Work from Resources
Better Quality of Service
HASHICORP
Advantages of a Scheduler
Bin Packing
Over-Subscription
Job Queueing
Higher Resource Utilization
Decouple Work from Resources
Better Quality of Service
HASHICORP
Advantages of a Scheduler
Abstraction
API Contracts
Standardization
Higher Resource Utilization
Decouple Work from Resources
Better Quality of Service
HASHICORP
Advantages of a Scheduler
Priorities
Resource Isolation
Pre-emption
Higher Resource Utilization
Decouple Work from Resources
Better Quality of Service
HASHICORP
Nomad
HASHICORP
Cluster Scheduler
Easily Deploy Applications
Job Specification
HASHICORP
example.nomad
# Define our simple redis job
job "redis" {
# Run only in us-east-1
datacenters = ["us-east-1"]
# Define the single redis task using Docker
task "redis" {
driver = "docker"
config {
image = "redis:latest"
}
resources {
cpu = 500 # Mhz
memory = 256 # MB
network {
mbits = 10
dynamic_ports = ["redis"]
}
}
}
}
HASHICORP
Job Specification
Declares what to run
HASHICORP
Job Specification
Nomad determines where and
manages how to run
HASHICORP
Job Specification
Abstract work from resources
Nomad
HASHICORP
Higher Resource Utilization
Decouple Work from Resources
Better Quality of Service
Nomad
HASHICORP
Multi-Datacenter
Multi-Region
Flexible Workloads
Job Priorities
Bin Packing
Large Scale
Operationally Simple
HASHICORP
Thousands of regions
Tens of thousands of clients per region
Thousands of jobs per region
HASHICORP
Built on Experience
gossip consensus
HASHICORP
• Cluster Management
• Gossip Based (P2P)
• Membership
• Failure Detection
• Event System
HASHICORP
• Gossip Protocol
• Large Scale
• Production Hardened
• Operationally Simple
HASHICORP
• Service configuration and discovery
• Monitoring at scale
• High-availability
HASHICORP
• Service configuration and discovery
• Monitoring at scale
• High-availability
HASHICORP
• Service configuration and discovery
• Monitoring at scale
• High-availability
HASHICORP
• Service configuration and discovery
• Monitoring at scale
• High-availability
HASHICORP
HASHICORP
• Multi-Datacenter
• Raft Consensus
• Large Scale
• Production Hardened
• Coordination (Locking)
• Central Servers + Distributed Clients
• Network Tomography
• Prepared Queries
HASHICORP
Prepared Queries
• Multiple instances of a given service exist in multiple
datacenters
• Clients can talk to any of them, and always prefer the
instances with lowest latency
• Policies can change, desire to not have the clients know
the details of how to locate a healthy service
HASHICORP
Prepared Queries
• New query namespace, similar to services
• Register queries to answer for parts of this namespace
• Clients use APIs, or “.query.consul” DNS lookups to run
queries
HASHICORP
gossip consensus
Mature Libraries
Design Patterns
No Scheduling Logic
HASHICORP
Built on Research
gossip consensus
Nomad
HASHICORP
Inspired by Google Omega
Optimistic Concurrency
Internal State and Coordination
Service and Batch workloads
Pluggable Architecture
HASHICORP
Single Region Architecture
SERVER SERVER SERVER
CLIENT CLIENT CLIENTDC1 DC2 DC3
FOLLOWER LEADER FOLLOWER
REPLICATION
FORWARDING
REPLICATION
FORWARDING
RPC RPC RPC
HASHICORP
Multi Region Architecture
SERVER SERVER SERVER
FOLLOWER LEADER FOLLOWER
REPLICATION
FORWARDING
REPLICATION
REGION B GOSSIP
REPLICATION REPLICATION
FORWARDING
REGION FORWARDING
 REGION A
SERVER
FOLLOWER
SERVER SERVER
LEADER FOLLOWER
Nomad
HASHICORP
Region is Isolation Domain
1-N Datacenters Per Region
Flexibility to do 1:1 (Consul)
Scheduling Boundary
HASHICORP
Data Model
HASHICORP
Evaluations ~= State Change Event
HASHICORP
Create / Update / Delete Job
Node Up / Node Down
Allocation Failed
HASHICORP
External Event
Evalua?on Crea?on
Evalua?on Queuing
Evalua?on Processing
Op?mis?c Coordina?on
State Updates
HASHICORP
Server Architecture
Omega Class Scheduler
Pluggable Logic
Internal Coordination and State
Multi-Region / Multi-Datacenter
HASHICORP
Client Architecture
Broad OS Support
Host Fingerprinting
Pluggable Drivers
HASHICORP
Fingerprinting
Operating System
Hardware
Applications
Environment
Type Examples
Kernel, OS, Versions
CPU, Memory, Disk
Java, Docker, Consul
AWS, GCE
HASHICORP
Fingerprinting
Constrain Placement and Bin Pack
HASHICORP
Fingerprinting
“Task Requires Linux, Docker, and
PCI-Compliant Hardware”
expressed as Constraints
HASHICORP
Fingerprinting
“Task needs 512MB RAM and 1 Core”
expressed as Resource Ask
HASHICORP
Drivers
Execute Tasks
Provide Resource Isolation
HASHICORP
Containerized
Virtualized
Standalone
Docker
Qemu / KVM
Java Jar
Static Binaries
Rocket
HASHICORP
Containerized
Virtualized
Standalone
Docker
Rocket
Windows Server Containers
Qemu / KVM
Hyper-V
Xen
Java Jar
Static Binaries
C#
Nomad
HASHICORP
Workload Flexibility:
Schedulers
Fingerprints
Drivers
Job Specification
Nomad
HASHICORP
Operational Simplicity:
Single Binary
No Dependencies
Highly Available
Nomad
HASHICORP
Cluster Scheduler
Easily Deploy Applications
Job Specification
Nomad
HASHICORP
Higher Resource Utilization
Decouple Work from Resources
Better Quality of Service
Nomad
HASHICORP
• Million Container Challenge
• hashicorp.com/c1m.html
• github.com/hashicorp/c1m
• Nomad 0.4
• Volume support across drivers
• Advanced networking
HASHICORP
Thanks!
We’ll do a quick demo then answer questions…
Jon Benson
@jm_benson

More Related Content

What's hot (20)

PDF
#GeodeSummit - Where Does Geode Fit in Modern System Architectures
PivotalOpenSourceHub
 
PDF
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...
Lucidworks
 
PPTX
A Low-latency Logging Framework by Rajat Panwar of HolidayMe - Redis Day Bang...
Redis Labs
 
PPTX
Apache Hadoop YARN State of the Union
Weiwei Yang
 
PPTX
Kylin OLAP Engine Tour
Luke Han
 
PDF
6. Apache Kylin Roadmap and Community - Apache Kylin Meetup @Shanghai
Luke Han
 
PPTX
PayPal Risk Platform High Performance Practice
Brian Ling
 
PPTX
[GeekTalk#2] Tạ Hoàng Hải - Rest API with PHP
Nexus FrontierTech
 
PDF
The Evolution of Apache Kylin by Luke Han
Luke Han
 
PPTX
FinOps introduction
Alexander Tokarev
 
PDF
Apache Kylin - Balance Between Space and Time
DataWorks Summit
 
PPTX
Hadoop Migration from 0.20.2 to 2.0
Jabir Ahmed
 
PPTX
Apache Kylin Introduction
Luke Han
 
PPTX
Apache drill
MapR Technologies
 
PPTX
Apache Kylin Streaming
hongbin ma
 
PPTX
Kylin Engineering Principles
Xu Jiang
 
PDF
HBaseCon2017 Democratizing HBase
HBaseCon
 
PDF
Big Data MDX with Mondrian and Apache Kylin
inovex GmbH
 
PDF
Apache Kylin Open Source Journey for QCon2015 Beijing
Luke Han
 
PPTX
Drilling into Data with Apache Drill
DataWorks Summit
 
#GeodeSummit - Where Does Geode Fit in Modern System Architectures
PivotalOpenSourceHub
 
Never Stop Exploring - Pushing the Limits of Solr: Presented by Anirudha Jadh...
Lucidworks
 
A Low-latency Logging Framework by Rajat Panwar of HolidayMe - Redis Day Bang...
Redis Labs
 
Apache Hadoop YARN State of the Union
Weiwei Yang
 
Kylin OLAP Engine Tour
Luke Han
 
6. Apache Kylin Roadmap and Community - Apache Kylin Meetup @Shanghai
Luke Han
 
PayPal Risk Platform High Performance Practice
Brian Ling
 
[GeekTalk#2] Tạ Hoàng Hải - Rest API with PHP
Nexus FrontierTech
 
The Evolution of Apache Kylin by Luke Han
Luke Han
 
FinOps introduction
Alexander Tokarev
 
Apache Kylin - Balance Between Space and Time
DataWorks Summit
 
Hadoop Migration from 0.20.2 to 2.0
Jabir Ahmed
 
Apache Kylin Introduction
Luke Han
 
Apache drill
MapR Technologies
 
Apache Kylin Streaming
hongbin ma
 
Kylin Engineering Principles
Xu Jiang
 
HBaseCon2017 Democratizing HBase
HBaseCon
 
Big Data MDX with Mondrian and Apache Kylin
inovex GmbH
 
Apache Kylin Open Source Journey for QCon2015 Beijing
Luke Han
 
Drilling into Data with Apache Drill
DataWorks Summit
 

Viewers also liked (6)

PPT
Complementos del verbo
p_queipo
 
PPTX
Revisión análisis sintáctico
oasenj
 
PDF
Los complementos del verbo, cd y ci
NOELIA ARTERO BALAGUER
 
PPT
Modificadores del predicado
Rosemary Mallqui Bajonero
 
PPTX
El predicado y sus modificadores
alex90metal
 
PPT
El sujeto y su estructura
clasefacil
 
Complementos del verbo
p_queipo
 
Revisión análisis sintáctico
oasenj
 
Los complementos del verbo, cd y ci
NOELIA ARTERO BALAGUER
 
Modificadores del predicado
Rosemary Mallqui Bajonero
 
El predicado y sus modificadores
alex90metal
 
El sujeto y su estructura
clasefacil
 
Ad

Similar to San Francisco HashiCorp User Group at GitHub (20)

PDF
London HUG 14/4 - Deploying and Discovering at Scale with Consul and Nomad
London HashiCorp User Group
 
PDF
London HUG 8/3 - Nomad
London HashiCorp User Group
 
PDF
Atmosphere 2016 - Diptanu Choudhury - Taming the public clouds with nomad
PROIDEA
 
PDF
Hashicorp Nomad
Ivan Glushkov
 
PDF
Consul and Complex Networks
slackpad
 
PPTX
Easy and Flexible Application Deployment with HashiCorp Nomad
Amanda MacLeod
 
PDF
PostgreSQL High-Availability and Geographic Locality using consul
Sean Chittenden
 
PDF
Multi-Cloud with Nomad and Consul Connect
Mitchell Pronschinske
 
PDF
Nomad Multi-Cloud
Nic Jackson
 
PDF
Living the Nomadic life - Nic Jackson
Paris Container Day
 
PPTX
#ITsubbotnik Spring 2017: Roman Dimitrenko "Building Paas with the HashiStack"
epamspb
 
PPTX
Modern Scheduling for Modern Applications with Nomad
Mitchell Pronschinske
 
PDF
Leaving the Ivory Tower: Research in the Real World
C4Media
 
PPTX
Hashicorp: Delivering the Tao of DevOps
Ramit Surana
 
PDF
Large-scale Infrastructure Automation at Verizon
Timothy Perrett
 
PPTX
Nomad by HashiCorp Presentation (DevOps)
Knoldus Inc.
 
PPTX
Nomad by HashiCorp Presentation (DevOps)
Knoldus Inc.
 
PDF
Leaving the Ivory Tower: Research in the Real World
ArmonDadgar
 
PPTX
Cloud Adoption: From Start to PaaS
Andrew Khoury
 
PPTX
Kloia AWS IBM Hashicorp Day Presentation
kloia
 
London HUG 14/4 - Deploying and Discovering at Scale with Consul and Nomad
London HashiCorp User Group
 
London HUG 8/3 - Nomad
London HashiCorp User Group
 
Atmosphere 2016 - Diptanu Choudhury - Taming the public clouds with nomad
PROIDEA
 
Hashicorp Nomad
Ivan Glushkov
 
Consul and Complex Networks
slackpad
 
Easy and Flexible Application Deployment with HashiCorp Nomad
Amanda MacLeod
 
PostgreSQL High-Availability and Geographic Locality using consul
Sean Chittenden
 
Multi-Cloud with Nomad and Consul Connect
Mitchell Pronschinske
 
Nomad Multi-Cloud
Nic Jackson
 
Living the Nomadic life - Nic Jackson
Paris Container Day
 
#ITsubbotnik Spring 2017: Roman Dimitrenko "Building Paas with the HashiStack"
epamspb
 
Modern Scheduling for Modern Applications with Nomad
Mitchell Pronschinske
 
Leaving the Ivory Tower: Research in the Real World
C4Media
 
Hashicorp: Delivering the Tao of DevOps
Ramit Surana
 
Large-scale Infrastructure Automation at Verizon
Timothy Perrett
 
Nomad by HashiCorp Presentation (DevOps)
Knoldus Inc.
 
Nomad by HashiCorp Presentation (DevOps)
Knoldus Inc.
 
Leaving the Ivory Tower: Research in the Real World
ArmonDadgar
 
Cloud Adoption: From Start to PaaS
Andrew Khoury
 
Kloia AWS IBM Hashicorp Day Presentation
kloia
 
Ad

Recently uploaded (20)

PDF
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
PDF
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
PDF
Tea4chat - another LLM Project by Kerem Atam
a0m0rajab1
 
PDF
Brief History of Internet - Early Days of Internet
sutharharshit158
 
PDF
Per Axbom: The spectacular lies of maps
Nexer Digital
 
PPTX
The Future of AI & Machine Learning.pptx
pritsen4700
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PPTX
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
PDF
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
PDF
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
PDF
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
PDF
introduction to computer hardware and sofeware
chauhanshraddha2007
 
PPTX
Agentic AI in Healthcare Driving the Next Wave of Digital Transformation
danielle hunter
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
Market Insight : ETH Dominance Returns
CIFDAQ
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
PDF
Build with AI and GDG Cloud Bydgoszcz- ADK .pdf
jaroslawgajewski1
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
Responsible AI and AI Ethics - By Sylvester Ebhonu
Sylvester Ebhonu
 
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
Tea4chat - another LLM Project by Kerem Atam
a0m0rajab1
 
Brief History of Internet - Early Days of Internet
sutharharshit158
 
Per Axbom: The spectacular lies of maps
Nexer Digital
 
The Future of AI & Machine Learning.pptx
pritsen4700
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
Agile Chennai 18-19 July 2025 | Workshop - Enhancing Agile Collaboration with...
AgileNetwork
 
How ETL Control Logic Keeps Your Pipelines Safe and Reliable.pdf
Stryv Solutions Pvt. Ltd.
 
The Future of Mobile Is Context-Aware—Are You Ready?
iProgrammer Solutions Private Limited
 
Structs to JSON: How Go Powers REST APIs
Emily Achieng
 
introduction to computer hardware and sofeware
chauhanshraddha2007
 
Agentic AI in Healthcare Driving the Next Wave of Digital Transformation
danielle hunter
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
Market Insight : ETH Dominance Returns
CIFDAQ
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
Research-Fundamentals-and-Topic-Development.pdf
ayesha butalia
 
Build with AI and GDG Cloud Bydgoszcz- ADK .pdf
jaroslawgajewski1
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 

San Francisco HashiCorp User Group at GitHub