Commit Graph

1209 Commits

Author SHA1 Message Date
James Phillips 9768b2ea2f
Builds static assets to pick up #2456. 2016-10-31 18:20:36 -07:00
Kyle Havlovitz 10c5f11315 Retry periodically for 60s if syslog setup fails (#2455) 2016-10-31 17:24:00 -07:00
Kyle Havlovitz 440611f9f7 Add snapshot inspect subcommand (#2451) 2016-10-31 19:37:27 -04:00
Kyle Havlovitz d5ee327fea More flaky unit test fixes (#2449)
* More flaky unit test fixes
* Raise some test timeouts that were too low
2016-10-31 09:59:20 -07:00
Kyle Havlovitz efb8f84922 Added tests for lookups on the 'addr.consul' domain 2016-10-27 21:04:06 -07:00
Kyle Havlovitz 9069deb792 Add a service address SRV lookup test for IPv6 2016-10-27 21:04:06 -07:00
Kyle Havlovitz 5888b4f7bf Fix test cases 2016-10-27 21:04:06 -07:00
Kyle Havlovitz b72bccc1c4 Give the service address in SRV lookup when it differs from the node's 2016-10-27 21:04:06 -07:00
Kyle Havlovitz de308e75e1 Resolve Consul CNAME records on external services (#2444) 2016-10-26 19:23:51 -07:00
James Phillips bc29610124 Adds support for snapshots and restores. (#2396)
* Updates Raft library to get new snapshot/restore API.

* Basic backup and restore working, but need some cleanup.

* Breaks out a snapshot module and adds a SHA256 integrity check.

* Adds snapshot ACL and fills in some missing comments.

* Require a consistent read for snapshots.

* Make sure snapshot works if ACLs aren't enabled.

* Adds a bit of package documentation.

* Returns an empty response from restore to avoid EOF errors.

* Adds API client support for snapshots.

* Makes internal file names match on-disk file snapshots.

* Adds DC and token coverage for snapshot API test.

* Adds missing documentation.

* Adds a unit test for the snapshot client endpoint.

* Moves the connection pool out of the client for easier testing.

* Fixes an incidental issue in the prepared query unit test.

I realized I had two servers in bootstrap mode so this wasn't a good setup.

* Adds a half close to the TCP stream and fixes panic on error.

* Adds client and endpoint tests for snapshots.

* Moves the pool back into the snapshot RPC client.

* Adds a TLS test and fixes half-closes for TLS connections.

* Tweaks some comments.

* Adds a low-level snapshot test.

This is independent of Consul so we can pull this out into a library
later if we want to.

* Cleans up snapshot and archive and completes archive tests.

* Sends a clear error for snapshot operations in dev mode.

Snapshots require the Raft snapshots to be readable, which isn't supported
in dev mode. Send a clear error instead of a deep-down Raft one.

* Adds docs for the snapshot endpoint.

* Adds a stale mode and index feedback for snapshot saves.

This gives folks a way to extract data even if the cluster has no
leader.

* Changes the internal format of a snapshot from zip to tgz.

* Pulls in Raft fix to cancel inflight before a restore.

* Pulls in new Raft restore interface.

* Adds metadata to snapshot saves and a verify function.

* Adds basic save and restore snapshot CLI commands.

* Gets rid of tarball extensions and adds restore message.

* Fixes an incidental bad link in the KV docs.

* Adds documentation for the snapshot CLI commands.

* Scuttle any request body when a snapshot is saved.

* Fixes archive unit test error message check.

* Allows for nil output writers in snapshot RPC handlers.

* Renames hash list Decode to DecodeAndVerify.

* Closes the client connection for snapshot ops.

* Lowers timeout for restore ops.

* Updates Raft vendor to get new Restore signature and integrates with Consul.

* Bounces the leader's internal state when we do a restore.
2016-10-25 19:20:24 -07:00
Kyle Havlovitz 107f4ff878 Agent anti-entropy test fixes 2016-10-25 17:48:11 -07:00
Kyle Havlovitz 61311cff80 Test fixes (#2434)
* Test fixes in health_endpoint_test.go, agent_endpoint_test.go and rtt_test.go
* Don't reuse the same agent config in TestAgent_ReconnectConfigSettings
2016-10-25 13:46:54 -07:00
James Phillips dace771f06 Merge pull request #2389 from hashicorp/jbs-2019
Lower Service tag DNS warning to DEBUG for #2019
2016-10-24 17:05:02 -07:00
James Phillips 377ce12e53
Removes reap config option. 2016-10-06 21:45:18 -07:00
Brian Shumate 36e1a194c2
Lower Service tag DNS warning to DEBUG for #2019 2016-10-05 08:45:01 -04:00
Adam Wolfe Gordon ae5bd0f2cc agent: Stop reaping child processes (resolves #1988)
The consul docker image now uses dumb-init to reap child processes, so
there's no need to reap them ourselves.
2016-10-04 09:36:41 -06:00
Seth Vargo 74e35b1f48
Fix kv put flags 2016-09-26 16:13:39 -07:00
Seth Vargo 90f4953b47
Fix up kv put help output 2016-09-26 16:11:23 -07:00
Seth Vargo 8ac6877f20
Remove debugging code 2016-09-26 16:09:35 -07:00
Seth Vargo 70fd7efde9
Fix CAS operations for put 2016-09-26 16:06:56 -07:00
Seth Vargo 46f4093f14
Change delete CAS behavior to require ModifyIndex 2016-09-26 16:06:55 -07:00
Seth Vargo 738f12329a
Fix copy-paste comments 2016-09-26 16:06:54 -07:00
Seth Vargo ce5c820c4a
Add kv delete command 2016-09-26 16:06:53 -07:00
Seth Vargo d5dd8ef7a1
Add kv put command 2016-09-26 16:06:53 -07:00
Seth Vargo a8dc0f86b6
Add kv get 2016-09-26 16:06:53 -07:00
Seth Vargo cd8ac28a87
Add kv command stubs 2016-09-26 16:06:53 -07:00
Seth Vargo ec16f75124
Add test function for returning an API client 2016-09-26 16:06:52 -07:00
James Phillips 5eb4c94bde
Runs go-fmt (incidental to this PR). 2016-09-23 17:44:14 -07:00
James Phillips 36db92932a
Makes string search for Windows case-insensitive.
Fixes #2356.
2016-09-23 17:43:40 -07:00
James Phillips a477481ad3 Merge pull request #2353 from hashicorp/b-local-panic
Cleans up state management for remote deletes from local state.
2016-09-22 12:56:08 -07:00
James Phillips 6f1050a181
Calls remove on checks and services in the local test. 2016-09-22 11:41:17 -07:00
James Phillips 434233a131
Cleans up state management for remote deletes from local state.
Fixes #2125.
2016-09-21 16:52:43 -07:00
James Phillips 41b0115ee6 Merge pull request #2262 from WIZARD-CXY/master
Fixes go race bug in startup log buffering.
2016-09-20 17:24:52 -07:00
Felix f9e001cb6e return an error if no logOutput is provided
Otherwise the code will panic at a later stage where it is more complicated to figure out what’s actually going on.
2016-09-17 17:46:13 +09:00
James Phillips aed72ccc60 Merge pull request #2263 from sweeneyb/dnsPort
Add support for dns port as a command line option
2016-09-01 22:16:15 -07:00
James Phillips 4819cf3a52
Does some go fmt cleanup. 2016-09-01 22:14:19 -07:00
James Phillips 1924eccf71 Merge pull request #2322 from hashicorp/pr-2321-slackpad
Adds a configurable timeout for DNS recursor client.
2016-09-01 22:11:54 -07:00
James Phillips 314bd1363c
Adds a recursor timeout line to the merge test. 2016-09-01 21:53:33 -07:00
James Phillips 3f3bb444fa
Fixes a typo in a test error message. 2016-09-01 21:52:29 -07:00
Pivotal DX129 2682410059 Merge remote-tracking branch 'upstream/master' 2016-09-01 10:15:32 -04:00
James Phillips d419a0ae0d
Changes default for `leave_on_terminate` based on server or client mode. 2016-08-31 23:39:11 -07:00
James Phillips 5e4db081f7
Removes Raft types from public API interface.
This will cause a lot of breakage because we've currently vendored a
branch of the Raft library.
2016-08-30 14:59:16 -07:00
James Phillips 3304352272
Changes default DNS allow_stale to true. 2016-08-30 13:55:19 -07:00
James Phillips 6be1e07fec
Makes the Raft configuration API easier to consume. 2016-08-30 11:30:56 -07:00
James Phillips 1b7a16b7d3
Adds new consul operator endpoint, CLI, and ACL and some basic Raft commands. 2016-08-30 00:02:50 -07:00
Pivotal DX129 6acb742c08 Fixed code formatting 2016-08-29 17:29:23 -04:00
Pierre Delagrave b97500234d Made the dns recursor timeout test more reliable 2016-08-29 13:23:14 -04:00
Pierre Delagrave 3d5c2609e7 Renamed dns config parameter internal_client_timeout for recursor_timeout 2016-08-26 15:22:04 -04:00
Pierre Delagrave 0895e48106 Merge remote-tracking branch 'pierre/master' 2016-08-26 15:12:38 -04:00
James Phillips 6f030a1167
Tweaks formatting of Consul version. 2016-08-25 17:12:55 -07:00
James Phillips 5df4fffd09 Merge pull request #2303 from hashicorp/f-tunes
Adds performance tuning capability for Raft, detuned defaults, and supplemental docs.
2016-08-25 15:45:49 -07:00
James Phillips 2f4c237cff
Adds a max raft multiplier and tweaks documentation. 2016-08-25 15:36:05 -07:00
James Phillips 5df36fbd82
Stops scaling the commit timeout. 2016-08-25 15:05:40 -07:00
James Phillips 40f3470696
Redacts the Circonus API token from stats JSON. 2016-08-24 23:27:25 -07:00
James Phillips b339b0d2fc
Adds performance tuning capability for Raft, detuned defaults, and supplemental docs. 2016-08-24 21:58:37 -07:00
Pierre Delagrave 17b6a18c37 Added a configurable timeout to the client making DNS queries to downstream name servers 2016-08-23 16:59:38 -04:00
James Phillips 2aeaf35c41
Removed bad error message for health check status. 2016-08-17 17:54:09 -07:00
James Phillips 0bdbdf1ba8 Merge pull request #2226 from abhinavdahiya/rm-health-unknown
Fixes #1775; Removes 'unknown' state
2016-08-17 17:51:04 -07:00
James Phillips 5f5e0b3e76
Makes protocol version a little clearer. 2016-08-17 11:29:09 -07:00
James Phillips db9a72dde1
Merge branch 'master' into f-deregister-critical 2016-08-16 12:53:21 -07:00
James Phillips 607595f99e
Cleans up based on code review feedback. 2016-08-16 12:52:30 -07:00
James Phillips bc333335be
Adds an `X-Consul-Translate-Addresses` to signal translation is enabled. 2016-08-16 11:31:41 -07:00
James Phillips 817d7e93e4
Adds an "lan" tagged address so we have a way to get them all.
If we didn't have this, then there would be no way to know the LAN
address if address translation was turned on.
2016-08-16 10:49:03 -07:00
James Phillips b4f981c837
Adds ability to deregister a service based on critical check state longer than a timeout. 2016-08-16 01:00:26 -07:00
James Phillips 12e6db464b
Tweaks the WAN address translation unit tests. 2016-08-15 15:34:11 -07:00
James Phillips c066c2e70a
Factors translate out into a separate file and makes safe for in-memory RPCs. 2016-08-15 15:05:02 -07:00
Xingyu Chen 07d141570c Update gated_writer.go 2016-08-14 16:36:21 +08:00
David van Geest 360e196c93
Translate Address to tagged WAN address in HTTP API when appropriate. 2016-08-12 18:25:36 -07:00
James Phillips 8e8f840169
Updates built-in UI static assets to latest. 2016-08-12 18:01:59 -07:00
James Phillips 4915790bdc
Runs `go fmt`. 2016-08-12 17:26:23 -07:00
James Phillips 6c4a8d8383
Tweaks DNS prepared query failover unit test. 2016-08-12 17:16:08 -07:00
Max Timchenko 90f49354d6
Corrects two issues with DNS prepared query failover
When DNS prepared query fails over to another datacenter and the datacenter
returns some nodes, the DNS result does not translate WAN addresses even when
translation is enabled for SRV and A queries, and returns the wrong datacenter
(the one that failed over) for SRV queries.
2016-08-12 17:06:43 -07:00
James Phillips a379078e3e Merge pull request #2267 from hashicorp/b-srv-trim
Fixes bug when trimming DNS SRV records.
2016-08-12 14:57:20 -07:00
James Phillips a666dc44b3
Passes the index by reference so we can control the allocation. 2016-08-12 14:51:50 -07:00
James Phillips de95fe8638
Makes name compares case-insensitive. 2016-08-12 12:16:21 -07:00
R.B. Boyer 291a468c87
Validate gossip encryption key before made persistent in local.keyring 2016-08-12 11:42:45 -07:00
James Phillips 45e2879eb5
Avoids allocations and function calls if no extra data is present. 2016-08-12 10:29:57 -07:00
James Phillips e05c77b9bf
Renames "seen" to "resolved". 2016-08-11 22:01:57 -07:00
James Phillips 6c22c48326
Fixes the DNS SRV trim bug. 2016-08-11 21:46:14 -07:00
James Phillips 086a5af5ff
Finishes up DNS compression by adding opt-out, tests, and documentation. Fixes trim routine. 2016-08-11 16:27:08 -07:00
epipho f31f1c04e9
Fix panic where r.Compress would be set before checking for errors. 2016-08-11 16:27:08 -07:00
epipho 6d17b4eb67
Compress all DNS responses to prevent them from going over the 512 byte
limit from RFC 1035
2016-08-11 16:27:08 -07:00
James Phillips f471c6e2ad Merge pull request #2264 from hashicorp/pr-2045-slackpad
Enables stale mode for watchers.
2016-08-10 15:58:34 -07:00
James Phillips 32cf81e59c
Fixes a typo and adds stale documentation to website. 2016-08-10 15:46:28 -07:00
sweeneyb e8117ba622 Add support for dns port as a command line option 2016-08-10 04:05:56 +00:00
chenxingyu 53009f2466 fix go race bug 2016-08-10 10:44:20 +08:00
James Phillips b566c094bb
Updates bindata after vendor update. 2016-08-09 19:03:10 -07:00
James Phillips f00e49112a
Installs a wrapper around HTTP endpoints that generate metrics. 2016-08-09 15:41:15 -07:00
James Phillips 3585b5a4cb Merge pull request #2237 from hashicorp/f-acl-replication
Adds ACL replication.
2016-08-09 11:42:16 -07:00
James Phillips 2acb287690
Fixes JS exception when there are no coordinates present. 2016-08-08 17:38:22 -07:00
James Phillips 4a931ae12e
Adds an ACL replication status endpoint. 2016-08-04 23:30:16 -07:00
James Phillips c4ae68010b
Hides the acl_replication_token from JSON output, like in /v1/agent/self. 2016-08-03 21:24:09 -07:00
James Phillips 9cece515c0
Adds basic ACL replication plumbing. 2016-08-03 21:24:04 -07:00
Cameron Davison 40d1c279dd
atomic write service state and checks files, fixes #1221 2016-08-03 10:34:12 -05:00
Hasyimi Bahrudin b2ad8114fe Remove redundant hardcoded environment variables
The following hardcoded environment variables are removed:

* CONSUL_RPC_ADDR
* CONSUL_HTTP_ADDR
2016-08-03 14:40:26 +08:00
Abhinav Dahiya 9dc52449e3 Fixes #1775; Removes 'unknown' state
Signed-off-by: Abhinav Dahiya <abhinavdtu2012@gmail.com>
2016-07-30 19:33:14 +05:30
James Phillips 72208b6929 Merge pull request #2207 from grange74/leave-command-args-check
add extra check for unexpected args to leave command
2016-07-23 14:52:13 -07:00
nick.grange 63ec2dd465 add extra check for unexpected args to leave command 2016-07-24 00:36:59 +10:00
James Phillips 5d83d507b4 Adds consul info data into /v1/agent/self endpoint. 2016-07-20 15:12:26 -07:00
James Phillips 4a7b55c8cb Fixes startup version print to show the human version. 2016-07-20 08:09:05 -07:00