Alex Dadgar
bac5cb1e8b
Scheduler uses allocated resources
2018-10-02 17:08:25 -07:00
Alex Dadgar
c0de218747
plugin dir parsing
2018-08-30 13:43:09 -07:00
Alex Dadgar
bff1669ee4
Plugin config parsing
2018-08-29 17:06:01 -07:00
Alex Dadgar
40fec81315
Merge pull request #4277 from hashicorp/f-retry-join-clients
...
Add go-discover support to Nomad clients
2018-06-01 16:57:40 +00:00
Alex Dadgar
aca8d5cece
Actually disable the schedulers
2018-05-31 13:11:11 -07:00
Alex Dadgar
4765b62284
Improve validation/defaulting, handle start-join
...
This commit:
* Improves how we combine the old retry-* fields and the new stanza and
how it is validated
* Handles the new stanza setting start_join
* Fixes integration test to not bind to the standard port and instead be
randomized.
* Simplifies parsing of the old retry_interval
* Fixes the errors from retry join being masked
* Flags get parsed into new server_join stanza
2018-05-31 10:53:26 -07:00
Chelsea Holland Komlo
2bf2af4378
ensure default value of 30s is set for server_join stanza
2018-05-31 10:50:04 -07:00
Chelsea Holland Komlo
ebc758aa0e
add stronger protections for nil pointers in server join merge
2018-05-31 10:50:04 -07:00
Chelsea Holland Komlo
10aff14509
update config parse test
...
documentation fixes
2018-05-31 10:50:04 -07:00
Chelsea Holland Komlo
ac1411ce95
RetryInterval should be a time.Duration
2018-05-31 10:50:04 -07:00
Chelsea Holland Komlo
e79bc29e1a
set retryInterval and other code feedback
2018-05-31 10:50:04 -07:00
Chelsea Holland Komlo
a4e514e07f
update server_join naming and improve logging
2018-05-31 10:50:03 -07:00
Chelsea Holland Komlo
064b5481e0
add server join info to server and client
2018-05-31 10:50:03 -07:00
Mildred Ki'Lya
1017cbe8ab
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
Alex Dadgar
34211f00a7
Allow separate enterprise config overlay
2018-03-22 13:53:08 -07:00
Josh Soref
3e2f500cf9
spelling: largely
2018-03-11 18:21:52 +00:00
Josh Soref
680bbd6d4f
spelling: encountered
2018-03-11 17:58:59 +00:00
Josh Soref
c74245279b
spelling: arbitrary
2018-03-11 17:40:03 +00:00
Mahmood Ali
bebafb5234
Add tags option to datadog telemetry
...
Expose an global tags option in telemetry config for dogstatsd, for
purposes of distinguishing between multiple nomad cluster metrics.
2018-02-06 12:08:37 -05:00
Kyle Havlovitz
2ccf565bf6
Refactor redundancy_zone/upgrade_version out of client meta
2018-01-29 20:03:38 -08:00
Kyle Havlovitz
1c07066064
Add autopilot functionality based on Consul's autopilot
2017-12-18 14:29:41 -08:00
Kyle Havlovitz
b775fc7b33
Added support for v2 raft APIs and -raft-protocol option
2017-12-12 10:17:16 -06:00
Alex Dadgar
05b1588cea
Only publish metric when the task is running and dev mode publishes metrics
2017-11-15 13:21:06 -08:00
Chelsea Komlo
2dfda33703
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
Alex Dadgar
701f462d33
remove atlas
2017-11-02 11:27:21 -07:00
Alex Dadgar
e5ec915ac3
sync
2017-09-19 10:08:23 -05:00
Chelsea Holland Komlo
035fab0c8d
enabling prometheus metrics should be a config option
2017-09-13 19:21:21 +00:00
Chelsea Holland Komlo
66fa05405a
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
0ef43c3c5f
final code review fixups
2017-09-05 18:47:44 +00:00
Chelsea Holland Komlo
b4d21869ca
update comments
2017-09-05 14:13:34 +00:00
Chelsea Holland Komlo
5c10a9325e
parse config for metrics fields
2017-09-05 14:13:34 +00:00
Armon Dadgar
3e46094cee
Passthrough replication token for token/policy replication
2017-09-04 13:05:53 -07:00
Armon Dadgar
3efdf1f7d9
Address @chelseakomlo comments
2017-09-04 13:04:45 -07:00
Armon Dadgar
018973aea8
Address @dadgar feedback
2017-09-04 13:04:45 -07:00
Armon Dadgar
9cd8ac832f
agent: Adding ACL block configuration
2017-09-04 13:04:45 -07:00
Alex Dadgar
d6187cd3e8
Fix tests
2017-08-16 16:26:52 -07:00
Alex Dadgar
1a86aecf55
Add version package
...
This PR adds a version package and consolidates version strings into a
Version struct.
2017-08-16 15:44:21 -07:00
Luke Farnell
f0ced87b95
fixed all spelling mistakes for goreport
2017-08-07 17:13:05 -04:00
Alex Dadgar
c106df9215
Switch to in-process agent
2017-07-20 21:07:32 -07:00
Alex Dadgar
747d67eb3f
Allow tuning of heartbeat ttls
...
This PR allows tuning of heartbeat TTLs. An example of very aggressive
settings is as follows:
```
server {
heartbeat_grace = "1s"
min_heartbeat_ttl = "1s"
max_heartbeats_per_second = 200.0
}
```
2017-07-19 09:38:35 -07:00
Alex Dadgar
c643e6b0d1
Add config options
2017-07-07 12:05:56 -07:00
Michael Schurter
b9c9e6e557
Fix no_host_uuid parsing
...
Need to pointerify it to default to true since we can't tell false from
unset if it's not a pointer.
2017-07-03 17:41:20 -07:00
Michael Schurter
d9e032aabf
Merge pull request #2735 from hashicorp/f-no_host_uuid-true
...
Default no_host_uuid to true instead of false
2017-07-03 13:18:25 -07:00
Alexandre Dantas
100b51ac6a
Fixing issue where use_node_name was always been set as false when merging telemetry configurations
2017-07-02 00:31:09 -03:00
Michael Schurter
e9c357187c
Properly normalize IPv6 addresses
...
A fix to #2739 instead of forcing IPv6 users to always specify a port as
well.
Prior to this commit IPv6 advertise addresses which lacked a port would
fail instead of having the default port added because
`net.SplitHostPort(someipv6)` returns a different error than
`net.SplitHostPort(someipv4)`.
2017-06-29 10:46:31 -07:00
Michael Schurter
e81252ba45
Default no_host_uuid to true instead of false
...
The host UUID isn't unique in many virtualized cases and of dubious
value even when it is univerally unique. Default to a random UUID.
2017-06-23 16:23:01 -07:00
Michael Schurter
ffc2b36dc7
Merge pull request #2636 from hashicorp/f-gc-alloc-limit
...
Add new gc_max_allocs tuneable
2017-05-30 16:14:09 -07:00
Michael Schurter
a7e26e0a3e
Don't autoadvertise private ip if bind=localhost
...
A slight improvement to #2399 - if bind is localhost, return an error
instead of advertising a private ip. The advertised ip isn't valid and
will just cause errors on use. It's better to fail with an error message
instructing users how to fix the problem.
2017-05-30 11:47:29 -07:00
Michael Schurter
49ce86ee0a
Lower default gc_max_allocs to 50
2017-05-12 15:57:27 -07:00
Michael Schurter
5fd438661d
Merge pull request #2399 from multani/sockaddr-template
...
Add support for late binding to IP addresses using go-sockaddr/template
2017-05-11 17:25:03 -07:00
Michael Schurter
0453c2709c
Add new gc_max_allocs tuneable
...
More than gc_max_allocs may be running on a node, but terminal allocs
will be garbage collected to try to keep the total number below the
limit.
2017-05-11 17:18:02 -07:00
Alex Dadgar
177bd14718
rename cpu_total_compute and docs
2017-03-14 14:15:49 -07:00
Alex Dadgar
a1a7941dec
Various fixes
...
This PR:
* Uses Go 1.8 executable lookup
* Stores any err message from stats init method
* Allows overriding of Cpu Compute for hosts where it can't be detected
2017-03-14 12:56:31 -07:00
Jonathan Ballet
562deb6262
Default to private IP advertise address in non-dev mode
2017-03-13 23:01:11 +01:00
Jonathan Ballet
3c5c49bedb
Parse template before splitting host/port
...
Ref: a33af1ca0b (r105444568)
2017-03-13 21:40:37 +01:00
Alex Dadgar
70e4feb045
Limit parallelism during garbage collection
...
This PR introduces a parallelism limit during garbage collection. This
is used to avoid large resource usage spikes if garbage collecting many
allocations at once.
2017-03-10 16:27:00 -08:00
Alex Dadgar
6910678c21
Allow random UUID
2017-02-27 13:42:37 -08:00
Alex Dadgar
6afcba9e22
Allow specification of eval/job gc threshold
2017-02-27 11:58:10 -08:00
Jonathan Ballet
72b0a7f34d
Add support for late binding to IP addresses using go-sockaddr/template
2017-02-26 23:28:23 +01:00
Alex Dadgar
297ee0b1bd
Fix detection of missing port
2017-02-16 13:52:39 -08:00
David Bresson
1c81a71f13
avoid nil pointer dereference
2017-02-03 08:39:57 -08:00
Diptanu Choudhury
d0fe4a67a5
Merging GC related config values
2017-02-02 13:38:11 -08:00
Alex Dadgar
7fae2d2cea
Fix Consul Config Merging/Copying
...
This PR fixes config merging/copying code.
Fixes https://github.com/hashicorp/nomad/issues/2264
2017-02-02 11:12:07 -08:00
Diptanu Choudhury
11d7cb1230
Making the GC related fields tunable
2017-01-31 15:51:20 -08:00
Diptanu Choudhury
e927de02d2
Moved functions to helper from structs
2017-01-18 15:55:14 -08:00
Jorge Marey
189a49b74d
Add option to set nodename instead of hostname on telemetry values
2016-12-21 09:53:29 +01:00
Michael Schurter
407657519f
Don't require serf advertise address for clients
2016-12-02 11:07:00 -08:00
Michael Schurter
b3ede6a5b7
Use net.JoinHostPort instead of fmt.Sprintf
...
Using fmt.Sprintf breaks IPv6 addresses.
2016-11-28 10:38:54 -08:00
Alex Dadgar
9497991590
Updated AWS speeds and network_speed now overrides
...
This PR:
* Makes AWS network speeds more granular
* Makes `network_speed` an override and not a default
* Adds a default of 1000 MBits if no network link speed is detected.
Fixes #1985
2016-11-15 13:55:51 -08:00
Michael Schurter
8b0511713f
Merge pull request #1955 from hashicorp/b-fix-default-advertise
...
Choose safer default advertise address
2016-11-09 16:03:17 -08:00
Michael Schurter
cb1e2d2194
Fix comment
2016-11-09 15:51:00 -08:00
matt maier
c6504f3418
Update Circonus integration expose Check Display Name and Check Tags
...
configuration options.
2016-11-09 15:12:30 -05:00
Michael Schurter
a75e5b5803
Addresses are just addresses - no ports
...
Store address+port in an unexported field for ease-of-use
2016-11-09 11:49:55 -08:00
Michael Schurter
6d83a192cf
Fix int pointer formatting and server config test
2016-11-08 16:02:20 -08:00
Michael Schurter
4235d65011
Move config normalization into config.go to ease testing
2016-11-08 15:44:10 -08:00
Michael Schurter
c735589f41
Choose safer default advertise address
...
* -dev mode defaults bind & advertise to localhost
* Normal mode defaults bind to 0.0.0.0 & advertise to the resolved
hostname. If the hostname resolves to localhost it will refuse to
start and advertise must be manually set.
2016-11-08 11:17:16 -08:00
Seth Vargo
4a1fa67f26
Separate agent configuration into its own pages
...
I apologize in advance for the rather long PR, but unfortunately there
is not an easy way to break this up into smaller chunks. This separates
the agent configuration into smaller, more consumable pieces just like
the job specification.
2016-11-02 18:30:00 -04:00
Diptanu Choudhury
cf35aeac84
Moving the TLSConfig to structs
2016-10-25 15:57:38 -07:00
Diptanu Choudhury
eefc8db3b3
Enabling TLS on cli
2016-10-25 10:39:17 -07:00
Diptanu Choudhury
eb813a660f
Updated the spec definition for tls config
2016-10-24 15:36:26 -07:00
Diptanu Choudhury
e03927bb5c
Changed the way TLS config is parsed
2016-10-24 13:56:19 -07:00
Diptanu Choudhury
2e3118e69c
Implemented TLS support for http and rpc
2016-10-23 22:22:00 -07:00
Alex Dadgar
703b8423a3
Merge pull request #1816 from jippi/add-datadog-telemetry
...
Add datadog telemetry
2016-10-18 09:53:37 -07:00
Diptanu Choudhury
0f6e0d10b6
Enable serf encryption ( #1791 )
...
* Added the keygen command
* Added support for gossip encryption
* Changed the URL for keyring management
* Fixed the cli
* Added some tests
* Added tests for keyring operations
* Added a test for removal of keys
* Added some docs
* Fixed some docs
* Added general options
2016-10-17 10:48:04 -07:00
Christian Winther
3e953d725a
initial work on datadog telemetry
2016-10-15 10:49:33 +02:00
Michael Schurter
44219cc083
Put docker volume support behind conf flag
...
Also add tests and fix bug with logging driver configuration.
2016-10-03 15:02:50 -07:00
Diptanu Choudhury
a80f67d097
Merging telemetry configs
2016-08-31 11:24:01 -07:00
Alex Dadgar
93b5fab63b
Parse Vault Config
2016-08-17 16:23:29 -07:00
Diptanu Choudhury
9a75052d2c
Merge pull request #1518 from pubnub/feature/chroot-map-rebase
...
Add config field to specify chroot mapping for exec driver
2016-08-10 17:00:03 -07:00
Jay Oster
7df692226a
Add config field to specify chroot mapping for exec driver
...
- Same format as used by the internal chroot mapping
- Map: source_path -> dest_path
- Example HCL:
client {
chroot_env {
"/etc" = "/etc"
"/lib" = "/lib"
"/opt/projects/foo/bin" = "/usr/bin"
}
}
2016-08-03 17:17:17 -07:00
Diptanu Choudhury
41b540fbc8
Allow operators to opt into publishing node and alloc metrics
2016-08-01 19:52:20 -07:00
matt maier
7f2af04bcd
Change circonus_broker_search_tag to circonus_broker_select_tag to match option in consul
2016-07-22 15:16:14 -04:00
matt maier
02d71eb6d3
Circonus integration for telemetry metrics
2016-07-22 12:33:10 -04:00
Sean Chittenden
d17af396ca
Create config.DefaultConsulConfig()
2016-06-16 20:41:05 -07:00
Diptanu Choudhury
14747848f7
Removed the stats block from client configuration
2016-06-16 21:30:29 +01:00
Alex Dadgar
aea21affdb
Document consul configuration
2016-06-14 15:21:57 -07:00
Sean Chittenden
6e22b680ce
Disambiguate auto_join
from auto_register
, rename reg to auto_advertise
.
...
Provide an option that describes the value to the user vs the
operation performed by the software. Momentarily introducing
`auto_join`
2016-06-14 12:11:38 -07:00
Sean Chittenden
e69232dd73
Commit miss, bump to 5s
2016-06-10 15:54:39 -04:00
Sean Chittenden
82d537fbd9
Update the nomad_server_service
default from nomad-server
to just nomad
.
2016-06-10 15:50:11 -04:00
Sean Chittenden
e727fd8c3c
Centralize the creation of a consul/api.Config struct.
...
While documented, the consul.timeout parameter wasn't ever set
except one-off in the Consul fingerprinter.
2016-06-10 15:50:11 -04:00
Sean Chittenden
bd779c3719
Reconcile renamed structures during rebase
2016-06-10 15:50:11 -04:00
Sean Chittenden
b509da2d0c
Create a nomad/structs/config
to break an import cycle.
...
Flattening and normalizing the various Consul config structures and
services has led to an import cycle. Break this by creating a new package
that is intended to be terminal in the import DAG.
2016-06-10 15:48:36 -04:00
Sean Chittenden
840b49a720
Distill config.Config.ConsulConfig down to config.Config.Consul
...
The enclosed struct provides the necessary context
2016-06-10 15:48:36 -04:00
Diptanu Choudhury
a64062d6a6
Fixed the compilation on linux
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
c46400597e
Making the stats collection interval and number of data points to keep in memory configurable
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
bf27cc1261
Merge pull request #1174 from hashicorp/f-config-consul-block
...
Using the auto-register flag
2016-05-18 04:16:38 +02:00
Dara Kong
9b2b39c7d6
Fix "http_api_response_headers" config not working
...
On startup, the agent starts with either a dev or default config. Extra
config files are merged into final config.
The HTTPAPIResponseHeaders config was missing from the merge logic
therefore it would always result in empty value (regardlesss of any
config files specified).
2016-05-16 20:57:54 -07:00
Diptanu Choudhury
c07770fd4d
Using the auto-register flag
2016-05-16 18:23:01 +02:00
Sean Chittenden
dc28ab0cb5
Speling police
2016-05-15 09:41:34 -07:00
Diptanu Choudhury
df9d256132
Making Nomad register services with consul in dev mode
2016-05-13 10:19:49 -07:00
Diptanu Choudhury
83fed62a0a
Implemented registering client and server services
2016-05-11 16:07:02 -07:00
Diptanu Choudhury
075a1379c0
Added parsing logic for config block
2016-05-11 15:22:58 -07:00
Diptanu Choudhury
891b201eef
removing interfaces from config
2016-04-07 13:25:38 -07:00
Diptanu Choudhury
98fd0b889a
Added a comment about iteration of ips in a network device
2016-03-20 23:22:16 -07:00
Diptanu Choudhury
e72faaa1c0
Parsing interfaces from the config file
2016-03-18 22:05:57 -07:00
Diptanu Choudhury
601008706d
Added an interfaces config
2016-03-18 13:50:29 -07:00
Alex Dadgar
7d4c19ed99
reserve resources on the node
2016-03-13 19:05:41 -07:00
Alex Dadgar
979a0d07f9
Get rid of individual network resources
2016-03-11 19:02:44 -08:00
Alex Dadgar
363b6fea51
Custom parsing of Nomad config with validation + Reserved resources block (not used yet)
2016-03-11 18:24:58 -08:00
Diptanu Choudhury
a5d5919664
Fixed an issue around parsing client max and min ports
2016-03-09 12:25:30 -08:00
Alex Dadgar
89e3de7784
agent: Configurable heartbeat
2016-03-04 15:44:12 -08:00
Alex Dadgar
70b07f7ad6
Make the client only reserve 512 ports.
2016-02-20 11:43:02 -08:00
Diptanu Choudhury
92103c9091
Merging the value of http advertise addr if user is providing one
2016-02-12 09:40:28 -08:00
Diptanu Choudhury
e89bcf52b8
Moving code to mount and unmount chroot into allocdir
2016-02-08 14:11:53 -08:00
Diptanu Choudhury
21677468cf
Setting defaults for client max and min port
2016-02-08 13:29:53 -08:00
Diptanu Choudhury
69a17e2a29
Added the advertise http option to the client
2016-01-27 12:53:24 -08:00
Diptanu Choudhury
b86e60b9de
Allow users to configure arbitrary headers in config
2016-01-22 11:00:43 -08:00
Ivo Verberk
91a9f2c4ce
Shorten CLI identifiers
...
* Truncate all UUID identifiers to eight characters by default
* Refactor the node identifier to an auto-generated UUID
* Created and updated tests and mocks
2016-01-14 21:57:43 +01:00
Alex Dadgar
ddf392c6be
User specifiable kill timeout and operator configurable max
2015-12-22 16:10:30 -08:00
Chris Hines
8483a0dd40
Sort config files as documented.
2015-12-15 02:05:25 -05:00
Chris Hines
e600f4ef19
Use minimum OS specific path.
...
This change ensures LoadConfig and LoadConfigDir report consistent paths to files and those paths use the appropriate path separator for the target OS. Note that LoadConfigDir constructs paths with filepath.Join, which calls filepath.Clean, which calls filepath.FromSlash.
2015-12-14 14:59:19 -05:00
Chris Bednarski
545f0ff120
Move raw_exec enabled into the DevMode config block
2015-12-10 15:24:21 -08:00
Alex Dadgar
7c76e8eca3
Merge pull request #527 from asteris-llc/master
...
Add cluster join command line options and configuration options
2015-12-09 13:14:00 -08:00
Chris Bednarski
ed4160f6fe
Merge pull request #536 from hashicorp/f-log-config-files
...
Log the list of config files loaded when starting the nomad agent
2015-12-09 12:18:46 -08:00
Alex Dadgar
f8dff3bab0
Merge pull request #526 from ChrisHines/windows-agent
...
command/agent: fix tests on Windows
2015-12-08 19:11:08 -08:00
Diptanu Choudhury
aeb68bb9e6
Merge pull request #548 from hooklift/x-code-clean-up
...
Cleans up some code.
2015-12-09 01:26:37 +01:00
Camilo Aguilar
225db55be6
Addresses Go lint suggestions
2015-12-08 19:05:15 -05:00
Camilo Aguilar
2b2777d2fd
Sets default syslog facility
...
As advertised by documentation.
2015-12-08 18:57:06 -05:00
Chris Bednarski
c2a52270a7
Rename ConfigFiles field to Files so there's less stutter when used as config.Files
2015-12-04 16:59:04 -08:00
Chris Bednarski
4b52a370f9
Log the list of config files loaded when starting the nomad agent
2015-12-04 16:52:17 -08:00
Chris Aubuchon
3a58bae865
Restore AtlasConfig
2015-12-02 18:40:30 -06:00
Chris Aubuchon
baf0b54037
30 * time.Second
-> "30s"
in DefaultConfig
2015-12-02 16:05:05 -06:00
Chris Aubuchon
ad9971cc02
Set defaults for retry_max
and retry_interval
options
2015-12-02 15:50:57 -06:00
Chris Aubuchon
62e11bddd7
Add cluster join command line options and configuration options
2015-12-02 13:55:29 -06:00
Chris Hines
b05610a24d
Work around bugs in package net
in Go < 1.6.
2015-12-02 13:57:40 -05:00
Ryan Uber
4d0322de99
agent: apply merges for atlas config
2015-11-30 15:21:50 -08:00
Mitchell Hashimoto
9b2b6cd44f
command/agent: use new HCL API
2015-11-09 11:49:27 -08:00
Diptanu Choudhury
c0d37ce58c
Setting the default network interface for dev mode only in Linux and Darwin
2015-10-29 17:03:54 -07:00
Alex Dadgar
f2bbc0dd6b
Merge pull request #362 from gregory-m/node-gc-conf
...
Configure Node GC Threshold
2015-10-29 15:45:57 -07:00
Gregory Man
8f178b54d3
Added node_gc_threshold configuration option
...
Close #333
2015-10-29 15:58:21 +02:00