Commit Graph

212 Commits

Author SHA1 Message Date
Chelsea Holland Komlo
44bacc3494 remove logic to reload RPC connections from agent 2018-06-08 13:14:40 -04:00
Michael Schurter
b20a0c4118 agent: global logger should use the same flags
Prior to this change logs from the global logger only used seconds:

```
2018/06/06 18:25:58 http: TLS handshake error from ...
```

After this change they properly use the microseconds flag:

```
2018/06/06 18:39:50.702447 http: TLS handshake error ...
```

They still lack a log level unfortunately.
2018-06-06 11:40:08 -07:00
Preetha Appan
4d1cc8f2bf Fix bug with determining when agent is a client
This fixes a bug introduced in commit e27caadca6 that sets a boolean flag
when the agent is a client. It incorrectly checked state before initializing
the client. This leads to Nomad clients not deregistering any services registered
in Consul after allocs are destroyed
2018-06-05 19:19:52 -05:00
Preetha Appan
a7668cd4ec Fix tests and move isClient to constructor 2018-06-01 15:59:53 -05:00
Alex Dadgar
09b90e4944 Actually disable the schedulers 2018-05-31 13:11:11 -07:00
Alex Dadgar
cc0a50b1b6 safety guard 2018-05-22 14:45:34 -07:00
Alex Dadgar
091e628b38 Unit test for dev agent 2018-05-22 14:45:34 -07:00
Alex Dadgar
598596c7f6 Do not bypass normal RPC codepath when running both client and server at once 2018-05-22 14:45:34 -07:00
Preetha Appan
f8427c847d minor code review fix 2018-04-10 15:33:01 -05:00
Preetha Appan
ffb622fbfd Dev mode should never persist nodeid 2018-04-10 12:34:14 -05:00
Preetha Appan
1ba9feb3b7 Lint fixes 2018-04-10 11:22:16 -05:00
Preetha Appan
86ced8aef2 Use preconfigured nodeID if there isn't a persisted node ID, and persist it if its not persisted. 2018-04-10 08:47:33 -05:00
Alex Dadgar
5194f5d6c7 WIP: Not setting node id properlperly 2018-04-09 18:01:28 -07:00
Chelsea Komlo
8294cd6684 Merge pull request #4046 from hashicorp/tls-same-file-reload
Check file contents when determining if agent should reload TLS confi…
2018-03-29 10:51:32 -04:00
Chelsea Holland Komlo
5d866366a7 make check fix 2018-03-28 19:11:51 -04:00
Chelsea Holland Komlo
e8af281dd3 return error when setting checksum; don't reload 2018-03-28 18:15:50 -04:00
Chelsea Holland Komlo
065133d716 check for nil, remove unnecessary set checksum call 2018-03-28 13:29:53 -04:00
Chelsea Holland Komlo
6e317fa6c6 set TLS checksum when parsing config
Refactor checksum comparison, always set checksum if it is empty
2018-03-28 09:56:11 -04:00
Mildred Ki'Lya
d31105c69e Allow to specify total memory on agent configuration
Allow to set the total memory of an agent in its configuration file. This
can be used in case the automatic detection doesn't work or in specific
environments when memory overcommit (using swap for example) can be
desirable.
2018-03-27 15:46:18 -05:00
Chelsea Holland Komlo
f8df2071ef check file contents when determining if agent should reload TLS configuration 2018-03-27 15:42:20 -04:00
Chelsea Holland Komlo
490e70e9ce code review feedback 2018-03-26 10:55:22 -04:00
Chelsea Holland Komlo
8e83cf8d8a Allow TLS configurations for HTTP and RPC connections to be reloaded separately 2018-03-21 17:51:08 -04:00
James Rasell
dda9207b06 Update Consul check params from using health-check to check. 2018-03-20 16:03:58 +01:00
James Rasell
2439310951 Allow Nomads Consul health checks to be configurable.
This change allows the client HTTP and the server HTTP, Serf and
RPC health check names within Consul to be configurable with the
defaults as previous. The configuration can be done via either a
config file or using CLI flags.

Closes #3988
2018-03-19 19:37:56 +01:00
Alex Dadgar
b49462b5ff Heartbeat uses client rpc advertise and server defaults server rpc advertise addr 2018-03-16 16:47:08 -07:00
Alex Dadgar
5976511b05 Separate client and server rpc advertise addresses 2018-03-16 16:47:08 -07:00
Michael Schurter
b20421de3b Merge pull request #3984 from hashicorp/f-loosen-consul-skipverify
Replace Consul TLSSkipVerify handling
2018-03-16 11:21:28 -07:00
Michael Schurter
9f50ab334c Replace Consul TLSSkipVerify handling
Instead of checking Consul's version on startup to see if it supports
TLSSkipVerify, assume that it does and only log in the job service
handler if we discover Consul does not support TLSSkipVerify.

The old code would break TLSSkipVerify support if Nomad started before
Consul (such as on system boot) as TLSSkipVerify would default to false
if Consul wasn't running. Since TLSSkipVerify has been supported since
Consul 0.7.2, it's safe to relax our handling.
2018-03-14 17:43:06 -07:00
Alex Dadgar
61476d09a5 Always add core scheduler and detect invalid schedulers 2018-03-14 10:53:27 -07:00
Kyle Havlovitz
2c873adba4 Refactor redundancy_zone/upgrade_version out of client meta 2018-01-29 20:03:38 -08:00
Chelsea Komlo
9d006ecd0d Merge pull request #3492 from hashicorp/f-client-tls-reload
Client/Server TLS dynamic reload
2018-01-23 05:51:32 -05:00
Chelsea Holland Komlo
bbc56860ac adding additional test assertions; differentiate reloading agent and http server 2018-01-16 07:34:39 -05:00
Chelsea Holland Komlo
c70702e802 call reload on agent, client, and server separately 2018-01-08 09:56:31 -05:00
Chelsea Holland Komlo
359358d240 code review fixups 2018-01-08 09:21:06 -05:00
Chelsea Holland Komlo
184fbfe5bd prevent races when reloading, fully shut down raft 2018-01-08 09:21:06 -05:00
Chelsea Holland Komlo
7b749579a2 add ability to upgrade/downgrade nomad agents tls configurations via sighup 2018-01-08 09:21:06 -05:00
Kyle Havlovitz
c2d0c11f9e Add autopilot functionality based on Consul's autopilot 2017-12-18 14:29:41 -08:00
Kyle Havlovitz
de90db139a Added support for v2 raft APIs and -raft-protocol option 2017-12-12 10:17:16 -06:00
Chelsea Komlo
fa9fd4422c Nomad agent reload TLS configuration on SIGHUP (#3479)
* Allow server TLS configuration to be reloaded via SIGHUP

* dynamic tls reloading for nomad agents

* code cleanup and refactoring

* ensure keyloader is initialized, add comments

* allow downgrading from TLS

* initalize keyloader if necessary

* integration test for tls reload

* fix up test to assert success on reloaded TLS configuration

* failure in loading a new TLS config should remain at current

Reload only the config if agent is already using TLS

* reload agent configuration before specific server/client

lock keyloader before loading/caching a new certificate

* introduce a get-or-set method for keyloader

* fixups from code review

* fix up linting errors

* fixups from code review

* add lock for config updates; improve copy of tls config

* GetCertificate only reloads certificates dynamically for the server

* config updates/copies should be on agent

* improve http integration test

* simplify agent reloading storing a local copy of config

* reuse the same keyloader when reloading

* Test that server and client get reloaded but keep keyloader

* Keyloader exposes GetClientCertificate as well for outgoing connections

* Fix spelling

* correct changelog style
2017-11-14 17:53:23 -08:00
Diptanu Choudhury
3e1d24876e Adding support for tagged metrics 2017-11-01 13:15:06 -07:00
Diptanu Choudhury
4c9ab7b760 Publishing metrics for job summary 2017-11-01 13:15:06 -07:00
Michael Schurter
71178c97a6 Agent Health Endpoint 2017-10-13 15:37:44 -07:00
Alex Dadgar
a9e3a41407 Enable more linters 2017-09-26 15:26:33 -07:00
Alex Dadgar
ddc2efa4ac sync 2017-09-19 10:08:23 -05:00
Chelsea Holland Komlo
c3006c685f improve documentation
move metrics to telemetry; copy to client config
2017-09-06 21:38:06 +00:00
Chelsea Holland Komlo
1df5310c6e tagged metrics config options should be on telemetry config
better api example, add telemetry documentation
2017-09-06 15:25:36 +00:00
Chelsea Holland Komlo
4085560503 add http endpoint for in memory metrics
prevent against flaky test due to timing/initialization issues
2017-09-06 13:51:19 +00:00
Armon Dadgar
44fe0afc9f Passthrough replication token for token/policy replication 2017-09-04 13:05:53 -07:00
Armon Dadgar
0dc6a1a9c7 agent: thread ACL config to client 2017-09-04 13:04:45 -07:00
Armon Dadgar
2329fbcd28 agent: thread through ACL config to Server 2017-09-04 13:04:45 -07:00