Commit graph

1275 commits

Author SHA1 Message Date
Seth Hoenig f2b1f3fa54 docs: more connect changelog updates 2020-10-14 10:06:53 -05:00
Chris Baker c9f7744b0f updated changelog for 9080 2020-10-13 20:18:39 +00:00
Tim Gross 98a70d789e
docs: inclusive language configuration changes (#9069) 2020-10-13 08:02:29 -04:00
Seth Hoenig 5a3748ca82
Merge pull request #9038 from hashicorp/f-ec2-table
env_aws: get ec2 cpu perf data from AWS API
2020-10-12 18:55:33 -05:00
Seth Hoenig 723fc38cf1 docs: tweak changelog ordering 2020-10-12 18:35:26 -05:00
Tim Gross 4335d847a4
Allow job Version to start at non-zero value (#9071)
Stop coercing version of new job to 0 in the state_store, so that we can add
regions to a multi-region deployment. Send new version, rather than existing
version, to MRD to accomodate version-choosing logic changes in ENT.

Co-authored-by: Chris Baker <1675087+cgbaker@users.noreply.github.com>
2020-10-12 13:59:48 -04:00
Seth Hoenig e693d15a5b env_aws: get ec2 cpu perf data from AWS API
Previously, Nomad was using a hand-made lookup table for looking
up EC2 CPU performance characteristics (core count + speed = ticks).

This data was incomplete and incorrect depending on region. The AWS
API has the correct data but requires API keys to use (i.e. should not
be queried directly from Nomad).

This change introduces a lookup table generated by a small command line
tool in Nomad's tools module which uses the Amazon AWS API.

Running the tool requires AWS_* environment variables set.
  $ # in nomad/tools/cpuinfo
  $ go run .

Going forward, Nomad can incorporate regeneration of the lookup table
somewhere in the CI pipeline so that we remain up-to-date on the latest
offerings from EC2.

Fixes #7830
2020-10-08 12:01:09 -05:00
Tim Gross 29a5454894
csi: loosen ValidateVolumeCapability requirements (#9049)
The CSI specification for `ValidateVolumeCapability` says that we shall
"reconcile successful capability-validation responses by comparing the
validated capabilities with those that it had originally requested" but leaves
the details of that reconcilation unspecified. This API is not implemented in
Kubernetes, so controller plugins don't have a real-world implementation to
verify their behavior against.

We have found that CSI plugins in the wild may return "successful" but
incomplete `VolumeCapability` responses, so we can't require that all
capabilities we expect have been validated, only that the ones that have been
validated match. This appears to violate the CSI specification but until
that's been resolved in upstream we have to loosen our validation
requirements. The tradeoff is that we're more likely to have runtime errors
during `NodeStageVolume` instead of at the time of volume registration.
2020-10-08 12:53:24 -04:00
Tim Gross e8c13a2307
csi: validate mount options during volume registration (#9044)
Volumes using attachment mode `file-system` use the CSI filesystem API when
they're mounted, and can be passed mount options. But `block-device` mode
volumes don't have this option. When RPCs are made to plugins, we are silently
dropping the mount options we don't expect to see, but this results in a poor
operator experience when the mount options aren't honored. This changeset
makes passing mount options to a `block-device` volume a validation error.
2020-10-08 09:23:21 -04:00
Tim Gross 82749bd6a6
csi: allow volume detach to take a node ID prefix (#9041)
Fixes a bug where the `nomad volume detach` command would not accept a node ID
prefix instead of a full node ID. The volume ID is already prefix matched
server-side.
2020-10-07 11:14:57 -04:00
Tim Gross 3ceb5b36b1
csi: allow more than 1 writer claim for multi-writer mode (#9040)
Fixes a bug where CSI volumes with the `MULTI_NODE_MULTI_WRITER` access mode
were using the same logic as `MULTI_NODE_SINGLE_WRITER` to determine whether
the volume had writer claims available for scheduling.

Extends CSI claim endpoint test to exercise multi-reader and make sure `WriteFreeClaims`
is exercised for multi-writer in feasibility test.
2020-10-07 10:43:23 -04:00
James Rasell ed7eb77bc7
changelog: add entries for #9023 and #9025 2020-10-06 17:16:55 +02:00
Chris Baker 7f701fddd0 updated docs and validation to further prohibit null chars in region, datacenter, and job name 2020-10-05 18:01:50 +00:00
Chris Baker 23ea7cd27c updated job validate to refute job/group/task IDs containing null characters
updated CHANGELOG and upgrade guide
2020-10-05 18:01:49 +00:00
Tim Gross 12f3249390
changelog entry for Consul segment fingerprint (#9015) 2020-10-05 12:35:34 -04:00
Tim Gross 56a3e910ea
docs: add Consul policy for Consul Namespace support (#9014)
Co-authored-by: Seth Hoenig <shoenig@hashicorp.com>
2020-10-02 15:13:33 -04:00
Fredrik Hoem Grelland a015c52846
configure nomad cluster to use a Consul Namespace [Consul Enterprise] (#8849) 2020-10-02 14:46:36 -04:00
Seth Hoenig a8869bd304 docs: document docker signal fix, add tests
This PR adds a version specific upgrade note about the docker stop
signal behavior. Also adds test for the signal logic in docker driver.

Closes #8932 which was fixed in #8933
2020-10-02 10:06:43 -05:00
Fredrik Hoem Grelland 953d4de8dd
update consul-template to v0.25.1 (#8988) 2020-10-01 14:08:49 -04:00
Tim Gross 7cf000f64e
changelog: azure fingerprint (#9000) 2020-10-01 09:23:52 -04:00
Michael Schurter 765473e8b0 jobspec: lower min cpu resources from 10->1
Since CPU resources are usually a soft limit it is desirable to allow
setting it as low as possible to allow tasks to run only in "idle" time.

Setting it to 0 is still not allowed to avoid potential unintentional
side effects with allowing a zero value. While there may not be any side
effects this commit attempts to minimize risk by avoiding the issue.

This does *not* change the defaults.
2020-09-30 12:15:13 -07:00
Seth Hoenig af9543c997 consul: fix validation of task in group-level script-checks
When defining a script-check in a group-level service, Nomad needs to
know which task is associated with the check so that it can use the
correct task driver to execute the check.

This PR fixes two bugs:
1) validate service.task or service.check.task is configured
2) make service.check.task inherit service.task if it is itself unset

Fixes #8952
2020-09-28 15:02:59 -05:00
Seth Hoenig fd2a31a331 drivers/docker: detect arch for default infra_image
The 'docker.config.infra_image' would default to an amd64 container.
It is possible to reference the correct image for a platform using
the `runtime.GOARCH` variable, eliminating the need to explicitly set
the `infra_image` on non-amd64 platforms.

Also upgrade to Google's pause container version 3.1 from 3.0, which
includes some enhancements around process management.

Fixes #8926
2020-09-23 13:54:30 -05:00
Michael Schurter c79c0ace97 docs: add #8745 to changelog 2020-09-21 08:59:47 -07:00
Tim Gross 378e20ad75
changelog items for community PRs (#8924)
[ci skip]

* https://github.com/hashicorp/nomad/pull/8836
* https://github.com/hashicorp/nomad/pull/8921
2020-09-18 09:12:14 -04:00
Mahmood Ali 59c0c606e8
update changelog with 0.12.5 content (#8923)
[ci skip]
2020-09-17 21:53:12 -04:00
Tim Gross e730afa6ea
changelog entry for #8902 (#8904) 2020-09-16 18:25:49 -04:00
Mahmood Ali ba68554bde
changelog: Tag the ui with the right release (#8883) 2020-09-15 15:21:50 -04:00
Michael Schurter 1544341f09
Merge pull request #8862 from hashicorp/release-0.12.4
Prepare for 0.13 development cycle
2020-09-10 09:14:44 -07:00
Michael Schurter df167e1487 docs: bump 0.12.4 GA date to today 2020-09-09 08:32:50 -07:00
Michael Lange 4b217dc56c Changelog entry for 8833 2020-09-08 14:11:13 -07:00
Tim Gross 903f5c3199 changelog item for CSI socket connect (#8829) 2020-09-04 11:24:01 -04:00
Tim Gross 571365dc62
changelog item for CSI socket connect (#8829) 2020-09-04 11:22:49 -04:00
Michael Schurter 94c0a0c441 docs: update 0.12.4 release date 2020-09-02 08:40:26 -07:00
Mahmood Ali 7b99eea0e4
Changelog catchup (#8808) 2020-09-01 15:24:24 -04:00
Jasmine Dahilig 0203dc9983
Merge pull request #8797 from hashicorp/poststart-changelog
changelog: task lifecycle poststart hook
2020-09-01 10:34:36 -07:00
Seth Hoenig 4f2d84267a
Merge pull request #8803 from hashicorp/docs-cigs-cl
add consul ingress gateways to changelog
2020-09-01 11:33:10 -05:00
Mahmood Ali 79326dcfe9 update changelog 2020-09-01 12:18:04 -04:00
Seth Hoenig 2919341848 add consul ingress gateways to changelog 2020-09-01 10:14:05 -05:00
Mahmood Ali 8e3fc429b2
Merge pull request #8798 from hashicorp/b-esccaping-newline
Fix escapingio handling of `\n~\n`
2020-09-01 10:00:08 -04:00
Mahmood Ali fe65ad60c7 add changelog
[ci skip]
2020-09-01 09:57:41 -04:00
Tim Gross 003ab59b4b
changelog: panic in operator debug command (#8802) 2020-09-01 08:40:04 -04:00
Jasmine Dahilig 42fd2b7aa6 changelog: task lifecycle poststart hook 2020-08-31 14:47:14 -07:00
Tim Gross a20e3f6a74
changelog: global stop, misc bug fix (#8777) 2020-08-28 14:06:36 -04:00
Buck Doyle eadb91e734
Add exec heartbeat keepalive (#8759)
This closes #8727, thanks to @jfcantu for the suggestion.
The CLI implementation of exec already has a 10-second
heartbeat so this mirrors that:
https://github.com/hashicorp/nomad/blob/v0.12.3/api/allocations.go#L161-L173
2020-08-28 10:13:33 -05:00
Lang Martin 42d1b9bb51 CHANGELOG: use consistent indentation for 0.12.4 2020-08-27 18:00:55 -04:00
Lang Martin 1c65a452ba CHANGELOG: csi expected counts 2020-08-27 18:00:55 -04:00
Tim Gross 0e88dc0fec
changelog: batch of bug fixes for 0.12.4 (#8767) 2020-08-27 16:22:46 -04:00
Drew Bailey 1eae711307
fix changelog entry placement 2020-08-27 11:47:01 -04:00
Chris Baker 8b9145fabd state_store/fix the prefix bugs for scaling policies documented in 1a9318 2020-08-27 04:25:37 +00:00