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
Armon Dadgar
485f0a0c93
agent: Fixing port collision in tests
2014-11-19 11:51:25 -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
Atin Malaviya
f4fd8453ed
Added HTTPS support via a new HTTPS Port configuration option similar to the HTTP Port.
2014-11-17 14:29:35 -05:00
Armon Dadgar
84649b5423
agent: Fixing multiple headers for /v1/event/list endpoint. Fixes #361
2014-10-13 17:53:54 -07:00
Armon Dadgar
77e94cfd38
agent: First pass at event endpoints
2014-08-28 13:42:07 -07:00
Armon Dadgar
3e4bd6a2ec
agent: ACL violation returns 403 code
2014-08-22 12:59:47 -07:00
Armon Dadgar
343f69504b
agent: Rename acl delete to destroy
2014-08-18 15:46:58 -07:00
Armon Dadgar
88c2a9c947
agent: Adding token parsing
2014-08-18 15:46:23 -07:00
Armon Dadgar
fee3524dea
agent: Special handler if ACL support is disabled
2014-08-18 15:46:23 -07:00
Armon Dadgar
78049ad240
agent: ACL endpoint tests
2014-08-18 15:46:21 -07:00
Armon Dadgar
22658aa781
agent: ACL endpoint
2014-08-18 15:46:21 -07:00
Eric Connell
a5775aae24
modified so ?pretty=anything will work
2014-08-01 14:28:46 -06:00
Eric Connell
e3c4052982
make pretty condition more readable
2014-08-01 14:24:36 -06:00
Eric Connell
90e8e1d97b
added URL query parameter of "pretty=true" to output formatted json from the HTTP API
2014-08-01 14:11:51 -06:00
William Tisäter
d0e447d29b
Add `/v1/agent/self` and return local agent config
2014-05-27 01:15:33 +02:00
Armon Dadgar
0119ec7f0a
agent: First pass at session endpoints
2014-05-20 16:25:29 -07:00
Armon Dadgar
416ff8f7d6
agent: Adding UI services endpoint
2014-04-30 23:43:59 -04:00
Armon Dadgar
acf67a1630
agent: Adding node UI endpoint
2014-04-30 23:43:59 -04:00
Armon Dadgar
fbce850317
agent: Adding nodes UI endpoint
2014-04-30 23:43:59 -04:00
Armon Dadgar
3fe10ccb57
agent: Redirect to UI if we have one
2014-04-30 23:43:58 -04:00
Armon Dadgar
1a4cb628f5
agent: Simplify serving of ui files
2014-04-30 23:43:57 -04:00
Armon Dadgar
f0c9ba4c01
agent: Improving UI file serving
2014-04-30 23:43:56 -04:00
Armon Dadgar
e20b70b9f6
agent: Adding endpoint to serve the UI
2014-04-30 23:43:56 -04:00
Armon Dadgar
2739abab7b
agent: Pass UiDir into the HTTP layer
2014-04-30 23:43:56 -04:00
Armon Dadgar
57a45ead6b
Merge pull request #68 from hashicorp/f-consistency
...
Adding support for "stale" and "consistent" read modes
2014-04-21 15:55:31 -07:00
Armon Dadgar
00bedd4020
agent: Fix decoding of checks. Fixes #60
2014-04-21 15:02:36 -07:00
Armon Dadgar
386d60f8b2
agent: Remove wrapQuery, call setMeta directly
2014-04-21 12:40:11 -07:00
Armon Dadgar
3fbbbc4eea
agent: Parse the consistency flags
2014-04-21 12:26:12 -07:00
Armon Dadgar
78f7cb1d5a
agent: Fixing similar deregister routing bug with checks
2014-04-18 10:56:00 -07:00
Armon Dadgar
b40039b5b8
agent: Fix service deregister routing
2014-04-18 10:54:18 -07:00
Jacques Fuentes
3506b38a40
Ensure we write json header before writing bytes
...
In net/http once we've issued a Write() the response is sent
over the wire including the header! The tests didn't catch
this because I used a net/http/httptest.RequestRecorder
which doesn't follow those semantics.
2014-04-17 14:53:07 -04:00
Jacques Fuentes
2b6ee141cb
HTTP: add content-type: application/json header
2014-04-17 14:38:14 -04:00
Armon Dadgar
6cfde2bf12
agent: First pass at KVS endpoints
2014-03-31 17:12:10 -07:00
Armon Dadgar
c7d27cf424
agent: Use EnableDebug to control adding pprof HTTP endpoints
2014-03-19 17:50:57 -07:00
Armon Dadgar
c58c53f448
agent: RPC changes and blocking query support
2014-02-05 14:36:13 -08:00
Armon Dadgar
959ea3d5ec
agent: Skeleton for HTTP based service/check registration
2014-01-30 14:58:36 -08:00
Armon Dadgar
cb7541c7af
Exposing the agent checks and services over HTTP endpoints
2014-01-20 15:00:52 -10:00
Armon Dadgar
779bc3b50b
First pass at health endpoints
2014-01-10 15:13:37 -08:00
Armon Dadgar
5a087809dc
Adding more HTTP endpoints
2014-01-03 17:15:51 -08:00
Armon Dadgar
0061b9a105
Adding DNS based node lookup
2014-01-02 17:58:58 -08:00
Armon Dadgar
1e035d5453
Rename HTTP server method
2014-01-02 11:45:58 -08:00
Armon Dadgar
5c874584be
Adding index page with 404 catchall
2013-12-24 17:09:51 -08:00
Armon Dadgar
37aa0ae7a5
Better error logging
2013-12-24 12:22:42 -08:00
Armon Dadgar
ead9c42abc
Finish implementing the HTTP catalog interface
2013-12-24 11:55:14 -08:00
Armon Dadgar
39d9e3e78f
More HTTP endpoints
2013-12-23 16:20:51 -08:00
Armon Dadgar
f062e31be7
Adding catalog datacenter http methods
2013-12-23 14:26:34 -08:00
Armon Dadgar
469245a06d
Working on Agent HTTP interface
2013-12-23 11:38:51 -08:00