Commit Graph

82 Commits

Author SHA1 Message Date
Nicholas Capo 98eb935392 command/agent: HTTP Check: Create httpClient in Start()
For long (>10s) interval checks the http timeout is 10s, otherwise thetimeout is the interval. This means that a check *should* return
before the next check begins.
2015-01-13 00:01:15 +00:00
Nicholas Capo 50853265dd command/agent: Stop HTTP checks when the check is removed 2015-01-12 22:34:39 +00:00
Nicholas Capo fb5ba8d97d command/agent: Add simple HTTP check type
These checks make an `HTTP GET` request every Interval to the specified URL.
The status of the service depends on the HTTP Response Code.
`200` is passing, `503` is warning and anything else is failing.
2015-01-09 16:43:24 -06:00
Ryan Uber a24f6e3d4d agent: test service and check unloading 2015-01-07 22:32:14 -08:00
Ryan Uber 51fe9f32ff agent: consolidate service loading code, better logging 2015-01-07 22:01:43 -08:00
Ryan Uber cfde9313de agent: separate service and check loading/unloading concerns 2015-01-07 22:01:20 -08:00
Ryan Uber 0b9f2b0954 agent: persist service/check data using hashed service/check IDs (fixes #573) 2015-01-07 19:11:21 -08:00
Veres Lajos 3b1068387a typofixes - https://github.com/vlajos/misspell_fixer 2014-12-04 23:25:06 +00:00
Ryan Uber dd4fadfc9e agent: persist CheckType with health checks 2014-11-29 12:54:37 -08:00
Ryan Uber b7587cac42 agent: allow config reload to modify checks/services persistence
This change consolidates loading services and checks from both config
and persisted state into methods on the agent. As part of this, we
introduce optional persistence when calling RemoveCheck/RemoveService.

Fixes a bug where config reloads would kill persisted services/checks.
Also fixes an edge case:

1. A service or check is registered via the HTTP API
2. A new service or check definition with the same ID is added to config
3. Config is reloaded

The desired behavior (which this implements) is:

1. All services and checks deregistered in memory
2. All services and checks in config are registered first
3. All persisted checks are restored using the same logic as the agent
   start sequence, which prioritizes config over persisted, and removes
   any persistence files if new config counterparts are present.
2014-11-26 12:46:42 -08:00
Ryan Uber 9f9087badb agent: prefer config over persisted services/checks (#497) 2014-11-24 19:40:53 -08:00
Ryan Uber 2ebe85414f agent: pass error through when writing state files 2014-11-24 01:58:39 -08:00
Ryan Uber 79ba25b94d agent: default restored checks to critical status 2014-11-24 01:15:18 -08:00
Ryan Uber 46a5272a8a agent: first pass at local service and check persistence 2014-11-24 01:10:27 -08:00
Ryan Uber 8a652c6ffa agent: fix loading keyring on agent start 2014-11-19 16:37:40 -08:00
Ryan Uber 7a74f559b9 command: remove -init argument from keyring, auto-persist keyrings when using agent -encrypt 2014-11-19 16:35:13 -08:00
Ryan Uber 431b366d4f agent: split keyring functionality out of agent.go 2014-11-19 16:32:32 -08:00
Ryan Uber 2220ccdac2 command: various cleanup 2014-11-19 16:31:06 -08:00
Ryan Uber 353b67826a command: use separate key files for LAN/WAN 2014-11-19 16:31:06 -08:00
Ryan Uber 530f3ba747 command/keys: refactor, restrict key operations to server nodes 2014-11-19 16:31:06 -08:00
Ryan Uber 8a40f3888c agent: move keyring initialization out of agent, add -init option to keys command 2014-11-19 16:31:06 -08:00
Ryan Uber 0952535e33 agent: fix keyring loading when config is passed off 2014-11-19 16:31:06 -08:00
Ryan Uber b6037ef323 agent: clean up keyring file implementation 2014-11-19 16:31:06 -08:00
Ryan Uber fcb0961436 agent: refactor keyring loader 2014-11-19 16:31:06 -08:00
Ryan Uber 46ce9e936f command/keys: remove key command implemented 2014-11-19 16:30:22 -08:00
Ryan Uber 1ac6b10aed command/keys: use key command implemented 2014-11-19 16:30:22 -08:00
Ryan Uber 7b6f3d6dcc agent: install key command implemented 2014-11-19 16:30:22 -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 471ee9ce8f command: create serf dir if it doesn't exist, document -disable-keyring arg 2014-11-19 16:30:21 -08:00
Ryan Uber 0da6e08d9d consul: fix json marshaling 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
Ryan Uber df5859580f agent: pass notes field through for checks inside of service definitions. Fixes #449 2014-11-06 18:25:21 -08:00
Ryan Uber 2319460904 agent: initialize local consul service tags to fix service sync 2014-10-17 14:29:12 -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
Ryan Uber cfca160cd5 formatting 2014-10-15 14:56:15 -07:00
Ryan Uber 2f93e13da8 consul: kill remaining use of HealthUnknown 2014-10-15 10:14:46 -07:00
Ryan Uber b1e8d351ab agent: re-use ConsulServiceID from consul package 2014-10-14 15:44:11 -07:00
Ryan Uber 4576b4eb29 agent: auto-register the consul service on server nodes 2014-10-14 15:35:00 -07:00
Armon Dadgar 93c17db1b2 agent: remove userEventEnc type 2014-08-28 10:56:30 -07:00
Armon Dadgar 2d03146d3b agent: Adding event ingestion 2014-08-27 17:01:10 -07:00
Armon Dadgar 314743c111 agent: working on user events 2014-08-27 16:49:12 -07:00
Armon Dadgar 1c341e6766 consul: expose UserEvent from Serf 2014-08-26 18:50:03 -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
Armon Dadgar 924e4bc7f1 Rename Expect to BootstrapExpect. Fixes #223. 2014-06-19 17:08:55 -07:00
Armon Dadgar 5b2941d43e Fixing merge conflict 2014-06-18 15:48:46 -07:00
Armon Dadgar a05e1aee15 agent: Fixing missing copy of RejoinAfterLeave flag. #110 2014-06-18 10:32:19 -07:00
Armon Dadgar 10c120bf9d agent: Fix issues with re-registration. Fixes #216 2014-06-17 16:48:19 -07: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