Commit Graph

147 Commits (6790930c4e7345f0f021e188558854d43e37b3f0)

Author SHA1 Message Date
James Phillips 4be2ab1a75 Moves tagged wan address to be managed by anti-entropy, not serf. 2016-02-07 13:12:42 -08:00
Evan Gilman 069a28b3c0 Use idiomatic name for wan_addr serf tag 2016-02-06 23:01:45 -08:00
Evan Gilman 9300a13643 Store WanAddress during node registration 2016-02-06 23:01:45 -08:00
Ryan Uber 2bcaa8ac38 consul: address comments 2016-01-05 09:45:36 -08:00
Ryan Uber 90566d4bde consul: disable serf snapshots in dev mode 2015-12-26 20:39:49 -05:00
Ryan Uber afafae53fd consul: dev mode works 2015-12-26 20:19:36 -05:00
James Phillips 5d06a87d82 Adds an RPC endpoint injection method for testing. 2015-11-15 17:06:00 -08:00
James Phillips 81bb39751a Adds prefix "prepared" to everything prepared query-related. 2015-11-15 17:06:00 -08:00
James Phillips b736bc4e68 Adds basic structure for prepared queries (needs tests). 2015-11-15 17:06:00 -08:00
James Phillips de01f96d38 Fixes configs now that Serf always caches coordinates. 2015-10-23 15:23:01 -07:00
James Phillips 660da92152 Makes the default protocol 2 and lets 3 interoperate with 2. 2015-10-23 15:23:01 -07:00
James Phillips 5f754c4a87 Does some small cleanups based on PR feedback.
* Holds coordinate updates in map and gets rid of the update channel.
* Cleans up config variables a bit.
2015-10-23 15:23:01 -07:00
James Phillips b9d5fb0f90 Flips the sense of the coordinate enable option. 2015-10-23 15:23:01 -07:00
James Phillips 86b112fe31 Does a clean up pass on the Consul side. 2015-10-23 15:23:01 -07:00
Derek Chiang 7255ddd086 Address comments 2015-10-23 15:23:01 -07:00
Derek Chiang 69003310ca Fix tests 2015-10-23 15:23:01 -07:00
Derek Chiang 54a2815d9c Address comments 2015-10-23 15:23:01 -07:00
Derek Chiang 98d87b5dd5 Complete logic for sending coordinates 2015-10-23 15:23:01 -07:00
Derek Chiang a9ea503c69 Adding tests and stuff 2015-10-23 15:23:01 -07:00
Derek Chiang 13f6cd376f Start adding stuff 2015-10-23 15:23:01 -07:00
James Phillips 6ba70be33c Nukes old state store's connection to FSM and RPC. 2015-10-15 14:59:09 -07:00
James Phillips 5b6502c1ea Integrates new state store into leader and catalog/health endpoints. 2015-10-15 14:59:09 -07:00
Dale Wijnand 5a28ebcaa3 Fix a bunch of typos. 2015-09-15 13:22:08 +01:00
Anthony Scalisi 10e028d599 remove various typos 2015-09-11 12:29:54 -07:00
James Phillips af7d2cb596 Bumps protocol version back down as we've made memberlist smarter. 2015-08-31 11:16:34 -07:00
Ryan Uber 18715a445c agent: remove unnecessary EventFire function 2015-07-02 06:56:27 -07:00
Ryan Uber d5e13280a3 consul: use acl cache struct in server 2015-06-18 18:13:29 -07:00
James Phillips feb7f65703 Bumps protocol version to 3 to get serf version 5. 2015-06-02 17:50:35 -07:00
Armon Dadgar beec4972de consul: support the new TLS wrapper 2015-05-11 15:15:36 -07:00
Armon Dadgar 92e5548b23 consul: use tlsutil.Wrapper instead of tls.Config directly 2015-05-11 13:09:19 -07:00
Ryan Uber ed67f6593f consul: swap over to raft-boltdb 2015-03-26 20:01:52 -07:00
Ryan Uber 1200e25ec9 consul: allow returning custom error for merge delegate 2015-02-22 18:24:10 -08:00
Ryan Breen b78eb40ef4 s/data center/datacenter/g 2015-02-19 17:45:47 -05:00
Armon Dadgar 6f48675f14 consul: Wait for RemovePeer in Leave as a follower 2015-01-20 16:19:54 -08:00
Armon Dadgar 38f276dc47 consul: remove ourself from raft peer set if we are the leader 2015-01-20 16:19:29 -08:00
Armon Dadgar 1c942386b6 consul: Use new LogCache to improve write throughput 2015-01-14 15:49:58 -08:00
Armon Dadgar 2dcadffb12 consul: Adding merge delegate to prevent mixing clusters 2015-01-06 15:48:46 -08:00
Armon Dadgar 10604a6fa8 consul: Thread Tombstone GC through 2015-01-05 14:43:55 -08:00
Armon Dadgar 8015854a74 consul: Collect useful session metrics 2015-01-02 22:46:51 +05:30
Armon Dadgar fc89462236 consul: Make sessionTimersLock a plain mutex 2014-12-12 19:17:35 -08:00
Atin Malaviya 4732c36d88 Consul Session TTLs
The design of the session TTLs is based on the Google Chubby approach
(http://research.google.com/archive/chubby-osdi06.pdf). The Session
struct has an additional TTL field now. This attaches an implicit
heartbeat based failure detector. Tracking of heartbeats is done by
the current leader and not persisted via the Raft log. The implication
of this is during a leader failover, we do not retain the last
heartbeat times.

Similar to Chubby, the TTL represents a lower-bound. Consul promises
not to terminate a session before the TTL has expired, but is allowed
to extend the expiration past it. This enables us to reset the TTL on
a leader failover. The TTL is also extended when the client does a
heartbeat. Like Chubby, this means a TTL is extended on creation,
heartbeat or failover.

Additionally, because we must account for time requests are in transit
and the relative rates of clocks on the clients and servers, Consul
will take the conservative approach of internally multiplying the TTL
by 2x. This helps to compensate for network latency and clock skew
without violating the contract.

Reference: https://docs.google.com/document/d/1Y5-pahLkUaA7Kz4SBU_mehKiyt9yaaUGcBTMZR7lToY/edit?usp=sharing
2014-12-07 12:38:22 -05:00
Ryan Uber 22b2c63304 command/agent: fix up gossip encryption indicator 2014-11-19 16:35:37 -08:00
Ryan Uber 4dd1b42477 consul: use rpc layer only for key management functions, add rpc commands 2014-11-19 16:30:21 -08:00
Atin Malaviya 61f1d24f39 consul.Config() helper to generate the tlsutil.Config{} struct, 30 second keepalive, use keepalive for HTTP and HTTPS 2014-11-18 17:56:48 -05:00
Atin Malaviya f1f8c88228 Moved TLS Config stuff to tlsutil package 2014-11-18 11:03:36 -05:00
Armon Dadgar bb3324dd85 consul: Ensure FSM stores data in the data dir 2014-10-15 14:57:59 -07:00
Armon Dadgar f8fc46dc57 consul: Reduce mmap size on 32bit 2014-10-15 11:32:40 -07:00
Armon Dadgar 1c341e6766 consul: expose UserEvent from Serf 2014-08-26 18:50:03 -07:00
Armon Dadgar ef171ca344 consul: Support management tokens 2014-08-18 15:46:23 -07:00
Armon Dadgar 0c912f2c98 consul: Use Etag for policy caching 2014-08-18 15:46:22 -07:00