Skip to content

Consul Integration

Adrian Kurt edited this page May 2, 2017 · 3 revisions

Introduction

Consul is a service configuration and discovery tool created by HashiCorp. They provide a brief overview of Consul in their introduction. You can learn more about Consul on its official website.

Why is Consul needed?

Consul provides service discovery using DNS or HTTP. Ops Manager connects to its various components (Automation-, Monitoring-, Backup-Agents, MongoDBs) by using their host names. This is problematic as BOSH-deployed VMs potentially have changing names and IPs. Additionally, to secure the connections between hosts with SSL/TLS hosts must provide valid certificates. This is achieved by accessing hosts over their consul names.

How Consul solves this Problem

Consul provides service discovery by DNS. By registering each host under a unique URI, we can dynamically map hosts to IPs.

Requirements

This solution requires the following setup:

  1. An existing or new Consul server cluster
  2. Consul agents on each VM with correct configuration to connect to the Consul cluster

Note: The sample manifests deploy a single instance Consul cluster and agents on each VM. We recommend a consul cluster of at least 3 servers for productive environments.

Clone this wiki locally