Consul is a distributed, highly available, and data center aware solution to connect and configure applications across dynamic, distributed infrastructure.
 
 
 
 
 
 
Go to file
Chris Piraino 59f1462801
Fix segfault when removing both a service and associated check (#7108)
* Fix segfault when removing both a service and associated check

updateSyncState creates entries in the services and checks maps for
remote services/checks that are not found locally, so that we can then
make sure to delete them in our reconciliation process. However, the
values added to the map are missing key fields that the rest of the code
expects to not be nil.

* Add comment stating Check field can be nil
2020-01-23 10:38:32 -06:00
.circleci CI: Extract remaining values of /tmp/test-results into yaml reference (#6964) 2019-12-17 15:18:10 -08:00
.github Add contributing dir with Config file checklist (#7017) 2020-01-14 12:24:03 +00:00
acl Intentions ACL enforcement updates (#7028) 2020-01-13 15:51:40 -05:00
agent Fix segfault when removing both a service and associated check (#7108) 2020-01-23 10:38:32 -06:00
api fix the submodule go.mod and go.sum files (#7098) 2020-01-21 14:49:26 -06:00
bench Gets benchmarks running again and does a rough pass for 0.7.1. 2016-11-29 13:02:26 -08:00
build-support ui: Upgrade tooling to node 10 now we are on a more recent ember (#6610) 2019-12-18 12:26:40 +00:00
command bug: Consul lock does not receive signals if lock not acquired (#5909) 2020-01-22 12:44:48 -07:00
connect Fix support for RSA CA keys in Connect. (#6638) 2019-11-01 13:20:26 +00:00
contributing Add contributing dir with Config file checklist (#7017) 2020-01-14 12:24:03 +00:00
demo demo: Added udp port forwarding 2018-05-30 13:56:56 +09:00
ipaddr Ensure Consul is IPv6 compliant (#5468) 2019-06-04 10:02:38 -04:00
lib agent: fewer file local differences between enterprise and oss (#6820) (#6898) 2019-12-06 21:35:58 +01:00
logger log: handle discard all logfiles properly (#6945) 2019-12-18 22:31:22 +01:00
sdk Fix up formatting in sdk package (#7109) 2020-01-22 12:45:34 -06:00
sentinel Miscellaneous Fixes (#6896) 2019-12-06 14:01:34 -05:00
service_os Changes made : 2018-06-28 21:18:14 -04:00
snapshot Move internal/ to sdk/ (#5568) 2019-03-27 08:54:56 -04:00
terraform terraform: remove modules in repo (#5085) 2019-04-04 16:31:43 -07:00
test Allow configuration of upstream connection limits in Envoy (#6829) 2019-12-03 14:13:33 -06:00
testrpc connect: check if intermediate cert needs to be renewed. (#6835) 2020-01-17 23:27:13 +01:00
tlsutil agent: setup grpc server with auto_encrypt certs and add -https-port (#7086) 2020-01-22 11:32:17 +01:00
types Removes remoteConsuls in favor of the new router. 2017-03-16 16:42:19 -07:00
ui-v2 ui: Make sure that the namespace is passed when changing a token via [Use] (#6973) 2019-12-20 14:57:10 +00:00
vendor raft: update raft to v1.1.2 (#7079) 2020-01-20 13:58:02 +01:00
version Release v1.7.0-beta2 2019-12-20 17:16:53 +00:00
website fix Unix socket path in docs 2020-01-22 09:11:24 -08:00
.dockerignore Update the scripting 2018-06-14 21:42:47 -04:00
.gitignore .gitignore: cut IDE-specific entries, cleanup (#7083) 2020-01-17 11:06:33 -08:00
CHANGELOG.md update changelog 2020-01-23 10:00:26 -06:00
GNUmakefile test: run both the TestVaultProvider and TestVaultCAProvider tests in CI (#7097) 2020-01-21 12:01:35 -06:00
INTERNALS.md Add contributing dir with Config file checklist (#7017) 2020-01-14 12:24:03 +00:00
LICENSE Initial commit 2013-11-04 14:15:27 -08:00
NOTICE.md add copyright notice file 2018-07-09 10:58:26 -07:00
README.md Merge pull request #7102 from hashicorp/david-yu-patch-2 2020-01-22 08:57:10 -08:00
Vagrantfile Adds a basic Linux Vagrant setup, stolen from Nomad. 2017-10-06 08:10:12 -07:00
codecov.yml coverage: disable comment and project status, set informational mode (#6954) 2019-12-17 11:51:52 -05:00
go.mod raft: update raft to v1.1.2 (#7079) 2020-01-20 13:58:02 +01:00
go.sum raft: update raft to v1.1.2 (#7079) 2020-01-20 13:58:02 +01:00
main.go Added Side Effect import for Windows Service 2018-06-18 14:55:11 -04:00
main_test.go Adding basic CLI infrastructure 2013-12-19 11:22:08 -08:00

README.md

Consul CircleCI Discuss

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/Service Mesh - Consul Connect enables secure service-to-service communication with automatic TLS encryption and identity-based authorization. Applications can use sidecar proxies in a service mesh configuration to establish TLS connections for inbound and outbound connections without being aware of Connect at all.

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

A few quick start guides are available on the Consul website:

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.