Sean Chittenden
7a814fce63
Print a helpful message re: duplicate addresses
...
IP sockets provide nice endpoints where the kernel will fail to bind and will error out saying socket already in use. UNIX sockets, however, don't enjoy this nice property when cleaning up stale sockets on listen. Given the number of addresses in Consul, provide operators with a helpful message that indicates the source of the reused address.
Before this fix, it was possible for the HTTP socket to unlink the RPC socket, leading to confusing blocked behavior when running commands like `consul info`.
```
% cat tmp.config.json
{
"addresses": {
"http": "unix:///tmp/.consul.sock",
"rpc": "unix:///tmp/.consul.sock"
},
"unix_sockets": {
"mode": "0700"
}
}
% consul agent -config-file tmp.config.json -advertise=127.0.0.1 -data-dir=/tmp/
==> All listening endpoints must be unique: HTTP address already configured for RPC
Exit 1
```
2016-04-01 10:20:45 -07:00
Sean Chittenden
5994c9efbf
skip_leave_on_int's default changes based on agent mode
...
`skip_leave_on_int`'s behavior now changes based on whether or not the agent is acting as a client or server.
Fixes: 1687
2016-03-31 17:45:14 -07:00
Sean Chittenden
ec9b9be736
Guard against a node name containing pure whitespace for real
2016-03-31 15:10:19 -07:00
Sean Chittenden
ff529ffa40
Guard against a node name containing pure whitespace
2016-03-31 15:02:58 -07:00
Sean Chittenden
583abab552
Node names are not allowed to be empty
2016-03-31 14:47:55 -07:00
Sean Chittenden
53380f8e92
Change tests to accept an "at least this many" answers semantic
...
The size of answers vary based on the target platform. Accomodate this variance.
2016-03-30 11:48:32 -07:00
Sean Chittenden
7a7063c072
Fix tests
...
I'm not sure how I thought this passed last night, it was obviously wrong.
2016-03-30 10:16:05 -07:00
Sean Chittenden
19721f5c3d
Editorialize the comment re: UDPAnswerLimit
...
Prodded by: slackpad & fusiondog
2016-03-30 01:15:40 -07:00
Sean Chittenden
5ba7e74bb8
Use table-driven test for response limits
...
Much more exhaustive testing and shows where the limits are of the 512B limitation (quering by ID is less space efficient than querying by just a prepared query or service).
2016-03-30 01:05:49 -07:00
Sean Chittenden
0cb965f901
Remove duplicate paste-o
...
Pointed out by: slackpad
2016-03-29 23:31:31 -07:00
Sean Chittenden
ce88cde7b0
Test services and PQT limits
2016-03-29 23:08:58 -07:00
Sean Chittenden
e1e441fdee
Improve the use of constants across DNS tests
2016-03-29 23:08:40 -07:00
Sean Chittenden
c2d4354563
Use a non-default config value
2016-03-29 23:06:31 -07:00
Sean Chittenden
1dd4234683
Test missing config inputs
...
Alpha sort where appropriate to make it easier to keep in sync in the future.
2016-03-29 23:06:17 -07:00
Sean Chittenden
69696a9c1b
Correctly detect that an answer has been truncated
2016-03-29 19:52:31 -07:00
Sean Chittenden
efe940e7c4
Remove dead and incorrect code
...
This functionality is handled further upstream in `trimUDPAnswers()`
2016-03-29 19:38:26 -07:00
Sean Chittenden
c5c8daf07a
Trim UDP responses per configuration
2016-03-29 19:27:21 -07:00
Sean Chittenden
9fb64ab114
Allow adjusting the number of DNS records in a response...
...
Based on work done by @fusiondog in #1583 , extend the concept to use an integer instead of a boolean.
Fixes : #1583 && #1481
2016-03-29 19:23:56 -07:00
Patrick Feliciano
74623c372a
Adding singleton option to DNS for getaddrinfo bug.
2016-03-29 19:23:07 -07:00
Sean Chittenden
a92cda7bcd
Fix whitespace alignment in a comment
2016-03-23 16:00:39 -07:00
James Phillips
77eb95ddd8
Merge pull request #1861 from hashicorp/b-flaky-test
...
Widens coordinate update sleeps in unit tests.
2016-03-21 18:24:05 -07:00
James Phillips
cd7b3d4b49
Widens coordinate update sleeps in unit tests.
2016-03-21 18:23:11 -07:00
Hrishikesh Barua
9f9aa5084b
Added help text for -dev option #1804
2016-03-21 17:27:57 +05:30
James Phillips
b6cd4318d6
Merge pull request #1851 from hashicorp/f-ipv6-bind
...
Allow [::] as a bind address (binds to first public IPv6 address)
2016-03-19 16:16:19 -07:00
Wim
b5d45322b4
Allow [::] as a bind address (binds to first public IPv6 address)
2016-03-18 23:59:44 +01:00
Miquel Sabaté Solà
615c93a77d
Used 'unconvert' to remove unneeded conversions
...
I've removed unneeded conversions by performing the following commands:
$ go get -u github.com/mdempsky/unconvert
$ go list ./... | grep -v vendor | xargs unconvert -apply
Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
2016-03-18 16:12:56 +01:00
James Phillips
6e2c106006
Merge pull request #1819 from hashicorp/f-check-accept
...
Adds default set of accept headers for HTTP checks.
2016-03-09 21:12:25 -08:00
James Phillips
4cb16808f4
Adds default set of accept headers for HTTP checks.
2016-03-09 21:11:20 -08:00
James Phillips
5c80647e34
Tweaks algorithm so it's safe with an empty list and adds a PQ test.
2016-03-08 23:09:09 -08:00
Igor Dubinskiy
3a25860270
Make sure UDP DNS responses aren't larger than allowed
2016-03-07 16:41:17 -08:00
James Phillips
98784c6416
Updates to latest compiled ui assets.
2016-03-07 13:49:08 -08:00
James Phillips
eb7004f2b8
Renames "debug" endpoint and structures to "explain".
2016-03-07 10:45:39 -08:00
James Phillips
d7288e3a5e
Adds a prepared query debug endpoint.
2016-03-07 10:45:39 -08:00
Calvin Leung Huang
ff38fbc6a3
Correct the rtt -wan error message
2016-03-04 16:27:30 -05:00
James Phillips
f46fa33278
Tweaks formatting of inline output messages.
2016-03-02 19:47:00 -08:00
James Phillips
70575002d9
Retains the last output when a TTL check times out.
2016-03-02 17:58:01 -08:00
James Phillips
7ebad899da
Adds a new PUT-based TTL check update endpoint.
2016-03-02 17:54:01 -08:00
Stefan Engstrom
525cb0abc1
add accept header */* for agent check
2016-02-19 10:31:00 -06:00
James Phillips
052140f8a7
Merge pull request #1703 from alistanis/fix-issue-#1661
...
fixes issue #1661 and adds supporting test
2016-02-16 20:13:36 -08:00
James Phillips
e79dd7c8de
Fixes redirect from / to /ui when internal UI is enabled.
2016-02-12 16:11:32 -08:00
Chris Cooper
2c6f873ecd
add missing test
2016-02-09 10:49:41 -05:00
Chris Cooper
fe0e3aaaa0
fixes issue #1661 and adds supporting test
2016-02-09 10:35:39 -05:00
James Phillips
56cbabff63
Adds a sanity check to the local node info compare.
2016-02-07 15:07:23 -08:00
James Phillips
d2cc2801fa
Merge pull request #1698 from hashicorp/pr-1547-slackpad
...
Implements WAN address translation.
2016-02-07 14:26:04 -08:00
James Phillips
607728ddca
Adds a test to make sure we get the local address within the DC.
2016-02-07 14:16:15 -08:00
James Phillips
524aaae9b7
Increases wait to account for random stagger.
2016-02-07 13:56:45 -08:00
James Phillips
6790930c4e
Factors address translation into a single function.
2016-02-07 13:39:37 -08:00
James Phillips
4be2ab1a75
Moves tagged wan address to be managed by anti-entropy, not serf.
2016-02-07 13:12:42 -08:00
James Phillips
b59599742d
Adds a test to make sure the local sync doesn't clobber tagged addresses.
2016-02-07 11:26:19 -08:00
James Phillips
c60a526fde
Sets up config for more address tags down the road, renames struct members.
2016-02-07 10:37:34 -08:00
Evan Gilman
de8fd561d0
Use a map for additional node addresses
2016-02-06 23:01:45 -08:00
Evan Gilman
2f26771bb1
Add tests for consul WAN translation
2016-02-06 23:01:45 -08:00
Evan Gilman
146f719a66
Explicitly set advertise address in agent tests
...
Otherwise, the tests will fail when run on a machine with multiple
private addresses
2016-02-06 23:01:45 -08:00
Evan Gilman
a3240d28ba
Consider WAN addresses during Node and SRV record lookup
2016-02-06 23:01:45 -08:00
Evan Gilman
496cf5ae73
Implement `translate_wan_addrs` config option
...
This knob tells consul whether it should prefer the WAN address (if set)
when making service lookups in remote datacenters. This enables
reachability for remote services which are behind a NAT.
2016-02-06 23:01:45 -08:00
Evan Gilman
8fa2a60208
Rectify value of `AdvertiseAddrWan` when set elsewhere
...
`AdvertiseAddrs` has been introduced as a configuration option, which
duplicates a few other options, namely `AdvertiseAddrWan`. We need to
use this value elsewhere, so rather than doing a precedence check every
time we need to access it, rectify the value of `AdvertiseAddrWan` to
match
2016-02-06 23:01:45 -08:00
James Phillips
ed8a71efd7
Store WanAddress during Service/Check sync
2016-02-06 23:01:45 -08:00
James Phillips
507c83bdbd
Merge pull request #1690 from alistanis/use-http-package-statuses
...
refactors http server error codes
2016-02-06 22:38:48 -08:00
James Phillips
d60be51f01
Merge pull request #1284 from nbrownus/telemetry
...
Option to disable hostnames from telemetry
2016-02-06 22:00:14 -08:00
David Wittman
8667394955
Fix formatting in exec help
...
The description for `-node` was separated by tabs instead of spaces,
causing it to be incorrectly aligned.
2016-02-06 12:28:56 -06:00
James Phillips
7bc2ba4c18
Merge pull request #1654 from ryanslade/invalid-check-message
...
Updated invalid check error message.
2016-02-05 17:21:29 -08:00
Chris Cooper
5a07e89bb9
Merge branch 'master' of https://github.com/alistanis/consul into use-http-package-statuses
2016-02-05 17:30:43 -05:00
Chris Cooper
e2065e10c0
add comment codes
2016-02-05 17:06:42 -05:00
Chris Cooper
00dd9d6b78
refactors http server error codes to use the http statuses defined in the http package instead of literals
2016-02-05 16:51:31 -05:00
Sean Chittenden
8deec17f73
Use panic instead of returning a sentinel UUID values in unit tests
2016-02-01 16:42:04 -08:00
Sean Chittenden
7af6a94edb
Factor out duplicate functions into a lib package
...
Consolidate code duplication and tests into a single lib package. Most of these functions were from various **/util.go functions that couldn't be imported due to cyclic imports. The consul/lib package is intended to be a terminal node in an import DAG and a place to stash various consul-only helper functions. Pulled in hashicorp/go-uuid instead of consolidating UUID access.
2016-01-29 16:57:45 -08:00
Nate Brown
43a4f3fe02
Option to disable hostnames from telemetry
2016-01-29 13:44:48 -08:00
Ryan Slade
dd98602bd7
Updated invalid check error message.
...
Added some of the newer reasons this error could have occured.
2016-01-28 11:02:00 +02:00
James Phillips
f24a044755
Fixes the static asset generator for new pkg path, updates assets.
2016-01-15 10:21:42 -08:00
Seth Vargo
cae0ff354a
Use HTTPS + www. where appropriate
2016-01-13 17:44:01 -05:00
James Phillips
71e3901a65
Merge pull request #1592 from hashicorp/b-reap
...
Adds support for the reap lock.
2016-01-13 09:37:54 -08:00
James Phillips
343838f12b
Adds support for the reap lock.
2016-01-12 21:10:25 -08:00
Matt McCoy
9cbed7f89e
Add consul agent help for advertise-wan
2016-01-11 14:27:54 -05:00
James Phillips
49342dc973
Makes the timeout behavior more intuitive.
...
Previously, it would try once "up to" the timeout, but in practice it would
just fall through. This modifies the behavior to block until the timeout has
been reached.
2016-01-06 09:40:20 -08:00
James Phillips
1d733f4c36
Defaults monitor retries to 3 retries @ 1s for the consul lock command.
2016-01-05 18:34:22 -08:00
James Phillips
4afeddacc8
Adds monitor retries to the consul lock command.
2016-01-05 18:22:36 -08:00
James Phillips
8caa9e4c7e
Adds "try" support to locks and semaphores.
2016-01-05 18:22:36 -08:00
James Phillips
c1fe9092ed
Merge pull request #1550 from hashicorp/f-devmode
...
Add a `-dev` mode for easy prototyping
2016-01-05 10:01:41 -08:00
Philippe M. Chiasson
a2eddcab38
remove address splitting
2016-01-05 11:49:40 -05:00
Philippe M. Chiasson
21345a8a7f
Move logged client IP to the end of the log message
2015-12-30 15:39:34 -05:00
Philippe M. Chiasson
34c36d9205
Merge branch 'master' of http://github.com/hashicorp/consul into issue/1447/http-access-logs
2015-12-30 15:38:30 -05:00
Ryan Uber
9002bfa37d
agent: enable ui for dev mode
2015-12-26 20:39:42 -05:00
Ryan Uber
afafae53fd
consul: dev mode works
2015-12-26 20:19:36 -05:00
Ryan Uber
87c1283b73
agent: update assetfs output
2015-12-24 22:21:34 -05:00
Ryan Uber
3cf6a173a5
agent: static UI is configurable
2015-12-24 22:21:34 -05:00
Ryan Uber
2d7ced22b3
agent: initial web assets
2015-12-24 22:21:34 -05:00
Ryan Uber
c3e7c98da2
agent: compile web assets into consul binary
2015-12-24 22:21:34 -05:00
Philippe M. Chiasson
9553ac0ca8
Merge branch 'master' of http://github.com/hashicorp/consul into issue/1447/http-access-logs
2015-12-22 14:55:18 -05:00
James Phillips
d61661a98f
Adds a Bool helper function.
2015-12-22 10:43:32 -08:00
James Phillips
e80d1a58fb
Moves logger down where it's used for reaping.
2015-12-22 10:29:55 -08:00
James Phillips
0b1c346990
Changes sense of option to "reap" and uses nil for "not set".
2015-12-22 10:28:10 -08:00
James Phillips
2b257c922e
Adds child process reaping when Consul is running as PID 1.
2015-12-21 21:47:35 -08:00
James Phillips
651f255b9b
Converts the DNS metric to a gauge which gives us a count and a time.
2015-12-21 18:25:09 -08:00
James Phillips
a4dc11167f
Adds telemetry on number of DNS queries served, per-agent.
2015-12-21 17:01:28 -08:00
WangFenjin
29c0516d58
Fix typo
2015-12-08 17:45:01 +08:00
James Phillips
a61d89d0e6
Removes the GOMAXPROCS warnings which are obsolete for Go 1.5+.
2015-11-25 17:59:16 -08:00
Philippe M. Chiasson
65512cae73
Add client ip to http access logs
...
Fixes #1447
2015-11-24 15:06:33 -05:00
James Phillips
95c708f65e
Adds Docker checks support to client API.
...
Also changed `DockerContainerId` to `DockerContainerID`, and updated the agent
API docs to reflect their support for Docker checks.
2015-11-18 07:40:02 -08:00
James Phillips
049da2cef2
Breaks up huge HTTP endpoint functions.
2015-11-17 09:16:04 -08:00
James Phillips
cd6be4a88d
Avoids taking the length again when parsing DNS queries.
2015-11-17 08:40:47 -08:00