James Phillips
ff351b289a
Merge pull request #1413 from hashicorp/b-coord-raft-errors
...
Adds a check for in-band error returns in the coordinate RaftApply.
2015-11-15 17:05:19 -08:00
James Phillips
f1f9d30ade
Extends the session TTL max to 24 hours, and adds a warning to the docs.
2015-11-15 16:51:00 -08:00
James Phillips
9972eb2498
Adds a check for in-band error returns in the coordinate RaftApply.
2015-11-15 16:50:46 -08:00
James Phillips
c1d338550f
Changes batch update failure to a WARN since it's nbd.
2015-10-29 09:26:24 -07:00
James Phillips
d06fc28a0a
Prevents agents from considering Raft information when doing sync checks.
2015-10-28 14:32:00 -07:00
James Phillips
19c3e262a6
Fixes a bad error message.
2015-10-28 12:40:47 -07:00
James Phillips
9f85f7ee1a
Adds a check for the minimum version as well.
2015-10-27 15:56:36 -07:00
James Phillips
26095faae0
Sets the ignore flag on coordinate update Raft log entries.
2015-10-27 14:44:34 -07:00
James Phillips
c0bd639662
Makes the version upshift code look at the correct version field.
2015-10-27 14:44:34 -07:00
James Phillips
ecd3a1d1d2
Completes rebase of network coordinates to new memdb.
2015-10-23 15:23:01 -07: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
80d5a3029f
Zeroes out the height when testing exact distances.
2015-10-23 15:23:01 -07:00
James Phillips
384d99677d
Cleans up after latest rebase.
2015-10-23 15:23:01 -07:00
James Phillips
6289764ea2
Moves sorting up into coordinate endpoint HTTP handlers.
2015-10-23 15:23:01 -07:00
James Phillips
33e3505aea
Adds endpoints for raw network coordinates.
2015-10-23 15:23:01 -07:00
James Phillips
843613143b
Fixes bad name for DC forwarding of Coordinate.Get.
2015-10-23 15:23:01 -07:00
James Phillips
9caa5b3653
Adds distance sorting to health endpoint. Cleans up unit tests.
2015-10-23 15:23:01 -07:00
James Phillips
497f6782af
Switches to the median over all DC nodes with known coordinates.
2015-10-23 15:23:01 -07:00
James Phillips
6d845c7d0d
Adds explicit check for empty node in source parameter.
2015-10-23 15:23:01 -07:00
James Phillips
78b2c2d7ac
Moves disable checks down into the sort routine.
2015-10-23 15:23:01 -07:00
James Phillips
54ef97b268
Adds tests for HTTP interface. Removes a stray mark.
2015-10-23 15:23:01 -07:00
James Phillips
36c78f5042
Adds sort of DCs in catalog queries based on RTT. Cleans up.
...
* Makes the catalog endpoint respect disabling coordinates for all
RTT-sorting query types.
2015-10-23 15:23:01 -07:00
James Phillips
89c7203f31
Adds coordinate sorting support to catalog queries for nodes and service nodes.
2015-10-23 15:23:01 -07:00
James Phillips
ad65d953f6
Scales coordinate sends to hit a fixed aggregate rate across the cluster.
2015-10-23 15:23:01 -07:00
James Phillips
66a3d29743
Simplifies the batching function and adds some comments.
2015-10-23 15:23:01 -07:00
James Phillips
e094f5a61d
Adds snapshot save and restore of coordinates.
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
7e6d52109b
Hardens Consul from bad coordinates from other nodes.
2015-10-23 15:23:01 -07:00
James Phillips
2cee9f7e2f
Takes the node name out of the coordinate get call.
2015-10-23 15:23:01 -07:00
James Phillips
d12aa2ffab
Moves batching down into the state store and changes it to fail-fast.
...
* A batch of updates is done all in a single transaction.
* We no longer need to get an update to kick things, there's a periodic flush.
* If incoming updates overwhelm the configured flush rate they will be dumped with an error.
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
92567841d6
Removes one more WAN leftover.
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
James Phillips
01d2452ea3
Merges config changes after rebase.
2015-10-23 15:23:01 -07:00
Derek Chiang
7255ddd086
Address comments
2015-10-23 15:23:01 -07:00
Derek Chiang
2f11db15aa
Add test for the GetWAN endpoint
2015-10-23 15:23:01 -07:00
Derek Chiang
1929b1dabf
Add an endpoint for getting WAN coordinates
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
f8d81092c9
Add state store tests
2015-10-23 15:23:01 -07:00
Derek Chiang
f657caf1dd
Add more tests
2015-10-23 15:23:01 -07:00
Derek Chiang
f144d17b1c
Address comments
2015-10-23 15:23:01 -07:00
Derek Chiang
bf5cb7522f
Use IndexedCoordinate instead
2015-10-23 15:23:01 -07:00
Derek Chiang
d8dd8d77d4
Improve a test
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
8a0bb40bba
Fix tests
2015-10-23 15:23:01 -07:00
Derek Chiang
9113b26286
Some fixes
2015-10-23 15:23:01 -07:00
Derek Chiang
b87f122a5b
Change GET API a little bit
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
158eabdd6f
Cleans up a little whitespace with go fmt.
2015-10-20 18:41:05 -07:00
James Phillips
785bf6678d
Gets rid of error prefixing in leader.go.
2015-10-20 13:37:11 -07:00
James Phillips
f3a95bf9fe
Puts all restore operations into a single transaction and optimizes watches.
2015-10-19 23:06:59 -07:00
James Phillips
52c373bb65
Gets rid of unique constraint on sessions index in session_checks.
2015-10-19 17:41:50 -07:00
James Phillips
ee52f5ebce
Switches sessions over to UUIDFieldIndex.
2015-10-19 17:09:02 -07:00
James Phillips
7d1179c1eb
Adds a special case for fill KVS listings to avoid a tombstone scan.
2015-10-19 16:22:27 -07:00
James Phillips
3782fc53cb
Makes the iterator naming more consistent.
2015-10-19 15:51:11 -07:00
James Phillips
ffe531c55f
Converts sessions and ACLs over to iterators.
2015-10-19 14:56:22 -07:00
James Phillips
8371c87fd0
Converts KVS snapshot over to iterator.
2015-10-19 14:07:57 -07:00
James Phillips
503c552d28
Converts nodes, services, checks to iterators duing dumps; fixes tag drift bug.
...
Realized that the conversions ServiceNode <-> NodeService were incomplete in a
few places so centralized those and added some tests.
2015-10-19 13:55:35 -07:00
James Phillips
4fb8d1078e
Gets rid of non-idomatic "state_store" alias in FSM.
2015-10-16 14:07:48 -07:00
James Phillips
8d444f2eed
Ports a couple of new RPC calls to the updated codec mechanism.
2015-10-15 15:09:13 -07:00
James Phillips
655967d0f6
Runs go fmt after latest changes.
2015-10-15 14:59:09 -07:00
James Phillips
ef5233165b
Adds unit tests for new structs clone functions.
2015-10-15 14:59:09 -07:00
James Phillips
a1cb9b8e62
Adds benchmarks back in to the state store.
2015-10-15 14:59:09 -07:00
James Phillips
fc541fadcf
Removes a todo that's no longer needed.
2015-10-15 14:59:09 -07:00
James Phillips
be9f071488
Adds unit tests for the graveyard.
2015-10-15 14:59:09 -07:00
James Phillips
fab8672543
Does some go fmt after latest round of changes.
2015-10-15 14:59:09 -07:00
James Phillips
57c102a7f1
Adds a delay test.
2015-10-15 14:59:09 -07:00
James Phillips
6f7f163a76
Adds watch unit tests and does some related watch cleanup.
2015-10-15 14:59:09 -07:00
James Phillips
d29673ead7
Adds tests for GC.
2015-10-15 14:59:09 -07:00
James Phillips
d2f4a5fe83
Adds clone for service nodes so we don't twiddle the database's object.
2015-10-15 14:59:09 -07:00
James Phillips
b6f9aee847
Fixes remaining non-KV index calclulations and adds a general getWatchTables thing.
2015-10-15 14:59:09 -07:00
James Phillips
181c216f53
Fixes index management for KVS.
2015-10-15 14:59:09 -07:00
James Phillips
ca3a84edf8
Makes session invalidate loops use a separate slice to protect the iterator.
2015-10-15 14:59:09 -07:00
James Phillips
834c6c1cb4
Makes all delete loops use a separate slice to protect the iterator.
2015-10-15 14:59:09 -07:00
James Phillips
682b0113b8
Cleans up some go vet warnings.
2015-10-15 14:59:09 -07:00
James Phillips
cc6a7a2174
Gets rid of todo that we discussed is ok.
2015-10-15 14:59:09 -07:00
James Phillips
51600fab08
Gets rid of the transitional "New" suffix on state store and RPC.
2015-10-15 14:59:09 -07:00
James Phillips
4ee43e90b7
Deletes the old state store and all its accoutrements.
2015-10-15 14:59:09 -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
7729b66099
Integrates session TTL tests with new state store.
2015-10-15 14:59:09 -07:00
James Phillips
c83a9e043a
Integrates new state store into internal endpoint.
2015-10-15 14:59:09 -07:00
James Phillips
0959b87548
Abstracts the table names away from the RPC call sites.
2015-10-15 14:59:09 -07:00
James Phillips
b82d49240b
Integrates new state store into session endpoint; returns table index always.
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
James Phillips
41338c9018
Integrates KVS endopint with new state store (changes KVSList to match old behavior).
2015-10-15 14:59:09 -07:00
James Phillips
de00a2f81b
Cuts FSM unit tests over to new state store.
2015-10-15 14:59:09 -07:00
James Phillips
c791f2a709
Adds twiddling of the real state store in snapshot tests.
2015-10-15 14:59:09 -07:00
James Phillips
91ff5254dd
Ports over session invalidation tests (and fixes some bugs).
2015-10-15 14:59:09 -07:00
James Phillips
c3513b1661
Adds a note about updating sessions after they are created.
2015-10-15 14:59:09 -07:00
James Phillips
87bb81ba4c
Beefs up node and service watch tests for multi-table triggers.
2015-10-15 14:59:09 -07:00
James Phillips
bde2495a14
Adds session snapshot/restore and basic watch tests (and fixes some bugs).
2015-10-15 14:59:09 -07:00
James Phillips
4afd9a8599
Adds tombstone tests and gets rid of unused logger.
2015-10-15 14:59:09 -07:00
James Phillips
ad246e06a5
Makes sure we don't create a full table watch for tombstones.
2015-10-15 14:59:09 -07:00
James Phillips
930780efd9
Adds snapshot/restore and watch tests for KVS.
2015-10-15 14:59:09 -07:00
James Phillips
18d60f95c5
Allows lock holder to re-lock and set a KV, adds tests for corner cases around sessions.
2015-10-15 14:59:09 -07:00
James Phillips
75f9cd5cc3
Adds kvs lock/unlock tests.
2015-10-15 14:59:09 -07:00
James Phillips
72f15ceac0
Adds snap and watch tests for nodes, services, and checks.
2015-10-15 14:59:09 -07:00
James Phillips
005a7e0ab1
Adds node snap and watch tests as well as a general watch test.
2015-10-15 14:59:09 -07:00
James Phillips
c8d0d09087
De-generalizes graveyard since that ended up as a YAGNI (only useful for KV).
2015-10-15 14:59:09 -07:00
James Phillips
537fd67464
Cleans up unit tests for consistency.
2015-10-15 14:59:09 -07:00
James Phillips
f1ee05eba5
Adds ensure registration unit test (and fixes bugs).
2015-10-15 14:59:09 -07:00
James Phillips
e339ebf86e
Adds reap tombstone test (and fixes bugs).
2015-10-15 14:59:09 -07:00
James Phillips
bc34ae2f5c
Adds ACL snapshot/restore test.
2015-10-15 14:59:09 -07:00
James Phillips
21bc8e0996
Adds a watch tester helper that helps cut the cruft.
2015-10-15 14:59:09 -07:00
James Phillips
30736bae5a
Completes state store for KV, sessions, tombstones, and nodes/services/checks (needs tests and integration).
2015-10-15 14:59:09 -07:00
James Phillips
009fd7d9f5
Integrates new state store for ACLs.
2015-10-15 14:59:09 -07:00
James Phillips
d57431e300
Gets new structs changes to compile, adds some corner case handling and extra unit tests.
2015-10-15 14:59:09 -07:00
Ryan Uber
7bf7ba6099
consul/state: list acls
2015-10-15 14:59:09 -07:00
Ryan Uber
92191298d0
consul/state: implement acl delete
2015-10-15 14:59:09 -07:00
Ryan Uber
16188e7604
consul/state: basic acl set/get/delete
2015-10-15 14:59:09 -07:00
Ryan Uber
391d4eed57
consul/state: basic session destroy works
2015-10-15 14:59:09 -07:00
Ryan Uber
8fa82612d2
consul/state: more tests
2015-10-15 14:59:09 -07:00
Ryan Uber
876aa667ba
consul/state: refactor some tests
2015-10-15 14:59:09 -07:00
Ryan Uber
a93e3410b9
consul/state: session lookup by node id works
2015-10-15 14:59:09 -07:00
Ryan Uber
bd0de2c1e4
consul/state: add session list method
2015-10-15 14:59:09 -07:00
Ryan Uber
a4c202aa90
consul/state: adding session registration
2015-10-15 14:59:09 -07:00
Ryan Uber
b0856c2215
consul/state: adding tree delete for kvs store
2015-10-15 14:59:09 -07:00
Ryan Uber
291fbe02ba
consul/state: list keys from the kv with a prefix/separator
2015-10-15 14:59:09 -07:00
Ryan Uber
8b29bfa303
consul/state: fix for maxIndex and better tests
2015-10-15 14:59:09 -07:00
Ryan Uber
a0dc2ded8d
consul/state: add CAS method for kv set
2015-10-15 14:59:09 -07:00
Ryan Uber
8a70ba2cc5
consul/state: initial pass at CAS delete operation for kvs
2015-10-15 14:59:09 -07:00
Ryan Uber
4ba89adb7d
consul/state: adding KVSList for listing a given prefix
2015-10-15 14:59:09 -07:00
Ryan Uber
a0fd9feda3
consul/state: adding shallow delete for kvs store
2015-10-15 14:59:09 -07:00
Ryan Uber
08d41224a3
consul/state: basic k/v operations
2015-10-15 14:59:09 -07:00
Ryan Uber
f05a322dc7
consul/state: adding node dump methods
2015-10-15 14:59:09 -07:00
Ryan Uber
3b36744277
consul/state: testing service registration update
2015-10-15 14:59:09 -07:00
Ryan Uber
26f717f215
consul/state: fetch node/check sets by service ID
2015-10-15 14:59:09 -07:00
Ryan Uber
f54a96f56b
consul/state: filter checks by state
2015-10-15 14:59:09 -07:00
Ryan Uber
2cde299be9
consul/state: support check lookups by service name
2015-10-15 14:59:09 -07:00
Ryan Uber
a4a73c3904
consul/state: return highest index for queries with compound results
2015-10-15 14:59:09 -07:00
Ryan Uber
9f281cbf80
consul/state: cleanup
2015-10-15 14:59:09 -07:00
Ryan Uber
e148bb55d8
consul/state: better tests for index table updates
2015-10-15 14:59:09 -07:00
Ryan Uber
fa8e015219
consul/state: test helpers
2015-10-15 14:59:09 -07:00
Ryan Uber
04d7e5849a
consul/state: node checks are removed with their associated nodes
2015-10-15 14:59:09 -07:00
Ryan Uber
aa14ca3a7c
consul/state: services are removed with their associated nodes
2015-10-15 14:59:09 -07:00
Ryan Uber
0809a7e825
consul/state: remove checks during service deregistration
2015-10-15 14:59:09 -07:00
Ryan Uber
b0132b140c
consul/state: add check deletion method
2015-10-15 14:59:09 -07:00
Ryan Uber
6ebed234bb
consul/state: set index if we have an existing health check
2015-10-15 14:59:09 -07:00
Ryan Uber
8c6f40f299
consul/state: negative tests
2015-10-15 14:59:09 -07:00
Ryan Uber
77f14af977
consul/state: basic health check retrieval works
2015-10-15 14:59:09 -07:00
Ryan Uber
cf569f4848
consul/state: persisting health checks works
2015-10-15 14:59:09 -07:00
Ryan Uber
1d4a6ea790
consul/state: test for index modification during deletes
2015-10-15 14:59:09 -07:00
Ryan Uber
8a8aef0503
consul/state: add service delete functions
2015-10-15 14:59:09 -07:00
Ryan Uber
8c38210559
consul/state: working on node deletion
2015-10-15 14:59:09 -07:00
Ryan Uber
66b3250e55
consul/state: add function for returning all nodes
2015-10-15 14:59:09 -07:00
Ryan Uber
8671c5f80b
consul/state: track highest index when querying services
2015-10-15 14:59:09 -07:00
Ryan Uber
a52ed3c35b
consul/state: querying node services works
2015-10-15 14:59:09 -07:00
Ryan Uber
f9823a2a08
consul/state: read transactions don't block writes
2015-10-15 14:59:09 -07:00
Ryan Uber
0085512eb8
consul/state: more tests for EnsureNode/GetNode
2015-10-15 14:59:09 -07:00
Ryan Uber
b2d9c10fad
consul/state: working on service registration storage
2015-10-15 14:59:09 -07:00
Ryan Uber
82039191a1
consul/state: node registration and retrieval works
2015-10-15 14:59:09 -07:00
Ryan Uber
8181be18f2
consul/state: start tests for schema
2015-10-15 14:59:09 -07:00
Ryan Uber
89f87b7b5e
consul/state: round out schema
2015-10-15 14:59:09 -07:00
Ryan Uber
633a270803
consul/state: starting on new state store
2015-10-15 14:59:09 -07:00
Ryan Uber
b6ca82dd41
consul: comment msgpack handle
2015-10-15 14:57:29 -07:00
Ryan Uber
e098b7592f
consul: revert session endpoint test
2015-10-15 12:31:48 -07:00
Ryan Uber
81a862d8b7
consul: initial pass at refactoring RPC using net-rpc-msgpackrpc
2015-10-13 22:15:23 -07:00
Dale Wijnand
5a28ebcaa3
Fix a bunch of typos.
2015-09-15 13:22:08 +01:00
James Phillips
2f9ebdb135
Merge pull request #1187 from sfncook/enable_tag_drift_03
...
Enable tag drift 03
2015-09-11 15:35:32 -07:00
Anthony Scalisi
10e028d599
remove various typos
2015-09-11 12:29:54 -07:00
Shawn Cook
66fd8fb2a0
Rename EnableTagOverride and update formatting
2015-09-11 08:35:29 -07:00
Shawn Cook
0b3faf6e4a
Merge remote-tracking branch 'hashicorp/master' into enable_tag_drift_03
2015-09-10 14:55:30 -07:00
William Tisäter
54ea982b02
Bind to loopback only as last resort
2015-09-02 12:24:44 +02:00
William Tisäter
c94f78e92f
Don't try to bind on address from inactive interface
2015-09-02 12:24:36 +02:00
William Tisäter
0a2b8cee85
Treat 127.0.0.0/8 and 169.254.0.0/16 as private network
2015-09-02 12:24:14 +02:00
James Phillips
af7d2cb596
Bumps protocol version back down as we've made memberlist smarter.
2015-08-31 11:16:34 -07:00
Shawn Cook
ab91590bcb
Update tests - NodeService init needs bool
2015-08-20 09:09:26 -07:00
Shawn Cook
6a835939b8
EnableTagDrift in NodeService struct
2015-08-18 10:34:55 -07:00
Mac Browning
6b59226f0a
consul: refactor GetPrivateIP for testability
2015-08-15 17:44:32 -04:00
James Phillips
614bf446fc
Changes to an unbuffered channel, since we just close it.
2015-08-13 11:38:02 -07:00
James Phillips
1e8937b52b
Cleans up locking and factors markForUse into a Conn method.
2015-08-13 10:01:05 -07:00
James Phillips
072811f289
Gets rid of follow up attempts if the lead thread can't connect.
2015-08-12 20:14:48 -07:00
James Phillips
8bca3eb644
Adds missing ref count for the race condition case.
2015-08-12 19:26:01 -07:00
James Phillips
40c5af6f73
Fixes #1165 by having threads wait for any outstanding connect to finish.
2015-08-12 18:48:15 -07:00
Ryan Uber
f2b71940f5
consul: filter services by ACL when using ChecksInState.
2015-07-27 16:57:56 -07:00
Ryan Uber
a6317f2fb2
Merge pull request #1090 from hashicorp/f-keyring-acl
...
Keyring ACLs
2015-07-24 10:23:18 -07:00
Armon Dadgar
dcb5ae783b
Merge pull request #1119 from trumant/multiple_private_IPs
...
Fixes #1099 by raising an error when we multiple private IPs are found
2015-07-22 17:32:00 -07:00
Travis Truman
182f881d82
Fixes #1099 by raising an error when we multiple private IPs are found
2015-07-16 22:25:02 -04:00
Ryan Uber
5d73afc13f
consul: fixes for events and related tests
2015-07-14 11:38:26 -07:00
Ryan Uber
1b8051a783
acl: initial pass at keyring ACLs
2015-07-06 18:28:09 -06:00
Armon Dadgar
2783f2bfec
consul: fixing test using wrong FSM
2015-07-06 14:33:58 -06:00
Ryan Uber
e37b5ecb69
Merge pull request #1046 from hashicorp/f-event-acl
...
Event ACLs
2015-07-02 07:02:07 -07:00
Ryan Uber
18715a445c
agent: remove unnecessary EventFire function
2015-07-02 06:56:27 -07:00
Tiru Srikantha
b48842cf4f
Add RFC 6598 private IP range
...
Fixes #1031 by adding 100.64.0.0/10 as a private IP range.
2015-06-19 12:20:30 -07:00
Ryan Uber
6e084f6897
consul: always fire events from server nodes
2015-06-18 18:13:29 -07:00
Ryan Uber
d5e13280a3
consul: use acl cache struct in server
2015-06-18 18:13:29 -07:00
Ryan Uber
3ef482de7f
consul: split ACL cache into a reusable struct
2015-06-18 18:13:29 -07:00
Ryan Uber
d777105c11
consul: check ACLs when firing events
2015-06-18 18:13:29 -07:00
Ryan Uber
cee0af8d5c
consul: fast path a typed nil during ACL filtering
2015-06-12 16:46:15 -07:00
Ryan Uber
389f89274a
consul: fail badly if an unsupported type is passed to the ACL filter
2015-06-11 17:06:35 -07:00
Ryan Uber
e06e5c5e99
consul: fix log message
2015-06-11 15:00:26 -07:00
Ryan Uber
71f21fdea7
consul: testing acl filters in isolation
2015-06-11 14:14:43 -07:00
Ryan Uber
77721e3a1a
consul: better tests for acl filtering
2015-06-11 13:23:49 -07:00
Ryan Uber
a4d34b66d6
consul: testing internal endpoint acl filtering
2015-06-11 13:05:33 -07:00
Ryan Uber
d217c25668
consul: rename function to avoid collision and clean up
2015-06-11 13:04:47 -07:00
Ryan Uber
6623538c93
consul: break acl filtering into a separate struct
2015-06-11 12:08:21 -07:00
Ryan Uber
0159511714
consul: testing health endpoint service acl filtering
2015-06-11 09:39:35 -07:00
Ryan Uber
5128924b00
consul: testing catalog endpoint acl filtering
2015-06-10 22:14:58 -07:00
Ryan Uber
4a9965f062
consul: begin testing discovery ACLs
2015-06-10 19:25:58 -07:00
Ryan Uber
5b90b0f249
consul: use anonymous function for acl filtering
2015-06-10 18:43:48 -07:00
Ryan Uber
5fed1b5dc3
consul: filter internal endpoints for acls
2015-06-10 18:40:40 -07:00
Ryan Uber
c68f1dab8a
acl: initial pass at service discovery acls
2015-06-10 18:40:09 -07:00
James Phillips
feb7f65703
Bumps protocol version to 3 to get serf version 5.
2015-06-02 17:50:35 -07:00
Sam Boyer
40478cb534
Condense switch fallthroughs into expr lists
2015-05-26 21:30:14 -04:00
Armon Dadgar
cee5b53423
consul: adding StopWatch test
2015-05-14 18:32:19 -07:00
Armon Dadgar
ab3632e409
consul: lower default query time and add small stagger
2015-05-14 17:59:43 -07:00
Armon Dadgar
c51c888142
consul: adding randomStagger util method
2015-05-14 17:59:11 -07:00
Armon Dadgar
926b8bc7fa
consul: proactively clear timers
2015-05-14 17:42:47 -07:00
Armon Dadgar
e62ff966a3
consul: ensure blocking query cleans any lingering state
2015-05-14 17:38:42 -07:00
Armon Dadgar
1a50225911
consul: Adding methods to stop watching for changes
2015-05-14 17:33:02 -07:00
Armon Dadgar
c54ab04794
consul: adding Clear to NotifyGroup
2015-05-14 17:30:30 -07:00
Armon Dadgar
ebf961ef8b
Merge pull request #927 from hashicorp/f-tls
...
Add new `verify_server_hostname` to mitigate possibility of MITM
2015-05-11 18:15:16 -07:00
Armon Dadgar
8d86290ebf
Fixing merge conflict
2015-05-11 16:48:10 -07:00
Armon Dadgar
beec4972de
consul: support the new TLS wrapper
2015-05-11 15:15:36 -07:00
Armon Dadgar
6cf2efca0c
consul: thread the target DC through the RPC path
2015-05-11 13:09:19 -07:00
Armon Dadgar
92e5548b23
consul: use tlsutil.Wrapper instead of tls.Config directly
2015-05-11 13:09:19 -07:00
Armon Dadgar
b4531164e9
consul: updating for Raft API changes
2015-05-08 11:35:52 -07:00
Armon Dadgar
5d0f83d73d
consul: more telemetry on RPCs and queries
2015-05-07 17:25:12 -07:00
Armon Dadgar
f3a8f907fb
Merge pull request #909 from hashicorp/f-create
...
Support ACL upsert behavior
2015-05-06 11:22:11 -07:00
Armon Dadgar
35744c7210
consul: Adding flag to support future incompatible commands. Future self will thank me.
2015-05-05 19:44:21 -07:00
Armon Dadgar
cc9bd0a00b
consul: ACL.Apply allows upserting with custom ID
2015-05-05 19:19:45 -07:00
Armon Dadgar
8b8abe2268
consul: fixing overly redundant logging
2015-05-05 13:00:47 -07:00
Armon Dadgar
a86f31517b
Merge pull request #816 from pepov/master
...
Support different advertise address for WAN gossip
2015-05-04 15:40:25 -07:00
Ryan Mills
c92d45dd9b
Remove 'unknown' as one of the valid states when setting the initial state of a check.
2015-04-13 20:46:01 +00:00
Ryan Mills
275af975e8
Allow specifying a status field in the agent/service/register and agent/check/register endpoints.
...
This status must be one of the valid check statuses: 'passing', 'warning', 'critical', 'unknown'.
If the status field is not present or the empty string, the default of 'critical' is used.
2015-04-12 02:00:31 +00:00
Ryan Uber
6cc0eefa76
Merge pull request #857 from hashicorp/f-boltdb
...
Raft uses BoltDB
2015-04-10 18:30:07 -07:00
Armon Dadgar
5f921653cd
consul: do not clear connection cache on RPC errors
2015-04-07 14:17:20 -07:00
pepov
8cfe42f5dc
add test using separate advertise addresses for wan and for lan
2015-03-28 16:08:19 +01:00
Michael Fraenkel
8c26836783
Support SesionTTLMin configuration
...
- Allow setting SessionTTLMin
- Validate on the Server
2015-03-27 05:13:57 -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
d92e5d37e3
Revert "* use defer to avoid tracking lock"
...
This reverts commit a030abdefc
.
This commit causes a connection to be leaked if there is a race with
another concurrent RPC.
2015-02-16 14:04:47 -08:00
Emil Hessman
87dca96152
consul: clean up TempDirs in FSM tests
2015-01-26 08:34:23 +01:00
Armon Dadgar
149f25aaff
Merge pull request #621 from hashicorp/f-leave
...
Changing interaction between Leave and RemovePeers
2015-01-21 16:28:19 -08:00
Ryan Uber
674be58e55
agent: support multiple checks per service
2015-01-20 21:48:42 -08:00
Armon Dadgar
8dc077edaa
consul: Testing leave as leader and non-leader
2015-01-20 16:30:56 -08: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
6446df65bf
consul: Do not remove ourself as raft peer in Serf event handler
2015-01-20 16:13:54 -08:00
Armon Dadgar
1c942386b6
consul: Use new LogCache to improve write throughput
2015-01-14 15:49:58 -08:00
Armon Dadgar
0b969c4e2b
consul: Fixing potential issue with blocking queries for {Session,ACL}.Get
2015-01-13 12:02:30 -08:00
Armon Dadgar
8068c73b29
consul: Fixing blocking query returning old result
2015-01-13 11:51:24 -08:00
Ryan Uber
2c9bb57c0f
consul: fix server left test
2015-01-09 19:10:17 -08:00
Ryan Uber
757c850c6e
consul: improve test reliability for session ttls
2015-01-09 17:18:11 -08:00
Armon Dadgar
4572e7c8ec
consul: Testing KVSDeleteCAS in FSM
2015-01-08 17:26:12 -08:00
Armon Dadgar
2bd5c3f7e5
consul: Test the KVSDeleteCheckAndSet method
2015-01-08 17:24:36 -08:00
Armon Dadgar
65bebca0f5
consul: Expose the KVSDeleteCAS operation in FSM
2015-01-08 17:08:44 -08:00
Armon Dadgar
32e9e8ead5
consul: Implement KVSDeleteCheckAndSet
2015-01-08 17:08:32 -08:00
Armon Dadgar
55330c95a6
consul: Adding KVSDeleteCAS operation type
2015-01-08 17:08:17 -08:00
Armon Dadgar
779ae5ca0d
consul: Do not override the node address
2015-01-08 10:57:15 -08:00
Armon Dadgar
23b9c96169
consul: Fixing merge conflict
2015-01-08 10:42:19 -08:00
Armon Dadgar
cd4f17a410
consul: Remove cruft from KV watching
2015-01-07 18:10:18 -08:00
Armon Dadgar
80607e593a
consul: Enforce lock-delay with delete behavior
2015-01-07 15:48:27 -08:00
Ryan Uber
8e09016aee
Ignore vim swap files
2015-01-07 15:21:01 -08:00
Ryan Uber
d97305e376
command: check LastIndex is not zero while waiting for leader
2015-01-07 15:18:00 -08:00
Armon Dadgar
2dcadffb12
consul: Adding merge delegate to prevent mixing clusters
2015-01-06 15:48:46 -08:00
Armon Dadgar
6c425299db
consul: Test WatchKV
2015-01-05 17:08:01 -08:00
Armon Dadgar
974a97583a
consul: Adding test for KVS.List blocking query
2015-01-05 16:57:48 -08:00
Armon Dadgar
ff9869eee5
consul: Remove dead code
2015-01-05 16:42:30 -08:00
Armon Dadgar
f45d7900b8
consul: Optimize KV watching
2015-01-05 16:41:57 -08:00
Armon Dadgar
3096d6c749
consul: First pass to reduce KV watch cost
2015-01-05 16:18:27 -08:00
Armon Dadgar
73db8cd559
consul: Adding more useful metrics
2015-01-05 15:13:39 -08:00
Armon Dadgar
3d45d76930
consul: Fixing the KVS tests
2015-01-05 15:06:53 -08:00
Armon Dadgar
d842b6da74
consul: Disable tombstones as follower
2015-01-05 14:58:59 -08:00
Armon Dadgar
ce6cbab397
consul: Improve log message
2015-01-05 14:43:56 -08:00
Armon Dadgar
62d6fe51e0
consul: Reverting some index compute logic
2015-01-05 14:43:56 -08:00
Armon Dadgar
e7abf17db4
consul: List Keys should handle tombstones
2015-01-05 14:43:56 -08:00
Armon Dadgar
b4292640a5
consul: Ensure KVS List handles tombstones
2015-01-05 14:43:56 -08:00
Armon Dadgar
eb2df41171
consul: Mesure time for reapTombstones
2015-01-05 14:43:56 -08:00
Armon Dadgar
e02e8a4558
consul: Testing leader issue of reap command
2015-01-05 14:43:56 -08:00
Armon Dadgar
55ac84c463
consul: Test FSM Reap operations
2015-01-05 14:43:56 -08:00
Armon Dadgar
c22f172d84
consul: Test FSM restore of tombstones
2015-01-05 14:43:56 -08:00
Armon Dadgar
2a388aa354
consul: Testing tombstone snapshot
2015-01-05 14:43:55 -08:00
Armon Dadgar
a4dad44131
consul: Testing tombstone reaping
2015-01-05 14:43:55 -08:00
Armon Dadgar
089b7655ca
consul: Test tombstone creation
2015-01-05 14:43:55 -08:00
Armon Dadgar
4492ad0ab4
consul: Persist tombstones
2015-01-05 14:43:55 -08:00
Armon Dadgar
bf74361fa7
consul: First pass at tombstone reaping
2015-01-05 14:43:55 -08:00
Armon Dadgar
bcb10cff11
consul: TombstoneReapRequestType -> TombstoneRequestType
2015-01-05 14:43:55 -08:00
Armon Dadgar
76e5237356
consul: Generate a raft operation to reap tombstones
2015-01-05 14:43:55 -08:00
Armon Dadgar
d4b1f368b3
consul: Adding new request to reap tombstones
2015-01-05 14:43:55 -08:00
Armon Dadgar
1120e6fcbd
consul: Leader should reset the tombstone GC clock
2015-01-05 14:43:55 -08:00
Armon Dadgar
3bcf957d95
consul: Adding PendingExpiration
2015-01-05 14:43:55 -08:00
Armon Dadgar
10604a6fa8
consul: Thread Tombstone GC through
2015-01-05 14:43:55 -08:00
Armon Dadgar
103112b591
consul: Fixing accidental commit of transaction
2015-01-05 14:43:54 -08:00
Armon Dadgar
019d511fe7
consul: Fixing tombstone creation and hinting of GC
2015-01-05 14:43:54 -08:00
Armon Dadgar
b79be042d4
consul: Adding GetTxnLimit to MDBTable
2015-01-05 14:43:54 -08:00
Armon Dadgar
99e24160d2
consul: Support reset of tombstone GC
2015-01-05 14:43:54 -08:00
Armon Dadgar
b54aa8a25f
consul: Adding TombstoneGC to track TTLs
2015-01-05 14:43:54 -08:00
Armon Dadgar
a5ddae0de4
consul: Rename TombstoneGC to TombstoneTTL
2015-01-05 14:43:54 -08:00
Armon Dadgar
139568b0eb
consul: Create tombstones before key deletes
2015-01-05 14:43:54 -08:00
Armon Dadgar
1d0aba2f97
consul: Adding TombstoneGC config
2015-01-05 14:43:54 -08:00
Daniel Malon
051ac8eb0b
advertise specific address for a service
...
Enable setting a specific address in a service definition for advertise. If no specific address is given it will fallback to the node address and reassemble the old behaviour.
2015-01-02 21:10:05 +00:00
Armon Dadgar
8015854a74
consul: Collect useful session metrics
2015-01-02 22:46:51 +05:30
Armon Dadgar
0953efd5a0
consul: Minor cleanup
2014-12-12 22:17:41 -08:00
Armon Dadgar
19ce0842c6
consul: Test Session.Apply updates session timers
2014-12-12 21:54:29 -08:00
Armon Dadgar
7565d628b3
consul: Adding more tests for session TTLs
2014-12-12 21:42:59 -08:00
Armon Dadgar
a886e8e561
consul: Setup ACLs and timers after initial barrier
2014-12-12 21:42:24 -08:00
Armon Dadgar
fc89462236
consul: Make sessionTimersLock a plain mutex
2014-12-12 19:17:35 -08:00
Armon Dadgar
a5a9f051cd
consul: Ignore zero ttl on session
2014-12-12 19:17:04 -08:00
Armon Dadgar
bb1ba3a167
consul: Minor cleanups
2014-12-12 15:43:34 -08:00
Armon Dadgar
29afa881f4
Merge pull request #524 from amalaviy/session_ttl
...
Consul Session TTLs
2014-12-12 14:42:25 -08:00
Atin Malaviya
31e461e10b
Add invalidateSession test
2014-12-11 06:09:53 -05:00
Atin Malaviya
ac54010027
Fixed clearSessionTimer, created invalidateSession, added invalid TTL test
2014-12-11 05:34:31 -05:00
Atin Malaviya
60915629f6
Took out usage of snapshot SessionListTTL
2014-12-10 21:37:06 -05:00
Atin Malaviya
3821f3c57b
Took out StateSnapshot SessionListTTL also
2014-12-10 20:53:05 -05:00
Atin Malaviya
5229f3b44d
Clean up code based on feedback from armon
2014-12-10 20:49:06 -05:00
Atin Malaviya
87e9d855fd
Added more tests
2014-12-10 16:43:15 -05:00
Atin Malaviya
624c465e2b
Added more tests. Also added return of 404 if the session id to renew is not found
2014-12-10 10:02:23 -05: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
Ali Abbas
fc73a5a53e
cleanup and simplify
2014-12-06 13:08:35 +01:00
Ali Abbas
a030abdefc
* use defer to avoid tracking lock
...
* simplify control flow
2014-12-06 12:32:18 +01:00
Chavez
42a92693a8
consul: Server leave test fix
2014-12-05 11:22:54 -08:00
Chavez
b98374802d
consul: Fix failing globalRPC test
2014-12-05 10:36:37 -08:00
Veres Lajos
3b1068387a
typofixes - https://github.com/vlajos/misspell_fixer
2014-12-04 23:25:06 +00:00
Armon Dadgar
4861e4d9e1
consul: Check that ACL also allows registration
2014-11-30 21:10:42 -07:00
Armon Dadgar
cafba93869
consul: Enforce service registration ACLs
2014-11-30 21:05:15 -07:00
Ali Abbas
d1b2e41680
* Fix race condition on read/write of shutdown bool variable of server and connection pool.
...
* In connection pool, there is no guarantee that .reap() cannot execute the same time as .Shutdown() is called. It also did not benefit to eval shutdown when a select is run on the shutdown channel.
* In server, same principle applies to handleConsulConn. Since we also have a shutdown channel, it makes more to use this than to loop on a bool variable.
2014-11-26 10:39:25 +01:00
Ali Abbas
e395420af6
cleanup unreachable code
2014-11-25 19:54:30 +01:00
Atin Malaviya
d7933ae747
Set empty Behavior setting into SessionKeysRelease and flag error for unrecognized values
2014-11-20 19:16:07 -05:00
Atin Malaviya
6ef03a806c
Clean up tests, use switch to default session.Behavior value if unspecified, unrecognized
2014-11-20 14:29:18 -05:00
Atin Malaviya
47241fc1c8
Ephemeral Nodes for via Session behavior settings.
...
Added a "delete" behavior for session invalidation, in addition to
the default "release" behavior. On session invalidation, the sessions
Behavior field is checked and if it is set to "delete", all nodes owned
by the session are deleted. If it is "release", then just the locks
are released as default.
2014-11-20 11:34:45 -05:00
Ryan Uber
c283754381
Rebase against upstream
2014-11-19 16:45:49 -08:00
Ryan Uber
4203e7ab6d
consul: clean up comments, fix globalRPC tests
2014-11-19 16:37:40 -08:00
Ryan Uber
a662acd794
consul: fix obscure bug when launching goroutines from for loop
2014-11-19 16:37:40 -08:00
Ryan Uber
0cafb129ee
consul: more tests, remove unused KeyManager() method
2014-11-19 16:37:40 -08:00
Ryan Uber
648c7cdc8e
consul: simplify keyring operations
2014-11-19 16:36:19 -08:00
Ryan Uber
ee03c6a4b8
consul: add test for internal keyring rpc endpoint
2014-11-19 16:36:19 -08:00
Ryan Uber
a79176d314
consul: simplify keyring operations
2014-11-19 16:36:19 -08:00
Ryan Uber
e60c909276
command/keyring: clean up tests
2014-11-19 16:36:18 -08:00
Ryan Uber
bc2b2120fa
agent: -encrypt appends to keyring if one exists
2014-11-19 16:36:01 -08:00
Ryan Uber
22b2c63304
command/agent: fix up gossip encryption indicator
2014-11-19 16:35:37 -08:00
Ryan Uber
1f9d13dc73
agent: squash some more common keyring semantics
2014-11-19 16:34:18 -08:00
Ryan Uber
25845a39d3
consul: detach executeKeyringOp() from *Internal
2014-11-19 16:34:18 -08:00
Ryan Uber
7b4b87ccf1
consul: use keyring operation type to cut out duplicated logic
2014-11-19 16:34:18 -08:00
Ryan Uber
9556347609
consul: generalize multi-DC RPC call broadcasts
2014-11-19 16:34:18 -08:00
Ryan Uber
daf77c3f5b
command/keyring: cleanup
2014-11-19 16:34:18 -08:00
Ryan Uber
61b0908e3a
consul: test rpc errors returned from remote datacenters
2014-11-19 16:34:18 -08:00
Ryan Uber
9b8e753b15
consul: make forwarding to multiple datacenters parallel
2014-11-19 16:34:18 -08:00
Ryan Uber
74c7b1239b
consul: break rpc forwarding and response ingestion out of internal endpoints
2014-11-19 16:34:18 -08:00
Ryan Uber
9d01174521
consul: kill unused struct fields
2014-11-19 16:34:17 -08:00
Ryan Uber
9056e617cb
consul: cross-dc key rotation works
2014-11-19 16:34:17 -08:00
Ryan Uber
ef2aabc544
consul: use a function for ingesting responses
2014-11-19 16:34:17 -08:00
Ryan Uber
2bdeaa0c6a
consul: restructuring
2014-11-19 16:34:17 -08:00
Ryan Uber
8dec2744da
consul: refactor keyring, repeat RPC calls to all DC's
2014-11-19 16:34:17 -08:00
Ryan Uber
fcb0961436
agent: refactor keyring loader
2014-11-19 16:31:06 -08:00
Ryan Uber
67b179ccc9
command: basic rpc works for keys command
2014-11-19 16:30:21 -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
Ryan Uber
e20a724999
consul: first pass at keyring integration
2014-11-19 16:30:20 -08:00
Armon Dadgar
6be29e17c2
Merge pull request #478 from amalaviy/https
...
Added HTTPS support via a new HTTPS Port configuration option
2014-11-19 11:17:10 -08:00
Armon Dadgar
e9c7b1df93
consul: Increase maximum number of parallel readers
2014-11-18 18:46:43 -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
8a1969cc8c
consul: Fixing key list index calculation
2014-11-12 17:55:45 -08:00
Emil Hessman
c9333b1b9b
Fix missing arguments
2014-11-01 22:56:48 +01:00
Armon Dadgar
541b98a926
Gofmt
2014-10-20 10:21:31 -07:00
Armon Dadgar
ce4aa7beb5
Switching to the pinned version of msgpack
2014-10-17 18:26:19 -07:00
Armon Dadgar
ad445f5ac2
Encode/Decode test
2014-10-17 18:23:13 -07:00
Armon Dadgar
f37f5fde54
consul: Improving test reliability
2014-10-17 17:40:14 -07:00
Armon Dadgar
4f1fa3a4ce
Merge pull request #401 from hashicorp/f-healthcheck
...
Default services to "critical" state instead of "unknown"
2014-10-15 16:50:38 -07:00
Armon Dadgar
c8ac05b39e
consul: Fixing FSM path tests
2014-10-15 15:03:58 -07:00
Armon Dadgar
bb3324dd85
consul: Ensure FSM stores data in the data dir
2014-10-15 14:57:59 -07:00
Armon Dadgar
7380216911
consul: FSM stores state in a given path only
2014-10-15 14:56:12 -07:00
Armon Dadgar
be8051ec7e
consul: Allow providing a path for the state store
2014-10-15 14:55:04 -07:00
Ryan Uber
d2fc11c19d
consul/structs: keep HealthUnknown around for backward compatibility
2014-10-15 11:35:22 -07:00
Armon Dadgar
f8fc46dc57
consul: Reduce mmap size on 32bit
2014-10-15 11:32:40 -07:00
Ryan Uber
2f93e13da8
consul: kill remaining use of HealthUnknown
2014-10-15 10:14:46 -07:00
Armon Dadgar
d1d76856e6
consul: less aggressive deadlock timer. Fixes #389
2014-10-14 12:00:25 -07:00
Armon Dadgar
af4a955037
consul: Improve variable name
2014-10-14 11:04:43 -07:00
Armon Dadgar
e39d2ee675
consul: Reap left members ignoring state. Fixes #371
2014-10-14 11:02:26 -07:00
Armon Dadgar
93b209db50
consul: Log why invalidation happened. Fixes #390
2014-10-14 10:54:57 -07:00
Armon Dadgar
d3c3d9a1be
consul: Fixing graceful leave of current leader. Fixes #360 .
2014-10-13 22:14:43 -07:00
Armon Dadgar
e6ed387f42
consul: Deprecate ACLForceSet
2014-10-09 12:28:07 -07:00
Armon Dadgar
c832ea8aa3
consul: Fix non-deterministic ACL IDs
2014-10-09 12:23:32 -07:00
Armon Dadgar
39e8b1ffaa
consul: Fix non-deterministic session IDs
2014-10-09 11:54:47 -07:00
Armon Dadgar
c8f35aea45
consul: don't close a nil connection
2014-10-02 10:26:25 -07:00
Armon Dadgar
602828472d
agent: First pass at multi-DC support
2014-08-28 15:00:49 -07:00
Armon Dadgar
b5fb9d6dfb
consul: Testing user events
2014-08-26 19:26:55 -07:00
Armon Dadgar
20d55e2ec4
consul: Adding user event name tests
2014-08-26 19:20:02 -07:00
Armon Dadgar
be78e355de
consul: Adding user event handler for callbacks
2014-08-26 19:04:07 -07:00
Armon Dadgar
1c341e6766
consul: expose UserEvent from Serf
2014-08-26 18:50:03 -07:00
Armon Dadgar
9622e99861
consul: Deny delete anonymous or update of root policies
2014-08-22 14:55:09 -07:00
Armon Dadgar
333095691e
consul: Ensure node/service/check registration is in a single txn
2014-08-22 12:38:33 -07:00
Armon Dadgar
22e7205a5f
consul: fixing a unit test
2014-08-22 12:34:31 -07:00
Armon Dadgar
40ae65b277
consul: Refactor txn handling in state store
2014-08-22 12:27:12 -07:00
Armon Dadgar
43a7a20868
consul: Ensure authoritative cache is purged after update
2014-08-18 15:46:59 -07:00
Armon Dadgar
e56007753d
consul: Provide ETag to avoid expensive policy fetch
2014-08-18 15:46:59 -07:00
Armon Dadgar
25855b2362
consul: ACL enforcement for KV updates
2014-08-18 15:46:24 -07:00
Armon Dadgar
c7cb1f562b
consul: ACL enforcement for key reads
2014-08-18 15:46:24 -07:00
Armon Dadgar
f49d34d0e3
consul: Filter keys, refactor to interface
2014-08-18 15:46:24 -07:00
Armon Dadgar
614b0a1414
consul: Helpers to filter on ACL rules
2014-08-18 15:46:24 -07:00
Armon Dadgar
84488ed1f0
consul: Starting token enforcement
2014-08-18 15:46:23 -07:00
Armon Dadgar
2d5e869e69
consul: Prevent resolution of root policy
2014-08-18 15:46:23 -07:00
Armon Dadgar
10db4c7c8f
consul: Resolve parent ACLs
2014-08-18 15:46:23 -07:00
Armon Dadgar
ef171ca344
consul: Support management tokens
2014-08-18 15:46:23 -07:00
Armon Dadgar
a82439c713
consul: Adding some metrics for ACL usage
2014-08-18 15:46:23 -07:00
Armon Dadgar
827e7c9efa
consul: Create anonymous and master tokens
2014-08-18 15:46:22 -07:00
Armon Dadgar
01beaa60cc
consul: Testing down policies and multi-DC
2014-08-18 15:46:22 -07:00
Armon Dadgar
fe86c8c5ee
consul: Testing ACL resolution
2014-08-18 15:46:22 -07:00
Armon Dadgar
0c912f2c98
consul: Use Etag for policy caching
2014-08-18 15:46:22 -07:00
Armon Dadgar
b5e22203fc
consul: Support conditional policy fetch
2014-08-18 15:46:22 -07:00
Armon Dadgar
b5c9e65175
consul: Verify compilation of rules
2014-08-18 15:46:22 -07:00
Armon Dadgar
338f11c6cf
consul: Enable ACL lookup
2014-08-18 15:46:22 -07:00
Armon Dadgar
97a737b1ee
consul: Pulling in ACLs
2014-08-18 15:46:21 -07:00
Armon Dadgar
78049ad240
agent: ACL endpoint tests
2014-08-18 15:46:21 -07:00
Armon Dadgar
1b6806872d
consul: ACL Endpoint tests
2014-08-18 15:46:21 -07:00
Armon Dadgar
7cbb2225af
consul: Adding ACL endpoint
2014-08-18 15:46:21 -07:00
Armon Dadgar
b53ee80acd
consul: register the ACL queries
2014-08-18 15:46:21 -07:00
Armon Dadgar
70b84e44c9
consul: FSM support for ACLsg
2014-08-18 15:46:21 -07:00
Armon Dadgar
fea61d629b
consul: Adding ACLs to the state store
2014-08-18 15:46:21 -07:00
Armon Dadgar
3b4d8d5805
consul: ACL structs
2014-08-18 15:46:21 -07:00
Armon Dadgar
cae4b421a3
agent: Adding ACL master token
2014-08-18 15:46:20 -07:00
Armon Dadgar
a8063457f8
consul: ACL setting passthrough
2014-08-18 15:46:20 -07:00
William Tisäter
6b52d410b3
Run `go fmt`
2014-07-24 01:09:55 +02:00
William Tisäter
945e19e139
Don't override `ServiceTags`
2014-07-23 23:42:22 +02:00
William Tisäter
57d62eb492
Change order of fixtures
2014-07-23 23:42:22 +02:00
William Tisäter
37426f7410
Make service tag filter case-insensitive
2014-07-23 23:42:22 +02:00
William Tisäter
9ad8b9ff19
Make service index case-insensitive
2014-07-23 23:42:22 +02:00
William Tisäter
9359f899f5
Lowercase index key and lookup value if flag is set
2014-07-23 23:42:22 +02:00
William Tisäter
ee4de11741
Add case-insensitive flag to `MDBIndex`
2014-07-23 23:42:21 +02:00
William Tisäter
e5798c74d2
Add helper for lowercase list of strings
2014-07-23 23:42:21 +02:00
Armon Dadgar
ce9de56469
consul: Defer serf handler until initialized. Fixes #254 .
2014-07-22 09:36:58 -04:00
Armon Dadgar
746449ffed
Merge pull request #233 from nelhage/tls-no-subjname
...
Restore the 0.2 TLS verification behavior.
2014-07-01 13:41:00 -07:00
Nelson Elhage
12a7f765b6
Add some basic smoke tests for wrapTLSclient.
...
Check the success case, and check that we reject a self-signed
certificate.
2014-06-29 18:11:32 -07:00
Nelson Elhage
d174cbe7f4
Restore the 0.2 TLS verification behavior.
...
Namely, don't check the DNS names in TLS certificates when connecting to
other servers.
As of golang 1.3, crypto/tls no longer natively supports doing partial
verification (verifying the cert issuer but not the hostname), so we
have to disable verification entirely and then do the issuer
verification ourselves. Fortunately, crypto/x509 makes this relatively
straightforward.
If the "server_name" configuration option is passed, we preserve the
existing behavior of checking that server name everywhere.
No option is provided to retain the current behavior of checking the
remote certificate against the local node name, since that behavior
seems clearly buggy and unintentional, and I have difficulty imagining
it is actually being used anywhere. It would be relatively
straightforward to restore if desired, however.
2014-06-28 13:32:42 -07:00
Armon Dadgar
924e4bc7f1
Rename Expect to BootstrapExpect. Fixes #223 .
2014-06-19 17:08:55 -07:00
Armon Dadgar
92b6e947dd
consul: Minor cleanups
2014-06-18 16:15:28 -07:00
Robert Xu
7b456a6d6d
Minor cleanup to logic and testsuite.
...
Signed-off-by: Robert Xu <robxu9@gmail.com>
2014-06-18 18:47:05 -04:00
Robert Xu
bc4a4fe09b
Utilise new raft.SetPeers() method, move expect logic to leader.go.
...
This way, we don't use EnableSingleMode, nor cause chaos adding peers.
Signed-off-by: Robert Xu <robxu9@gmail.com>
2014-06-18 12:03:30 -04:00
Robert Xu
c60fd0542a
Add expect bootstrap '-expect=n' mode.
...
This allows for us to automatically bootstrap a cluster of nodes after
'n' number of server nodes join. All servers must have the same 'n' set, or
they will fail to join the cluster; all servers will not join the peer set
until they hit 'n' server nodes.
If the raft commit index is not empty, '-expect=n' does nothing because it
thinks you've already bootstrapped.
Signed-off-by: Robert Xu <robxu9@gmail.com>
2014-06-16 17:40:33 -04:00
Armon Dadgar
961a00c496
Adding server_name configuration for TLS
2014-06-13 11:10:27 -07:00
Robert B Gordon
470d0f1e58
Seems like we should actually check the reference count.
2014-06-13 11:25:01 -05:00
Armon Dadgar
93f4eb0a0f
consul: Start RPC before Raft, wait to accept connecitons
2014-06-11 10:17:58 -07:00
Armon Dadgar
938371ee40
consul: start RPC after fully initialized. Fixes #160
2014-06-11 09:46:44 -07:00
Armon Dadgar
ab4e3de185
consul: Avoid network for server RPC. Fixes #148 .
2014-06-10 19:12:36 -07:00
Armon Dadgar
476339b20c
consul: Provide output for serfHealth check. Fixes #176 .
2014-06-09 16:07:22 -07:00
Armon Dadgar
10f3007aa2
consul: Adding support for optional session name
2014-06-09 11:42:28 -07:00
Armon Dadgar
9a46a12fa5
consul: fixing use of nil log output. Fixes #203
2014-06-09 11:16:53 -07:00
Armon Dadgar
474e286aca
Rename shared msgpack handle
2014-06-08 14:02:42 -07:00
Andrew M Bursavich
8a3c1a9b47
reuse codec.MsgpackHandle
2014-06-07 01:13:38 -07:00
Armon Dadgar
b144633815
consul: Gossip the build using Serf
2014-06-06 15:36:40 -07:00
Armon Dadgar
e171df2e2c
consul: Sort datacenter list. Fixes #198
2014-06-06 14:12:40 -07:00
William Tisäter
cbdb54f22b
Log peers when `TestLeader_LeftServer` fail
2014-05-30 21:18:37 +02:00
William Tisäter
9e3ad6721c
Re-configure `LeaderLeaseTimeout` to pass validation
2014-05-30 20:57:39 +02:00
Armon Dadgar
acc048036b
consul: Ensure clients also implement LocalMember
2014-05-29 11:21:56 -07:00
Armon Dadgar
3874498374
Merge pull request #173 from hashicorp/f-agent-self
...
Add `/v1/agent/self` and return local agent config
2014-05-29 11:18:19 -07:00
Armon Dadgar
5124428ba7
consul: Conn pool clean, spare existing streams
2014-05-28 16:55:39 -07:00