Go to file
Paul Banks d6c0557e86
Connect: allow configuring Envoy for L7 Observability (#5558)
* Add support for HTTP proxy listeners

* Add customizable bootstrap configuration options

* Debug logging for xDS AuthZ

* Add Envoy Integration test suite with basic test coverage

* Add envoy command tests to cover new cases

* Add tracing integration test

* Add gRPC support WIP

* Merged changes from master Docker. get CI integration to work with same Dockerfile now

* Make docker build optional for integration

* Enable integration tests again!

* http2 and grpc integration tests and fixes

* Fix up command config tests

* Store all container logs as artifacts in circle on fail

* Add retries to outer part of stats measurements as we keep missing them in CI

* Only dump logs on failing cases

* Fix typos from code review

* Review tidying and make tests pass again

* Add debug logs to exec test.

* Fix legit test failure caused by upstream rename in envoy config

* Attempt to reduce cases of bad TLS handshake in CI integration tests

* bring up the right service

* Add prometheus integration test

* Add test for denied AuthZ both HTTP and TCP

* Try ANSI term for Circle
2019-04-29 17:27:57 +01:00
.circleci Connect: allow configuring Envoy for L7 Observability (#5558) 2019-04-29 17:27:57 +01:00
.github remove remaining references to govendor and vendorfmt (#5587) 2019-04-01 09:55:48 -05:00
acl Handle rules translation when coming from the JSON compat HCL (#5662) 2019-04-15 14:34:36 -04:00
agent Connect: allow configuring Envoy for L7 Observability (#5558) 2019-04-29 17:27:57 +01:00
api acl: adding support for kubernetes auth provider login (#5600) 2019-04-26 14:49:25 -05: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 Update Consul-Dev.dockerfile (#5678) 2019-04-17 12:21:24 -04:00
command Connect: allow configuring Envoy for L7 Observability (#5558) 2019-04-29 17:27:57 +01:00
connect Move the watch package into the api module (#5664) 2019-04-26 12:33:01 -04:00
demo demo: Added udp port forwarding 2018-05-30 13:56:56 +09:00
ipaddr New config parser, HCL support, multiple bind addrs (#3480) 2017-09-25 11:40:42 -07:00
lib Implement config entry replication (#5706) 2019-04-26 13:38:39 -04:00
logger Enforce log level filter for log files 2019-04-11 10:04:28 -06:00
sdk Move internal/ to sdk/ (#5568) 2019-03-27 08:54:56 -04:00
sentinel Renames stubs to be more consistent. 2017-11-29 18:36:52 -08: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 Connect: allow configuring Envoy for L7 Observability (#5558) 2019-04-29 17:27:57 +01:00
testrpc Move internal/ to sdk/ (#5568) 2019-03-27 08:54:56 -04:00
tlsutil agent: enable reloading of tls config (#5419) 2019-03-13 10:29:06 +01:00
types Removes remoteConsuls in favor of the new router. 2017-03-16 16:42:19 -07:00
ui-v2 ui: Custom version of ember-block-slots compatible with ember 3 (#5245) 2019-01-30 10:56:04 +00:00
vendor Connect: allow configuring Envoy for L7 Observability (#5558) 2019-04-29 17:27:57 +01:00
version Putting source back into Dev Mode 2019-03-21 16:34:48 +01:00
website Implement bootstrapping proxy defaults from the config file (#5714) 2019-04-26 14:25:03 -04:00
.dockerignore Update the scripting 2018-06-14 21:42:47 -04:00
.gitattributes Initial commit 2013-11-04 14:15:27 -08:00
.gitignore Remove old UI, option to use it, and its build processes 2019-04-12 09:02:27 -06:00
.travis.yml remove reference to deleted branch 2019-04-26 15:39:57 -05:00
CHANGELOG.md update changelog 2019-04-26 15:43:34 -05:00
GNUmakefile Connect: allow configuring Envoy for L7 Observability (#5558) 2019-04-29 17:27:57 +01:00
INTERNALS.md docs: correct link to top level agent package (#4750) 2018-10-04 09:15:55 -05: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 Contribution guide (#4704) 2018-10-05 09:06:40 -07:00
Vagrantfile Adds a basic Linux Vagrant setup, stolen from Nomad. 2017-10-06 08:10:12 -07:00
go.mod Connect: allow configuring Envoy for L7 Observability (#5558) 2019-04-29 17:27:57 +01:00
go.sum Connect: allow configuring Envoy for L7 Observability (#5558) 2019-04-29 17:27:57 +01:00
main.go Abandon daemonize for simpler solution (preserving history): 2018-06-25 12:24:10 -07:00
main_test.go Adding basic CLI infrastructure 2013-12-19 11:22:08 -08:00

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.