44
Consul: Discover your Services Oliver Fischer @sweblogtweets Jörg Müller @JoergM

Consul: Discover your Services

Embed Size (px)

Citation preview

Page 1: Consul: Discover your Services

Consul: Discover your Services

Oliver Fischer @sweblogtweets

Jörg Müller@JoergM

Page 2: Consul: Discover your Services

Jörg Müller@JoergM

Hypoport AG

Oliver Fischer@sweblogtweets E-Post Development GmbH

Page 3: Consul: Discover your Services

Why are we talking about Consul?

Page 4: Consul: Discover your Services

Distributed Systems are the new normality

Page 5: Consul: Discover your Services

Problem Areas

Service Discovery

Monitoring

Orchestration

Configuration

Page 6: Consul: Discover your Services

What exactly is Service Discovery?

Page 7: Consul: Discover your Services

Static Configuration

Page 8: Consul: Discover your Services

Semantic DNS

Page 9: Consul: Discover your Services

DNS and Loadbalancer

Page 10: Consul: Discover your Services

Discovery via Registry

Service Registry

register

Page 11: Consul: Discover your Services

Using Consul for Service Discovery

Page 12: Consul: Discover your Services

How does this work?

Page 13: Consul: Discover your Services

Local agents everywhere

Page 14: Consul: Discover your Services

Server are cluster state aware

Page 15: Consul: Discover your Services

Jim?

Jim is dead!

Jim is

dea

d!

Jim is

dea

d!

Jim is

dea

d!

Communication between cluster nodes

Page 16: Consul: Discover your Services

Interaction of agents

Page 17: Consul: Discover your Services

Complex example

Page 18: Consul: Discover your Services

Real World Use Case

Page 19: Consul: Discover your Services

DNS?

Page 20: Consul: Discover your Services

DNS? -> No

Page 21: Consul: Discover your Services

REST-API?

Page 22: Consul: Discover your Services

REST-API? -> No

Page 23: Consul: Discover your Services

Consul & HAProxy

Page 24: Consul: Discover your Services

Show case

Page 25: Consul: Discover your Services

DEMO

Page 26: Consul: Discover your Services

But there is more…

Page 27: Consul: Discover your Services

Features of Consul

Page 28: Consul: Discover your Services

Consul

Service registry

Page 29: Consul: Discover your Services

Consul

Service registry

DNS Server

Example on Github

Page 30: Consul: Discover your Services

Consul

Service registry

DNS Server

Example on Github

HTTP API

Page 31: Consul: Discover your Services

Consul

Service registry

DNS Server

HTTP APIKey Value Store

Page 32: Consul: Discover your Services

Consul

Service registry

DNS Server

HTTP APIKey Value Store

Locks

Example on Github

Page 33: Consul: Discover your Services

Consul

Service registry

DNS Server

HTTP APIKey Value Store

Locks

Remote Execution

Page 34: Consul: Discover your Services

Consul

Service registry

DNS Server

HTTP APIKey Value Store

Locks

Remote Execution

Watches & Events

Example on Github

Page 35: Consul: Discover your Services

Consul

Service registry

DNS Server

HTTP APIKey Value Store

Locks

Remote Execution

Watches & Events

Example on Github

Checks

Page 36: Consul: Discover your Services

Consul

Service registry

DNS Server

HTTP APIKey Value Store

Locks

Remote Execution

Watches & Events

Checks

Encryption and ACLs

Page 37: Consul: Discover your Services

Consul

Service registry

DNS Server

HTTP APIKey Value Store

Locks

Remote Execution

Watches & Events

Checks

Encryption and ACLs

Multiple Datacenters

Page 38: Consul: Discover your Services

Consul

Service registry

DNS Server

HTTP APIKey Value Store

Locks

Remote Execution

Watches & Events

Checks

Third party integrations

Encryption and ACLs

Multiple Datacenters

Page 39: Consul: Discover your Services

Summary

Page 40: Consul: Discover your Services

State of Consul

Page 41: Consul: Discover your Services

Difficulties today

Page 42: Consul: Discover your Services

The potential rises while using it

Page 43: Consul: Discover your Services

More on ConsulGetting started:

https://consul.io/intro/index.html

Documentation: https://consul.io/docs/index.html

Our examples: https://github.com/JoergM/consul-examples

Page 44: Consul: Discover your Services

Q & A