Alex Dadgar
7f6d95f1c9
Hash host ID so its stable and well distributed
...
This PR takes the host ID and runs it through a hash so that it is well
distributed. This makes it so that machines that report similar host IDs
are easily distinguished.
Instances of similar IDs occur on EC2 where the ID is prefixed and on
motherboards created in the same batch.
2017-04-10 11:57:24 -07:00
James Phillips
86870ae51d
Merge pull request #2854 from hashicorp/remote-exec
...
Changes `disable_remote_exec` default to true so remote exec is opt-in.
2017-03-30 10:29:09 -07:00
Kyle Havlovitz
da9c825592
Add CLI/API endpoints for removing peer by ID
2017-03-30 10:13:32 -07:00
James Phillips
7e2dcb61bf
Changes `disable_remote_exec` default to true so remote exec is opt-in.
2017-03-30 09:43:32 -07:00
James Phillips
11ee9a9e72
Disables agent-level enforcement on Consul agents unless acl_datacenter is set.
2017-03-29 12:24:42 -07:00
vaLentin chernoZemski
1e5163d241
Supress signal logging on SIGPIPE. Should address #2768
...
When consul-template is communicating with consul and the job is done, consul thread receives SIGPIPE.
This cause the logs to be filled "Caught signal: broken pipe" and they does not bring any usefull info with them.
Skipping those.
2017-03-29 09:46:58 +03:00
James Phillips
59a599a14b
Cleans up a stray mark and fixes unit tests.
...
Ended up removing the leader_test.go server address change test as part
of this. The join was failing becase we were using a new node name with
the new logic here, but realized this was hitting some of the memberlist
conflict logic and not working as we expected. We need some additional
work to fully support address changes, so removed the test for now.
2017-03-27 01:28:54 -07:00
James Phillips
7ce7d157da
Fixes up some broken unit tests.
2017-03-24 17:35:07 -07:00
James Phillips
8940d1c3fe
Keeps the service and check tokens around for deregistration.
...
We fixed a few related issues while we were in here. We now only let
services register checks with a matching token, and we also close out
service and check delete operations if the catalog deregister claims
it doesn't know about the ID of the service or check being deleted.
2017-03-24 17:15:20 -07:00
James Phillips
4d3f3ea8d2
Changes verson 8 ACLs to opt-out.
2017-03-24 12:12:24 -07:00
Seth Vargo
0170a28ec9
Use new APIs
2017-03-23 18:48:13 -04:00
Seth Vargo
4622ac634b
Re-add RPC parsing
...
This makes the upgrade path a bit nicer, since people will likely have
older configurations. This prints out a warning instead of just failing
if the old rpc addr or ports definition is in the config.
2017-03-23 17:10:14 -04:00
James Phillips
00a5fc2947
Renames some operator unit tests.
2017-03-22 19:26:43 -07:00
Kyle Havlovitz
390f41d8d5
Add advanced autopilot features
2017-03-22 15:25:16 -07:00
James Phillips
3b3cb0d07b
Merge pull request #2801 from hashicorp/spoken-hub-oss
...
Adds support for WAN soft fail and join flooding.
2017-03-20 16:24:07 -07:00
James Phillips
2696dd52b8
Updates to latest built-in static assets.
2017-03-20 10:18:47 -07:00
James Phillips
1091c7314e
Removes remoteConsuls in favor of the new router.
...
This has the next wave of RTT integration with the router and also
factors some common RTT-related helpers out to lib. While we were
in here we also got rid of the coordinate disable config so we don't
need to deal with the complexity in the router (there was never a
user-visible way to disable coordinates).
2017-03-16 16:42:19 -07:00
Kyle Havlovitz
09e2663d10
Merge pull request #2802 from hashicorp/f-autopilot-improvements
...
Fix an issue with changing server ID when re-joining
2017-03-15 20:26:16 -07:00
Kyle Havlovitz
5353221666
Reorganized cluster health check loop and logic
2017-03-15 18:27:17 -07:00
Kyle Havlovitz
51b11cd344
Fix an issue with changing server IDs and add a few UX enhancements around autopilot features
2017-03-15 16:09:55 -07:00
James Phillips
26dddb428c
Forces user-supplied node IDs to lower case for consistency.
2017-03-13 19:51:56 -07:00
Kyle Havlovitz
9b4497de09
Cleaned up and reorganized some autopilot-related code
2017-03-09 18:21:40 -08:00
Kyle Havlovitz
c3d638e2c5
Move RaftStats to Status endpoint
2017-03-07 13:58:06 -08:00
Kyle Havlovitz
fb259e3d04
Merge branch 'master' into f-autopilot-2
2017-03-06 16:02:19 -08:00
Kyle Havlovitz
2eefe3ca5b
Add autopilot server health tracking
...
This adds two goroutines to perform autopilot tasks on the leader - one
to monitor the health of servers and another to periodically clean up
dead servers with a limit on removal count. Also adds a new http endpoint,
`/v1/operator/autopilot/health`, for querying this information through an
operator RPC endpoint.
2017-03-06 16:00:10 -08:00
Sean Chittenden
a791de3ecf
Revert "Change `ClientAddr` to default to `BindAddr` when not present."
2017-03-06 13:32:43 -08:00
Sean Chittenden
beae5c6bba
Change `ClientAddr` to default to `BindAddr` when not present.
...
With this change, it is now possible to only specify the `-bind` or
`bind_addr` attributes and get a functioning consul agent.
2017-03-04 20:52:52 -08:00
James Phillips
3103f7f673
Merge pull request #2690 from zeroae/f-simple-rfc2782
...
RFC 2782 support with optional .service tag
2017-03-02 14:49:36 -08:00
Kyle Havlovitz
ab6c49ab4c
Merge pull request #2771 from hashicorp/f-autopilot
...
Autopilot dead server cleanup, config, and raft version compatibility
2017-02-28 15:04:16 -08:00
Kyle Havlovitz
5f125324db
Merge pull request #2774 from hashicorp/f-cli-deprecation-docs
...
Add CLI RPC deprecation section to docs
2017-02-28 14:59:48 -08:00
Kyle Havlovitz
92c8b9c3a0
Rename DeadServerCleanup and make wording adjustments
2017-02-28 14:45:21 -08:00
Kyle Havlovitz
9221aed856
Remove the RPC client interface and update docs
2017-02-28 13:41:09 -08:00
Sean Chittenden
cbbbf5ee39
Follow the lead in 6fc901a8f3
and set the default `DisplayName` to `Consul`
2017-02-26 12:26:14 -08:00
Kyle Havlovitz
211995bc3c
Convert agent command to use base.Command
2017-02-24 18:11:05 -08:00
Kyle Havlovitz
c2e7f45002
Add CAS capability to autopilot config endpoint
2017-02-24 13:08:49 -08:00
Kyle Havlovitz
81c7a0299e
Add state store table and endpoints for autopilot
2017-02-23 20:32:13 -08:00
Kyle Havlovitz
950a9d2212
Move raft_protocol out of autopilot config
2017-02-23 13:08:40 -08:00
Kyle Havlovitz
b20fd222f6
Add raft version 2/3 compatibility
2017-02-22 12:53:32 -08:00
Jeff Mitchell
73035f9ef8
Update TestHTTPServer_UnixSocket with DialContext
2017-02-10 21:29:42 -05:00
Kyle Havlovitz
c9abafab92
Update docs and give better error for unknown client scheme
2017-02-10 19:55:54 -05:00
Kyle Havlovitz
9e23dabbfa
Allow internal watches to use https and unix sockets
2017-02-10 18:38:39 -05:00
Kyle Havlovitz
abdf1fbab3
Convert keyring command to use base.Command
2017-02-08 18:25:47 -05:00
Kyle Havlovitz
5d888f5303
Added -relay-factor param to keyring operations
2017-02-01 21:53:29 -05:00
Kyle Havlovitz
a533e255ab
Merge pull request #2699 from hashicorp/f-tls-min-version
...
Add TLSMinVersion to config options
2017-02-01 16:31:53 -05:00
Kyle Havlovitz
07ba3ddb6e
Add TLSMinVersion to config options
2017-02-01 16:20:33 -05:00
Sean Chittenden
fd2ae702c9
Re-cherry-pick 71d807f607
and e2320d69b6
.
2017-02-01 10:27:04 -08:00
James Phillips
e9cc66ab51
Fixes issue with missing CNAME for services with non-IP addresses set in SRV responses.
2017-01-31 20:57:50 -08:00
Patrick Sodré
c135c08fb2
Simple RFC 2782 support with optional .service tag
...
Add support for SRV queries of names matching:
_<service>._<protocol>.[.service][.datacenter]<.domain>
2017-01-30 19:46:02 -05:00
James Phillips
f0f52bd5f6
Redacts AWS join credientials from /v1/agent/self output.
2017-01-25 21:01:07 -08:00
James Phillips
eaa8fde298
Updates a comment to point to new blockingQuery function.
2017-01-25 09:58:22 -08:00
James Phillips
4c1a156417
Pulls in latest static asset updates.
2017-01-25 09:57:56 -08:00
Kyle Havlovitz
bbfd25b530
Fix test import
2017-01-23 21:34:01 -05:00
Kyle Havlovitz
a55968f009
Merge branch 'master' into f-prepared-query-nodemeta
2017-01-23 20:17:48 -05:00
Kyle Havlovitz
3f3d7f9891
Add tests for node meta in prepared queries and update docs
2017-01-23 19:17:30 -05:00
James Phillips
6ca0173907
Adds catalog support for node IDs.
2017-01-18 14:26:42 -08:00
James Phillips
e719ff8ef1
Adds a test to make sure we get the same ID on the second run.
2017-01-18 09:52:34 -08:00
James Phillips
bd605e330c
Adds basic support for node IDs.
2017-01-17 22:47:59 -08:00
James Phillips
8d57727ff0
Merge pull request #2639 from tanuck/master
...
Standardize the case of all check log messages
2017-01-17 09:07:45 -08:00
James Phillips
25fb498b20
Merge pull request #2578 from ybubnov/concurrent-safe-notification-mock
...
Concurrent-safe notification mock
2017-01-17 09:01:43 -08:00
Kyle Havlovitz
5acd69b4fc
Add node metadata filtering to remaining health/catalog endpoints
2017-01-13 20:08:43 -05:00
Kyle Havlovitz
fb68a6bab0
Style tweaks and vendor.json cleanup
2017-01-12 16:49:44 -05:00
Kyle Havlovitz
5ddea8a5df
Merge branch 'master' into f-gce-discovery
2017-01-11 22:57:07 -05:00
Kyle Havlovitz
dbc72eaac0
Condense gce discovery logging a bit
2017-01-11 22:37:22 -05:00
Kyle Havlovitz
23ce10f889
Merge pull request #2643 from hashicorp/f-node-metadata
...
Node metadata
2017-01-11 20:29:24 -05:00
Kyle Havlovitz
7f91cd12f4
Add -node-meta to agent command line options
2017-01-11 16:09:04 -05:00
Kyle Havlovitz
c9e430c396
Validate metadata config earlier and handle multiple filters
2017-01-11 15:12:03 -05:00
Andrew Glen-Young
01de3b3cb9
Pedantic typo fix
2017-01-10 15:44:32 -05:00
Kyle Havlovitz
03273e4ed2
Fix formatting
2017-01-09 13:49:33 -08:00
Kyle Havlovitz
84504a20fc
Add meta key validations and more tests
2017-01-09 11:21:49 -08:00
Kyle Havlovitz
e44bcb9716
Add tests for node metadata functionality
2017-01-05 17:21:56 -08:00
Kyle Havlovitz
52d6fd831e
Add support for setting node metadata fields
2017-01-05 14:10:26 -08:00
James Tancock
5151c64f54
Standardize the case of all check log messages
2017-01-05 08:34:20 +00:00
Kyle Havlovitz
8494b06ce0
Don't error if the given data-dir doesn't exist
2016-12-15 12:55:21 -05:00
James Phillips
d6dc6a1fcc
Adds exception for data-dir check in -dev mode.
...
This was changed in #2529 .
2016-12-14 22:11:16 -08:00
James Phillips
2f9c05a75b
Updates web assets to match latest.
2016-12-14 21:08:17 -08:00
James Phillips
a67d308175
Merge pull request #2594 from hashicorp/acl-complete
...
Adds complete ACL support for /v1/agent endpoints.
2016-12-14 20:49:00 -08:00
James Phillips
ededf330ba
Adds complete ACL support for listing events.
2016-12-14 19:42:37 -08:00
James Phillips
babb0a1235
Adds remaining unit tests for agent ACL vet and filter functions.
2016-12-14 19:28:09 -08:00
James Phillips
171ec6e487
Fixes a race in the monitor endpoint test that would cause panics.
2016-12-14 18:13:30 -08:00
Kyle Havlovitz
cb96aa8eb3
Merge pull request #2529 from mckennajones/bug/1838
...
Give a better error message when data-dir is not a directory
2016-12-14 20:21:10 -05:00
Kyle Havlovitz
daa5ba87d4
Handle error from stat on data-dir and shorten error message
2016-12-14 20:06:00 -05:00
James Phillips
4ffd824547
Adds a leader wait when testing with ACLs.
2016-12-14 16:18:17 -08:00
James Phillips
03f40116f4
Adds complete ACL coverage for non-utility agent endpoints.
...
This is a checkpoint - we need to complete some unit tests for agent/acl.go.
2016-12-14 14:53:40 -08:00
Kyle Havlovitz
7fbac3ffad
Merge pull request #2553 from mckennajones/bug/ignoresigpipe
...
Ignore sigpipe signals
2016-12-14 15:36:26 -05:00
Kyle Havlovitz
7f5f1fed81
Add a notice about deprecation of atlas features
2016-12-14 15:13:51 -05:00
James Phillips
01b6766099
Adds complete ACL support for agent utility endpoints.
2016-12-14 11:12:55 -08:00
James Phillips
ca7a243b70
Adds ACL management support to the agent.
2016-12-14 07:07:41 -08:00
James Phillips
34da7ccd64
Adds a unit test to make sure the status endpoint doesn't ever show anything
...
with "token" in the name.
2016-12-14 07:07:41 -08:00
James Phillips
8b67991ef7
Adds complete ACL coverage for /v1/session endpoints.
2016-12-12 21:59:22 -08:00
James Phillips
bcf1ffad99
Adds complete ACL coverage for /v1/coordinate/nodes and Coordinate.Update RPC.
2016-12-12 14:52:27 -08:00
James Phillips
0139bbb963
Adds support for a new "acl_agent_token" which is used for internal
...
catalog operations.
2016-12-12 14:52:27 -08:00
James Phillips
0ed6b1bb18
Bans anonymous queries that aren't tied to a session.
...
This gets us coverage of PQ creation under the existing service
policy or the soon-to-be-added session policy.
2016-12-12 14:52:27 -08:00
James Phillips
66b437ca33
Removes the exception for the "consul" service in the catalog.
2016-12-07 17:58:23 -08:00
Yakau Bubnou
e52fd6e0af
Concurrent-safe notification mock
...
This patch provides additional attribute to the notification mock in
order to protect an access to the internal maps from multiple
go-routines. This is required to prevent panic errors caused by
inconsistent map state.
2016-12-07 19:31:44 +03:00
Chris Marchesi
6500d1afaa
command/agent: Google Compute Engine host discovery
...
This commit adds several command-line and config options that facilitate
host discovery through Google Compute Engine (GCE), much like the
recently added EC2 host discovery options. This should assist with
bootstrapping and joining servers within GCE when non-static addresses
are used, such as when using managed instance groups.
Documentation has also been added. It should be noted that if running
from within a GCE instance, the only option that should be necessary is
-retry-join-gce-tag-value.
2016-12-06 17:46:40 -08:00
James Phillips
8ae9e17dff
Adds an opt-in for new ACL policies and features coming in Consul 0.8.
2016-12-06 11:06:14 -08:00
Sean Chittenden
830125a8b3
Run all known addresses through go-sockaddr/template.
...
The following is now possible:
```
$ consul agent -dev -client="{{GetPrivateIP}}" -bind='{{GetInterfaceIP "en0"}}'
```
2016-12-02 16:35:38 +11:00
Kyle Havlovitz
ead30ca62b
Fix race issue in monitor endpoint test
2016-12-01 13:40:00 -05:00
James Phillips
c07bdb173b
Merge pull request #2555 from hashicorp/pr-2497-slackpad
...
Updates Circonus library and adds support for custom display name and tags.
2016-11-30 21:42:01 -08:00
Kyle Havlovitz
bd69c6d871
Add reload/leave http endpoints ( #2516 )
2016-11-30 13:29:42 -05:00
mckennajones
8b3ab100ef
ignore sigpipe signals to fix journalctl issue #2404
2016-11-30 09:42:10 -08:00
Seth Vargo
4179aacf11
Add an API method for determining the best status
...
Given a list of HealthChecks, this determines the "best" status for the
collective group. This is useful for nodes and services, which may have
multiple checks associated with them.
2016-11-29 18:41:46 -05:00
Kyle Havlovitz
338e36cc5d
Add logWriter to agent Create() method
2016-11-28 18:36:26 -05:00
Kyle Havlovitz
124f907063
Add monitor http endpoint
2016-11-28 18:36:26 -05:00
James Phillips
dd31e47eef
Updates static assets to pick up #2340 and and #2525 .
2016-11-22 17:47:50 -08:00
Kyle Havlovitz
6bd65c668b
Combine keyring endpoints into one
2016-11-22 20:10:43 -05:00
Kyle Havlovitz
dd3368c19e
Add keyring http endpoints
2016-11-22 20:10:43 -05:00
mckennajones
8daa45c5b4
check if data-dir is actually a directory
2016-11-22 13:33:51 -08:00
James Phillips
fa680bded7
Defaults to pretty JSON in dev mode.
2016-11-17 22:31:19 -08:00
James Phillips
c744792fc4
Merge pull request #2238 from hasyimibhar/master
...
Remove duplicated environment variables
2016-11-17 16:18:02 -08:00
James Phillips
16f8e04bfe
Revert "Updates Circonus metrics library and adds support for display name and tags."
...
This reverts commit bd490ec937
from #2491 .
2016-11-09 16:21:02 -08:00
Kyle Havlovitz
92ce2c9e39
Use uuids in persist temp files to avoid race ( #2494 )
2016-11-09 15:22:53 -08:00
Kyle Havlovitz
b1760b223e
Improve logging when deregistering a nonexistent service ( #2492 )
...
Log a warning instead of a success message when attempting to deregister a nonexistent service. In Consul 0.8 this can be changed to giving an error outright, but for now we can keep the idempotent delete behavior.
2016-11-09 16:56:54 -05:00
matt maier
bd490ec937
Updates Circonus metrics library and adds support for display name and tags.
...
* Update circonus-gometrics
`vendor circonus-labs/circonus-gometrics`
`vendor circonus-labs/circonus-gometrics/api`
`vendor circonus-labs/circonus-gometrics/checkmgr`
`vendor circonus-labs/circonusllhist`
`vendor hashicorp/go-retryablehttp`
* Update Circonus integration expose Check Display Name and Check Tags configuration options.
* Adds version info to docs for new Circonus options.
2016-11-09 13:26:43 -08:00
matt maier
91a8b43d5a
Update Circonus integration expose Check Display Name and Check Tags configuration options.
2016-11-09 15:33:37 -05:00
James Phillips
2f341738a1
Removes stale reference to reap lock which causes a panic. ( #2490 )
2016-11-09 09:52:07 -08:00
James Phillips
bc47511d26
Runs the static asset packaging inside the container; updates assets.
2016-11-08 15:14:08 -08:00
James Phillips
8af20ff1a5
Updates embedded static assets.
2016-11-08 14:22:39 -08:00
Kyle Havlovitz
8e621eb9c8
Set MaxStale default to 10 years and add a stale counter ( #2481 )
...
Default MaxStale to 10 years and add a counter at `consul.dns.stale_queries` that tracks when an agent serves a query that's stale by at least 5 seconds. Previously, MaxStale defaulted to 5 seconds and DNS would become unavailable after a short period of time with no leader. This new default allows DNS requests to still be served in the event of a long outage.
Fixes #2460 .
2016-11-08 14:45:12 -05:00
Brian Hays
1c01b10c87
Lowercase ACL Datacenter ( #2478 )
...
* Lowercase ACL Datacenter
* move lowercasing of ACLDatacenter to command.go and add validation
* Tweaks error message about bad ACL datacenter.
2016-11-07 18:41:23 -08:00
Kyle Havlovitz
83d2f36b54
Merge pull request #2480 from hashicorp/b-atomic-writes
...
Atomic writes for persisting service/check state
2016-11-07 15:36:35 -05:00
Kyle Havlovitz
7a3e0f8275
Add a note about not calling sync for persistCheckState
2016-11-07 15:24:31 -05:00
Kyle Havlovitz
e30b289c6f
Call fsync() for saving check/service state
2016-11-07 13:51:03 -05:00
Kyle Havlovitz
e665ec87aa
Add WaitForResult to some flaky tests ( #2477 )
...
This replaces some hard sleeps with testutil.WaitForResult retry
logic in some recently added tests around TLSSkipVerify in checks.
2016-11-04 21:55:55 -07:00
James Phillips
925c46f725
Moves logger setup into its own package. ( #2471 )
...
* Moves logger setup into its own package.
* Removes a stray regex mark in the test locator.
2016-11-03 21:14:56 -07:00
Kyle McCullough
73b281a27c
Add setting to skip ssl certificate verification for HTTP checks ( #1984 )
...
* http check: add setting to skip ssl certificate verification
* update http check documentation
* fix typo in documentation
* Add TLSSkipVerify to agent api
2016-11-03 13:17:30 -07:00
James Phillips
233a3a101b
Supports WAN and LAN Serf Bind Addresses. ( #2468 )
...
* * adding cli config and config file support for specifying the serf wan and lan bind addresses
* updating documentation for serf wan and lan options
Fixes #2007
* Cleans up some small things from #2380 .
* Uses the bind default for the agent test for Serf WAN and LAN.
2016-11-03 12:58:58 -07:00
James Phillips
c06a107638
Removes unnecessary clause in unit test check.
2016-11-03 12:26:48 -07:00
James Phillips
7b98ae921e
Adds support for DNS recurse truncation. ( #2467 )
...
* Return message from recurse even if truncated
Signed-off-by: Evan Farrar <efarrar@pivotal.io>
* Tweaks unit test.
2016-11-03 12:21:16 -07:00
Kyle Havlovitz
073798594d
Merge pull request #2459 from hashicorp/f-aws-autodiscovery
...
AWS -retry-join-ec2 option
2016-11-03 13:27:23 -04:00
Kyle Havlovitz
1de39d23d1
Small tweaks to docs and syntax
2016-11-03 13:04:42 -04:00
Kyle Havlovitz
1b204eb88d
Disallow -bootstrap-expect flag in dev mode ( #2464 )
2016-11-03 01:54:43 -04:00
James Phillips
e8caf76339
Builds static assets to pick up #2456 (redux).
...
Built this time using the same container that the dist build uses so
it won't see a difference and fail the build.
2016-11-02 15:54:53 -07:00
Kyle Havlovitz
f3efab5f84
Add support for ECS task roles as an auth mechanism
2016-11-02 18:48:15 -04:00
Kyle Havlovitz
d4d6e2b482
Move EC2 discovery logic into retryJoin for robustness
2016-11-02 14:35:37 -04:00
Kyle Havlovitz
468bf736b4
Support more forms of EC2 authentication
2016-11-01 21:24:18 -04:00
Kyle Havlovitz
9c75e69f65
Add testing around EC2 discovery config
2016-11-01 18:26:15 -04:00
Kyle Havlovitz
043e6891d6
Fixed up config structure for EC2 discovery
2016-11-01 17:58:51 -04:00
Kyle Havlovitz
c908121c72
Merge branch 'master' of github.com:hashicorp/consul into aws_autodiscovery
2016-11-01 11:19:52 -04:00
James Phillips
723f70ed31
Builds static assets to pick up #2456 .
2016-10-31 18:20:36 -07:00
Kyle Havlovitz
e1f8a41a35
Retry periodically for 60s if syslog setup fails ( #2455 )
2016-10-31 17:24:00 -07:00
Kyle Havlovitz
dce6702268
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
63534aca7e
Added tests for lookups on the 'addr.consul' domain
2016-10-27 21:04:06 -07:00
Kyle Havlovitz
84c87325ae
Add a service address SRV lookup test for IPv6
2016-10-27 21:04:06 -07:00
Kyle Havlovitz
f7ef84812d
Fix test cases
2016-10-27 21:04:06 -07:00
Kyle Havlovitz
2a26597769
Give the service address in SRV lookup when it differs from the node's
2016-10-27 21:04:06 -07:00
Kyle Havlovitz
554440ab1d
Resolve Consul CNAME records on external services ( #2444 )
2016-10-26 19:23:51 -07:00
James Phillips
c01a3871c9
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
e2d9114b34
Agent anti-entropy test fixes
2016-10-25 17:48:11 -07:00
Kyle Havlovitz
3add830b3a
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
03ae813bc7
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
95d418d7da
Removes reap config option.
2016-10-06 21:45:18 -07:00
Brian Shumate
74a8fbef06
Lower Service tag DNS warning to DEBUG for #2019
2016-10-05 08:45:01 -04:00
Adam Wolfe Gordon
5ac5a8ccfc
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
James Phillips
5f0835fae7
Runs go-fmt (incidental to this PR).
2016-09-23 17:44:14 -07:00
James Phillips
1f5ae4827e
Makes string search for Windows case-insensitive.
...
Fixes #2356 .
2016-09-23 17:43:40 -07:00
James Phillips
216c5c7786
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
c780149b5d
Calls remove on checks and services in the local test.
2016-09-22 11:41:17 -07:00
James Phillips
c8ce41f459
Cleans up state management for remote deletes from local state.
...
Fixes #2125 .
2016-09-21 16:52:43 -07:00
James Phillips
b0b05f48f3
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
f0eb0ba549
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
f686d34483
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
4b2eaeda17
Does some go fmt cleanup.
2016-09-01 22:14:19 -07:00
James Phillips
d19995c067
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
fce0052a70
Adds a recursor timeout line to the merge test.
2016-09-01 21:53:33 -07:00
James Phillips
da34496645
Fixes a typo in a test error message.
2016-09-01 21:52:29 -07:00
Pivotal DX129
fe61650ef0
Merge remote-tracking branch 'upstream/master'
2016-09-01 10:15:32 -04:00
James Phillips
55ef6c54a6
Changes default for `leave_on_terminate` based on server or client mode.
2016-08-31 23:39:11 -07:00
James Phillips
ed7356dd5c
Changes default DNS allow_stale to true.
2016-08-30 13:55:19 -07:00
James Phillips
3c9188c38b
Makes the Raft configuration API easier to consume.
2016-08-30 11:30:56 -07:00
James Phillips
e5850d8a26
Adds new consul operator endpoint, CLI, and ACL and some basic Raft commands.
2016-08-30 00:02:50 -07:00
Pivotal DX129
f9b6cd636e
Fixed code formatting
2016-08-29 17:29:23 -04:00
Pierre Delagrave
db8ff0a582
Made the dns recursor timeout test more reliable
2016-08-29 13:23:14 -04:00
Pierre Delagrave
d9bd41fc4d
Renamed dns config parameter internal_client_timeout for recursor_timeout
2016-08-26 15:22:04 -04:00
Pierre Delagrave
3fe117c24d
Merge remote-tracking branch 'pierre/master'
2016-08-26 15:12:38 -04:00
James Phillips
d64d53a0de
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
17b70c7efd
Adds a max raft multiplier and tweaks documentation.
2016-08-25 15:36:05 -07:00
James Phillips
2822334bce
Stops scaling the commit timeout.
2016-08-25 15:05:40 -07:00
James Phillips
53c73f0ee5
Redacts the Circonus API token from stats JSON.
2016-08-24 23:27:25 -07:00
James Phillips
57db4bcce6
Adds performance tuning capability for Raft, detuned defaults, and supplemental docs.
2016-08-24 21:58:37 -07:00
Pierre Delagrave
c8c4b9d344
Added a configurable timeout to the client making DNS queries to downstream name servers
2016-08-23 16:59:38 -04:00
James Phillips
a48463f100
Removed bad error message for health check status.
2016-08-17 17:54:09 -07:00
James Phillips
defa2a6180
Merge pull request #2226 from abhinavdahiya/rm-health-unknown
...
Fixes #1775 ; Removes 'unknown' state
2016-08-17 17:51:04 -07:00
James Phillips
4c7a0ed3b0
Merge branch 'master' into f-deregister-critical
2016-08-16 12:53:21 -07:00
James Phillips
ba60afd5d8
Cleans up based on code review feedback.
2016-08-16 12:52:30 -07:00
James Phillips
9f7a973ace
Adds an `X-Consul-Translate-Addresses` to signal translation is enabled.
2016-08-16 11:31:41 -07:00
James Phillips
fbdd021ab9
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
4a3d7db24f
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
55e83c9e1c
Tweaks the WAN address translation unit tests.
2016-08-15 15:34:11 -07:00
James Phillips
c0ff412650
Factors translate out into a separate file and makes safe for in-memory RPCs.
2016-08-15 15:05:02 -07:00
Xingyu Chen
a570bf6fc2
Update gated_writer.go
2016-08-14 16:36:21 +08:00
David van Geest
cdeff022dd
Translate Address to tagged WAN address in HTTP API when appropriate.
2016-08-12 18:25:36 -07:00
James Phillips
3f50b9599a
Updates built-in UI static assets to latest.
2016-08-12 18:01:59 -07:00
James Phillips
456a4934f0
Runs `go fmt`.
2016-08-12 17:26:23 -07:00
James Phillips
a53c6a38e2
Tweaks DNS prepared query failover unit test.
2016-08-12 17:16:08 -07:00
Max Timchenko
3b08db47dc
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
b6c1543da8
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
17c10d78bc
Passes the index by reference so we can control the allocation.
2016-08-12 14:51:50 -07:00
James Phillips
f7fcb03004
Makes name compares case-insensitive.
2016-08-12 12:16:21 -07:00
R.B. Boyer
1c4b4ac54f
Validate gossip encryption key before made persistent in local.keyring
2016-08-12 11:42:45 -07:00
James Phillips
6332e2b367
Avoids allocations and function calls if no extra data is present.
2016-08-12 10:29:57 -07:00
James Phillips
e30b99cef5
Renames "seen" to "resolved".
2016-08-11 22:01:57 -07:00
James Phillips
34d6c2d5e1
Fixes the DNS SRV trim bug.
2016-08-11 21:46:14 -07:00
James Phillips
bcb0f71759
Finishes up DNS compression by adding opt-out, tests, and documentation. Fixes trim routine.
2016-08-11 16:27:08 -07:00
epipho
41db005d0b
Fix panic where r.Compress would be set before checking for errors.
2016-08-11 16:27:08 -07:00
epipho
d965e90306
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
sweeneyb
14ec3290fa
Add support for dns port as a command line option
2016-08-10 04:05:56 +00:00
chenxingyu
0d5eca9683
fix go race bug
2016-08-10 10:44:20 +08:00
James Phillips
282a4b8a3f
Updates bindata after vendor update.
2016-08-09 19:03:10 -07:00
James Phillips
f73166ced9
Installs a wrapper around HTTP endpoints that generate metrics.
2016-08-09 15:41:15 -07:00
James Phillips
95930e3cb7
Merge pull request #2237 from hashicorp/f-acl-replication
...
Adds ACL replication.
2016-08-09 11:42:16 -07:00
James Phillips
f23786cd5a
Fixes JS exception when there are no coordinates present.
2016-08-08 17:38:22 -07:00
James Phillips
d29af2ddc7
Adds an ACL replication status endpoint.
2016-08-04 23:30:16 -07:00
James Phillips
18b817b575
Hides the acl_replication_token from JSON output, like in /v1/agent/self.
2016-08-03 21:24:09 -07:00
James Phillips
d336bdd7b0
Adds basic ACL replication plumbing.
2016-08-03 21:24:04 -07:00
Cameron Davison
d138752249
atomic write service state and checks files, fixes #1221
2016-08-03 10:34:12 -05:00
Hasyimi Bahrudin
bb6bb19aad
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
7c6c3b38bc
Fixes #1775 ; Removes 'unknown' state
...
Signed-off-by: Abhinav Dahiya <abhinavdtu2012@gmail.com>
2016-07-30 19:33:14 +05:30
James Phillips
bd5e5bf19c
Adds consul info data into /v1/agent/self endpoint.
2016-07-20 15:12:26 -07:00
James Phillips
2087772297
Fixes startup version print to show the human version.
2016-07-20 08:09:05 -07:00
James Phillips
e137f4dafd
Adds version info back into the config.
...
In #2191 I accedentally broke SCADA by not populating the agent's version
information into the config structure. This adds it back, and makes the
distinction between the raw parts we send to APIs and the human form of
the version that we display.
2016-07-19 18:38:15 -07:00
James Phillips
cfbe8f430e
Merge pull request #2193 from hashicorp/pr-2188-slackpad
...
Adds Circonus support for telemetry metrics.
2016-07-19 17:15:29 -07:00
James Phillips
129db848c7
Tweaks the docs a bit.
2016-07-19 15:54:52 -07:00
James Phillips
500ea080d2
Removes top-level key support for Circonus configs.
...
This was a feature to help migrate to the new telemetry sub-structure,
but since this is all new we don't need it.
2016-07-19 15:46:57 -07:00
James Phillips
b32731d09f
Makes sure version is always displayed consistently.
2016-07-19 15:06:32 -07:00
richard.hulm
e2f7e825a1
RH: Add revision (if it exists)
2016-07-19 10:04:56 +01:00
matt maier
f4525d2582
fix: typo coupled, default token app to "consul", switch submit_interval/SubmitInterval to submission_interval/SubmissionInterval
2016-07-18 15:46:11 -04:00
matt maier
fb76256c26
Add Circonus support for Telemetry metrics
2016-07-18 09:34:43 -04:00
richard.hulm
25eeab5e49
Add the version (from config) to the Starting Consul Agent printout
2016-07-18 10:01:16 +01:00
Ryan Uber
5023c4add1
Merge pull request #1847 from mssola/dc-to-datacenter
...
[proposal] command: deprecated the -dc flag in the agent CLI
2016-07-05 13:01:51 -07:00
Ryan Uber
ab1654758f
Merge pull request #2137 from hashicorp/f-pq-near
...
Support "near" parameter in prepared query service block
2016-07-01 12:28:48 -07:00
Ryan Uber
7fd0c3ce70
agent: parseSource still subs for _agent
2016-07-01 10:04:58 -07:00
Ryan Uber
00819e89de
agent: test that DNS passes the agent data through
2016-07-01 09:46:26 -07:00
Ryan Uber
62884a22d4
consul: send agent source data as separate query source
2016-06-30 16:51:18 -07:00
Ryan Uber
104b234dde
agent: always pass local agent query source, allow override
2016-06-30 12:11:48 -07:00
Ryan Uber
c457ee0075
agent: fix test
2016-06-21 16:28:26 -07:00
Ryan Uber
d567d6a6d8
consul: send origin node + dc when executing prepared queries
2016-06-21 15:34:26 -07:00
Ryan Uber
4c1afb1bc6
consul: use the Near field instead of PreferLocal
2016-06-21 12:39:40 -07:00
James Phillips
aa1bb5a012
Merge pull request #2131 from hashicorp/b-misc-microoptimizations
...
Misc micro optimizations
2016-06-21 09:59:01 -07:00
Sean Chittenden
32f393b611
Pack Port to be slightly more optimal in terms of struct memory usage.
2016-06-20 15:31:17 -07:00
Sean Chittenden
112f3fd468
Give log reviewers a hint as to which check is failing
2016-06-20 15:25:21 -07:00
Sean Chittenden
56f480a633
Use stable, monotonically increasing port numbers for tests
2016-06-20 14:33:46 -07:00
Ryan Uber
865c264b9c
agent: set origin during PQ execution
2016-06-20 14:24:42 -07:00
Sean Chittenden
e9a2f5b40c
Chase casting types.CheckID to a string into the state_store.
...
It turns out the indexer can only use strings as arguments when
creating a query. Cast `types.CheckID` to a `string` before calling
into `memdb`.
Ideally the indexer would be smart enough to do this at compile-time,
but I need to look into how to do this without reflection and the
runtime package. For the time being statically cast `types.CheckID`
to a `string` at the call sites.
2016-06-07 16:59:02 -04:00
Sean Chittenden
63adcbd5ef
Revert "Move `structs.CheckID` to a new top-level package, `types`."
...
This reverts commit 2bbd52e3b44ff1b60939a8400264d534662d6d51.
2016-06-07 16:59:02 -04:00
Sean Chittenden
cbb945e76a
Move `structs.CheckID` to a new top-level package, `types`.
...
Per discussion w/ @slackpad, move this type to its own top-level package
2016-06-07 16:59:02 -04:00
Sean Chittenden
f5ab25163e
Move `structs.CheckID` to a new top-level package, `types`.
...
Per discussion w/ @slackpad, move this type to its own top-level package
2016-06-07 16:59:02 -04:00
Sean Chittenden
ddbe64a8c8
Float a type balloon. Some strings are square pegs in round holes.
...
This experiment was brought about because of variable naming
confusion where name and checkIDs were interchanged. Gave CheckID
an Qualified Type Name and chased downstream changes.
2016-06-07 16:59:02 -04:00
James Phillips
518e122053
Updates web assets to pull in RTT viz.
2016-06-07 09:32:44 -07:00
James Phillips
a78b969984
Removes stale scada client and test sections that use (now) unexported fields.
...
Fixes #2092 .
2016-06-06 19:18:31 -07:00