James Phillips
9176e77111
Shuts down flooder when either Serf is shut down.
2017-03-16 16:42:19 -07:00
James Phillips
0cf9cf22ad
Fixes a unit test that needed to account for WAN flooding.
2017-03-16 16:42:19 -07:00
James Phillips
91a861337b
Adds LAN -> WAN join flooding.
2017-03-16 16:42:19 -07:00
James Phillips
1e5a442420
Walks back the changes to change pool address interface into strings.
2017-03-16 16:42:19 -07:00
James Phillips
dec485145e
Adds a hook for the route lookup function.
2017-03-16 16:42:19 -07:00
James Phillips
ad39f8a0f6
Cleans up some small things based on review feedback.
2017-03-16 16:42:19 -07:00
James Phillips
543389ad0a
Adds offline detection.
2017-03-16 16:42:19 -07:00
James Phillips
8cc06ec10d
Adds missing unit tests and cleans up some router bugs.
2017-03-16 16:42:19 -07:00
James Phillips
850ac50e99
Makes the raft_vsn optional in Serf tags to support older servers.
2017-03-16 16:42:19 -07:00
James Phillips
1cd3a8a107
Simplifies median calculation.
2017-03-16 16:42:19 -07:00
James Phillips
28f8aa5559
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
James Phillips
746e735dce
Fixes snapshot endpoint after merge.
2017-03-16 16:42:18 -07:00
James Phillips
0269bd0e41
Cleans up after merge.
2017-03-16 16:42:18 -07:00
James Phillips
82b6fbd844
Adds router into RPC paths with work in progress on coordinates.
2017-03-16 16:42:18 -07:00
James Phillips
ef642c21b3
Adds an area request type.
2017-03-16 16:42:18 -07:00
James Phillips
838d85b7ae
Changes pool's dial address to a string and adds a timeout.
2017-03-16 16:42:18 -07:00
Kyle Havlovitz
f50ce2084a
Only count healthy voters for FailureTolerance
2017-03-16 12:19:16 -07:00
Kyle Havlovitz
9c7bba7903
Tweak last_contact health logic for leader
2017-03-15 19:57:54 -07:00
Kyle Havlovitz
bc0494e396
Reorganized cluster health check loop and logic
2017-03-15 18:27:17 -07:00
Kyle Havlovitz
bb98e39dd4
Add tests for servers changing address/ID
2017-03-15 16:50:42 -07:00
Kyle Havlovitz
c40279e012
Fix an issue with changing server IDs and add a few UX enhancements around autopilot features
2017-03-15 16:09:55 -07:00
Kyle Havlovitz
3c6bece859
Add autopilot guide to the docs
2017-03-10 14:55:18 -08:00
Kyle Havlovitz
4807215fa1
Merge pull request #2788 from hashicorp/f-autopilot-2
...
Autopilot server health monitoring
2017-03-10 12:29:45 -08:00
Kyle Havlovitz
b15d67bfac
Use defers for WaitGroup and Ticker stop
2017-03-10 12:29:03 -08:00
Kyle Havlovitz
8130f9b1c1
Cleaned up and reorganized some autopilot-related code
2017-03-09 18:21:40 -08:00
James Phillips
1e313e339c
Adds token to deregister request when reconciling.
...
Fixes #2792 .
2017-03-09 09:25:42 -08:00
Kyle Havlovitz
a5cbee0e99
Add AutopilotPolicy interface and BasicAutopilot
2017-03-08 12:26:58 -08:00
Kyle Havlovitz
a7de1e2a3b
Move RaftStats to Status endpoint
2017-03-07 13:58:06 -08:00
Kyle Havlovitz
8bcab6c6d7
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
Kyle Havlovitz
23c492a74e
Rename DeadServerCleanup and make wording adjustments
2017-02-28 14:45:21 -08:00
Kyle Havlovitz
f7b6d776f4
Add cli docs and minor test/comment tweaks
2017-02-24 16:55:44 -08:00
Kyle Havlovitz
459e72b011
Merge branch 'master' into f-autopilot
2017-02-24 15:55:18 -08:00
Kyle Havlovitz
c9ddee1a79
Add CAS capability to autopilot config endpoint
2017-02-24 13:08:49 -08:00
James Phillips
3887c52cb2
Reserves an RPC selector byte for Consul Enterprise.
2017-02-24 09:54:33 -08:00
Kyle Havlovitz
56e22a719f
Add state store table and endpoints for autopilot
2017-02-23 20:32:13 -08:00
Kyle Havlovitz
ae9fce0ae0
Move raft_protocol out of autopilot config
2017-02-23 13:08:40 -08:00
Kyle Havlovitz
f9588b8d7f
Add raft version 2/3 compatibility
2017-02-22 12:53:32 -08:00
Kyle Havlovitz
2c9001a389
Add configurable cleanup of dead servers when a new server joins
2017-02-17 10:49:16 -08:00
Sean Chittenden
cea8a2f5d5
Round the node lookup prefix down to the nearest modulo two size before
...
performing the lookup.
Hat tip: @dadgar
2017-02-02 12:13:58 -08:00
Sean Chittenden
06db5bc353
Reduce the size of the UUID Lookup Length restriction from `8` to `2`.
...
I'm torn on this. It's useful from a UX perspective for an operator to
be able to type in something that's short. At the same time, by
enforcing an `8` character length, we reduced the probability of a user
depending on the behavior and having it suddenly stop working in the
future when a duplicate prefix is injected into the environment.
2017-02-02 12:12:18 -08:00
Kyle Havlovitz
fbcd43e95c
Merge pull request #2704 from hashicorp/f-relay-query-responses
...
Add relay-factor arg to keyring operations
2017-02-02 12:15:19 -05:00
Kyle Havlovitz
4fc3bd3abf
Added -relay-factor param to keyring operations
2017-02-01 21:53:29 -05:00
James Phillips
40454c999a
Adds a test for node UUID or name lookups.
2017-02-01 16:41:44 -08:00
Sean Chittenden
1c5d6eff76
Merge pull request #2702 from hashicorp/f-dns-nodeid
...
DNS lookup by Consul node ID
2017-02-01 16:23:18 -08:00
Sean Chittenden
f8b64ec5f8
Treat a uuid prefix lookup error as a soft error, as if a node name
...
lookup returned nil.
Add a TODO to note where a future point of logging should occur once a
logger is present and a few additional comments to explain the program
flow.
2017-02-01 16:09:25 -08:00
Sean Chittenden
6844ebb43b
Treat a uuid prefix lookup error as a soft error, as if a node name lookup returned nil.
...
Add a TODO to note where a future point of logging should occur once a
logger is present.
2017-02-01 15:51:25 -08:00
Sean Chittenden
1d9c5a3efb
Run a test of `NodeServices()` with a NodeID as an argument.
2017-02-01 15:41:10 -08:00
Sean Chittenden
b241cfc7fd
Whoops. Return an empty set in the event that there are multiple matches.
2017-02-01 15:18:00 -08:00
Sean Chittenden
324215c842
Rename `nodeName` to `nodeNameOrID`.
2017-02-01 14:59:24 -08:00
Sean Chittenden
19c2cd106a
Toggle `AllowMissing` to false to accommodate old clients without Node IDs.
2017-02-01 14:58:34 -08:00