Seth Hoenig
839bc21bd1
Merge pull request #12496 from hashicorp/f-cores-env
...
client: set environment variable indicating set of reserved cpu cores
2022-04-07 12:07:57 -05:00
James Rasell
dbf28a06c1
e2e: fix eventual consistency failure within consultemplate suite. ( #12494 )
2022-04-07 17:03:10 +02:00
Seth Hoenig
9236fe3904
docs: update cl
2022-04-07 10:02:00 -05:00
Lars Lehtonen
df1edf5cf4
nomad/state: fix dropped test errors ( #12406 )
2022-04-07 10:48:10 -04:00
Seth Hoenig
0870aa31dc
client: set environment variable indicating set of reserved cpu cores
...
This PR injects the 'NOMAD_CPU_CORES' environment variable into
tasks that have been allocated reserved cpu cores. The value uses
normal cpuset notation, as found in cpuset.cpu cgroup interface files.
Note this value is not necessiarly the same as the content of the actual
cpuset.cpus interface file, which will also include shared cpu cores when
using cgroups v2. This variable is a workaround for users who used to be
able to read the reserved cgroup cpuset file, but lose the information
about distinct reserved cores when using cgroups v2.
Side discussion in: https://github.com/hashicorp/nomad/issues/12374
2022-04-07 09:09:35 -05:00
Derek Strickland
065b3ed886
plan_apply: Add missing unit test for validating plans for disconnected clients ( #12495 )
2022-04-07 09:58:09 -04:00
Tim Gross
1724765096
api: use `cleanhttp.DefaultPooledTransport` for default API client ( #12492 )
...
We expect every Nomad API client to use a single connection to any
given agent, so take advantage of keep-alive by switching the default
transport to `DefaultPooledClient`. Provide a facility to close idle
connections for testing purposes.
Restores the previously reverted #12409
Co-authored-by: Ben Buzbee <bbuzbee@cloudflare.com>
2022-04-06 16:14:53 -04:00
Luiz Aoqui
0b13ea6920
changelog: make breaking change note for raft v3 ( #12493 )
2022-04-06 16:00:38 -04:00
Luiz Aoqui
697e82a665
changelog: add entry for #12435 ( #12491 )
2022-04-06 14:22:09 -04:00
Seth Hoenig
42f094c311
Merge pull request #12484 from hashicorp/tests-handler-exec-failure
...
exec: fix exec handler test
2022-04-06 13:13:07 -05:00
Luiz Aoqui
111af0a936
changelog: minor fixes ( #12487 )
2022-04-06 14:05:10 -04:00
James Rasell
9bc16b1333
client: account for service provider namespace updates in hooks. ( #12479 )
...
When a service is updated, the service hooks update a number of
internal fields which helps generate the new workload. This also
needs to update the namespace for the service provider. It is
possible for these to be different, and in the case of Nomad and
Consul running OSS, this is to be expected.
2022-04-06 19:26:22 +02:00
James Rasell
431c153cd9
client: add Nomad template service functionality to runner. ( #12458 )
...
This change modifies the template task runner to utilise the
new consul-template which includes Nomad service lookup template
funcs.
In order to provide security and auth to consul-template, we use
a custom HTTP dialer which is passed to consul-template when
setting up the runner. This method follows Vault implementation.
Co-authored-by: Michael Schurter <mschurter@hashicorp.com>
2022-04-06 19:17:05 +02:00
Seth Hoenig
bae42fad7c
exec: fix exec handler test
...
Fixup this test to handle cgroups v2, as well as the :misc: cgroup
2022-04-06 12:11:37 -05:00
Jasmine Dahilig
38efb3c8d8
metrics: emit stats for vault token next_renewal & last_renewal #5222 ( #12435 )
2022-04-06 10:03:11 -07:00
Jasmine Dahilig
f67b108f9f
docs: update vault-token note in job run command #8040 ( #12385 )
2022-04-06 10:01:38 -07:00
Tim Gross
92ae1e9c81
Revert "Use cleanhttp.DefaultPooledTransport for the default API client ( #12409 )" ( #12480 )
...
This reverts commit 6e1270dd08e513bdbb6fbb7378f207f1afef9fc3.
2022-04-06 12:58:51 -04:00
Luiz Aoqui
13233a4dd3
ci: make version script match ENT to avoid unnecessary merge conflicts ( #12482 )
2022-04-06 12:56:52 -04:00
James Rasell
7096fecd10
website: add initial website docs for Nomad service discovery. ( #12456 )
2022-04-06 18:51:14 +02:00
James Rasell
39e5e8575e
changelog: add entry for #12368 ; native service discovery. ( #12474 )
2022-04-06 18:21:34 +02:00
claire labry
6f7f7277d5
[Main] Onboard to CRT ( #12276 )
2022-04-06 11:47:02 -04:00
Derek Strickland
97a445ab2c
disconnected clients: Add changelog entry ( #12477 )
2022-04-06 11:44:26 -04:00
Phil Renaud
a6c33b6a74
Inlines related evaluations flexbox ( #12475 )
2022-04-06 11:35:25 -04:00
Benjamin Buzbee
6cea70eca5
Use cleanhttp.DefaultPooledTransport for the default API client ( #12409 )
...
The only difference is DefaultTransport sets DisableKeepAlives
This doesn't make much sense to me - every http connection from the
nomad client goes to the same NOMAD_ADDR so it's a great case for keep
alive. Except round robin DNS and anycast perhaps.
Consul does this already
1e47e3c82b/api/api.go (L397)
2022-04-06 11:34:55 -04:00
Jorge Marey
96dd3f53c6
Fix in-place updates over ineligible nodes ( #12264 )
2022-04-06 11:30:40 -04:00
Derek Strickland
0ab89b1728
Merge pull request #12476 from hashicorp/f-disconnected-client-allocation-handling
...
disconnected clients: Feature branch merge
2022-04-06 10:11:57 -04:00
Derek Strickland
d1d6009e2c
disconnected clients: Support operator manual interventions ( #12436 )
...
* allocrunner: Remove Shutdown call in Reconnect
* Node.UpdateAlloc: Stop orphaned allocs.
* reconciler: Stop failed reconnects.
* Apply feedback from code review. Handle rebase conflict.
* Apply suggestions from code review
Co-authored-by: Tim Gross <tgross@hashicorp.com>
2022-04-06 09:33:32 -04:00
James Rasell
21d4ecac40
Merge pull request #12459 from hashicorp/b-fix-service-delete-cli-flake
...
cli: fixup service test delete by using atomic actions.
2022-04-06 15:22:08 +02:00
Mike Nomitch
7405ebbad1
Add max client disconnect docs ( #12467 )
...
Co-authored-by: Derek Strickland <1111455+DerekStrickland@users.noreply.github.com>
2022-04-06 08:54:14 -04:00
Phil Renaud
b072bf2ec1
Merge pull request #12473 from hashicorp/f-ui/evals-unshown-copy-change
...
Copy change, simplifies explanation for no related eval chart
2022-04-06 08:13:28 -04:00
James Rasell
e1c0329fe9
cli: fixup service test delete by using more atomic actions.
2022-04-06 08:36:23 +01:00
Luiz Aoqui
16c167f180
ui: hide triggered by and status filters for now ( #12472 )
2022-04-05 21:14:16 -04:00
Seth Hoenig
2e2ff3f75e
Merge pull request #12419 from hashicorp/exec-cleanup
...
raw_exec: make raw exec driver work with cgroups v2
2022-04-05 16:42:01 -05:00
Derek Strickland
43d20ebdbd
disconnected clients: `TaskGroup` validation ( #12418 )
...
* TaskGroup: Validate that max_client_disconnect and stop_after_client_disconnect are mutually exclusive.
2022-04-05 17:14:50 -04:00
Tim Gross
5b9772e68f
docs: updates for CSI plugin improvements for 1.3.0 ( #12466 )
2022-04-05 17:13:51 -04:00
Derek Strickland
bd719bc7b8
reconciler: 2 phase reconnects and tests ( #12333 )
...
* structs: Add alloc.Expired & alloc.Reconnected functions. Add Reconnect eval trigger by.
* node_endpoint: Emit new eval for reconnecting unknown allocs.
* filterByTainted: handle 2 phase commit filtering rules.
* reconciler: Append AllocState on disconnect. Logic updates from testing and 2 phase reconnects.
* allocs: Set reconnect timestamp. Destroy if not DesiredStatusRun. Watch for unknown status.
2022-04-05 17:13:10 -04:00
Derek Strickland
bb376320a2
comments: update some stale comments referencing deprecated config name ( #12271 )
...
* comments: update some stale comments referencing deprecated config name
2022-04-05 17:12:23 -04:00
Derek Strickland
cc854d842e
Add description for allocs stopped due to reconnect ( #12270 )
2022-04-05 17:12:23 -04:00
Derek Strickland
d86ab290a0
Add unknown to TaskGroupSummary ( #12269 )
2022-04-05 17:12:23 -04:00
Derek Strickland
fd04a24ac7
disconnected clients: ensure servers meet minimum required version ( #12202 )
...
* planner: expose ServerMeetsMinimumVersion via Planner interface
* filterByTainted: add flag indicating disconnect support
* allocReconciler: accept and pass disconnect support flag
* tests: update dependent tests
2022-04-05 17:12:23 -04:00
Derek Strickland
8e9f8be511
`MaxClientDisconnect` Jobspec checklist ( #12177 )
...
* api: Add struct, conversion function, and tests
* TaskGroup: Add field, validation, and tests
* diff: Add diff handler and test
* docs: Update docs
2022-04-05 17:12:23 -04:00
Derek Strickland
d7f44448e1
disconnected clients: Observability plumbing ( #12141 )
...
* Add disconnects/reconnect to log output and emit reschedule metrics
* TaskGroupSummary: Add Unknown, update StateStore logic, add to metrics
2022-04-05 17:12:23 -04:00
Derek Strickland
c7a5b17251
Fix client test reconnect test; Remove guard test ( #12173 )
...
* Update reconnect test to new algorithm and interface; remove guard test
2022-04-05 17:12:23 -04:00
Derek Strickland
3cbd76ea9d
disconnected clients: Add reconnect task event ( #12133 )
...
* Add TaskClientReconnectedEvent constant
* Add allocRunner.Reconnect function to manage task state manually
* Removes server-side push
2022-04-05 17:12:23 -04:00
DerekStrickland
9395e1878a
reconciler: fix loop control bug
2022-04-05 17:12:22 -04:00
DerekStrickland
da9bc350c8
evaluateNodePlan: validate plans for disconnected nodes
2022-04-05 17:12:22 -04:00
DerekStrickland
73fdf5a919
NodeStatusDisconnected: support state transitions for new node status
2022-04-05 17:12:18 -04:00
DerekStrickland
c3d985047b
client: reconnect unknown allocations and sync state
2022-04-05 17:10:41 -04:00
Derek Strickland
b128769e19
reconciler: support disconnected clients ( #12058 )
...
* Add merge helper for string maps
* structs: add statuses, MaxClientDisconnect, and helper funcs
* taintedNodes: Include disconnected nodes
* upsertAllocsImpl: don't use existing ClientStatus when upserting unknown
* allocSet: update filterByTainted and add delayByMaxClientDisconnect
* allocReconciler: support disconnecting and reconnecting allocs
* GenericScheduler: upsert unknown and queue reconnecting
Co-authored-by: Tim Gross <tgross@hashicorp.com>
2022-04-05 17:10:37 -04:00
Phil Renaud
5a749eb437
Copy change, simplifies explanation for no related eval chart
2022-04-05 16:59:50 -04:00