Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
R.B. Boyer 7928305279 making ACLToken.ExpirationTime a *time.Time value instead of time.Time (#5663) 6 years ago
.circleci Add fmt and vet (#5671) 6 years ago
.github remove remaining references to govendor and vendorfmt (#5587) 6 years ago
acl Handle rules translation when coming from the JSON compat HCL (#5662) 6 years ago
agent making ACLToken.ExpirationTime a *time.Time value instead of time.Time (#5663) 6 years ago
api making ACLToken.ExpirationTime a *time.Time value instead of time.Time (#5663) 6 years ago
bench
build-support Update Consul-Dev.dockerfile (#5678) 6 years ago
command making ACLToken.ExpirationTime a *time.Time value instead of time.Time (#5663) 6 years ago
connect Move the watch package into the api module (#5664) 6 years ago
demo
ipaddr
lib Implement config entry replication (#5706) 6 years ago
logger Enforce log level filter for log files 6 years ago
sdk Move internal/ to sdk/ (#5568) 6 years ago
sentinel
service_os
snapshot Move internal/ to sdk/ (#5568) 6 years ago
terraform terraform: remove modules in repo (#5085) 6 years ago
test
testrpc Move internal/ to sdk/ (#5568) 6 years ago
tlsutil
types
ui-v2
vendor Move the watch package into the api module (#5664) 6 years ago
version
website Implement bootstrapping proxy defaults from the config file (#5714) 6 years ago
.dockerignore
.gitignore Remove old UI, option to use it, and its build processes 6 years ago
.travis.yml
CHANGELOG.md Update CHANGELOG.md 6 years ago
GNUmakefile Move the watch package into the api module (#5664) 6 years ago
INTERNALS.md
LICENSE
NOTICE.md
README.md
Vagrantfile
go.mod Update go-msgpack version (#5683) 6 years ago
go.sum Update go-msgpack version (#5683) 6 years ago
main.go
main_test.go

README.md

Consul Build Status Join the chat at https://gitter.im/hashicorp-consul/Lobby

Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable.

Consul provides several key features:

  • Service Discovery - Consul makes it simple for services to register themselves and to discover other services via a DNS or HTTP interface. External services such as SaaS providers can be registered as well.

  • Health Checking - Health Checking enables Consul to quickly alert operators about any issues in a cluster. The integration with service discovery prevents routing traffic to unhealthy hosts and enables service level circuit breakers.

  • Key/Value Storage - A flexible key/value store enables storing dynamic configuration, feature flagging, coordination, leader election and more. The simple HTTP API makes it easy to use anywhere.

  • Multi-Datacenter - Consul is built to be datacenter aware, and can support any number of regions without complex configuration.

  • Service Segmentation - Consul Connect enables secure service-to-service communication with automatic TLS encryption and identity-based authorization.

Consul runs on Linux, Mac OS X, FreeBSD, Solaris, and Windows. A commercial version called Consul Enterprise is also available.

Please note: We take Consul's security and our users' trust very seriously. If you believe you have found a security issue in Consul, please responsibly disclose by contacting us at security@hashicorp.com.

Quick Start

An extensive quick start is viewable on the Consul website:

https://www.consul.io/intro/getting-started/install.html

Documentation

Full, comprehensive documentation is viewable on the Consul website:

https://www.consul.io/docs

Contributing

Thank you for your interest in contributing! Please refer to CONTRIBUTING.md for guidance.