Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: Nomad 1.8 release notes #22104

Merged
merged 18 commits into from
May 28, 2024
33 changes: 33 additions & 0 deletions website/content/docs/enterprise/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,28 @@ Nomad Enterprise Platform enables operators to easily upgrade Nomad as well as
enhances performance and availability through Advanced Autopilot features such
as Automated Upgrades, Enhanced Read Scalability, and Redundancy Zones.

### Long Term Support (LTS) Releases

Nomad Enterprise initiated the Long-Term Support (LTS) release program with
Nomad 1.8. Going forward, the first major release of each calendar year will be
an LTS release.

LTS releases have the following benefits for Nomad operators:

- **Extended maintenance:** Two years of critical fixes provided through minor
releases
- **Efficient upgrades:** Support for direct upgrades from one LTS release
to the next, reducing major-version upgrade risk and improving operational
efficiency.

LTS releases reduce operational overhead and risk by letting organizations
receive critical fixes in minor releases without having to upgrade their major
version more than once a year. Once you’ve upgraded to Nomad Enterprise 1.8,
you will be running on a maintained LTS release that will allow you to easily
upgrade to the next LTS major release when it's available. For more
information, refer to HashiCorp’s multi-product LTS statement.


### Automated Upgrades

Automated Upgrades allows operators to deploy a complete cluster of new
Expand Down Expand Up @@ -94,6 +116,17 @@ available for the specified Nomad task at hand.

See the [Vault Integration documentation](/nomad/docs/integrations/vault-integration#enterprise-configuration) for more information.

### Multiple Vault and Consul Clusters

Nomad Enteprise allows sepcifying multiple integrations for Consul and Vault in
the [vault](/nomad/docs/configuration/vault) and
[consul](/nomad/docs/configuration/consul) portions of the Nomad agent
configuration. After the agents are configured, Nomad jobspec writers can pick
which Consul or Vault cluster to use in their job. Nomad administrators may
also set default clusters for each in Nomad namespace configuration, as well as
deny access to certain clusters by namespace.


## Governance & Policy

Governance & Policy features are part of an add-on module that enables an
Expand Down
12 changes: 12 additions & 0 deletions website/content/docs/release-notes/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
layout: docs
page_title: Release Notes
description: |-
Release notes for the major software packages for Nomad
---

# Release Notes

Choose a version from the navigation sidebar to view the release notes for Nomad.

Documentation for maintenance releases (e.g., 0.1.x) is on the bottom of each release notes page.
130 changes: 130 additions & 0 deletions website/content/docs/release-notes/nomad/v1_8_x.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
---
layout: docs
page_title: 1.8.x
description: >-
Nomad release notes for version 1.8.x
---

# Nomad 1.8.0

We are pleased to announce the following Nomad updates.

## Release highlights

- **Long Term Support Release (Enterprise):** Nomad 1.8 introduces a [long
term support release](/nomad/docs/enterprise#long-term-support-lts-releases) which provides extended maintenance (two years of
critical fixes provided through minor releases and efficient upgrades
(support for direct upgrades from one LTS release to the next).

- **Exec2 Task Driver (beta):** The `exec2` driver is used to execute a
command for a task. It offers a security model optimized for running
'ordinary' processes with very low startup times and minimal overhead in
terms of CPU, disk, and memory utilization. The `exec2` driver leverages
kernel features such as the Landlock LSM, cgroups v2, and the unshare system
utility. Due these enhancements, tasks no longer require leveraging
filesystem isolation based on chroot, which provide an enhanced security
profile and improved performance for the Nomad operator. Refer to [Exec2 Task
Driver](/nomad/plugins/v1.8.x/drivers/exec2) for more details.

- **Transparent proxy support for Consul service mesh:** Transparent Proxy
introduces a more seamless way of dialing upstream services when Consul service
mesh is enabled. Users can configure services to use transparent proxy with a
new [`transparent_proxy`](/nomad/docs/v1.8.x/job-specification/transparent_proxy)
block. When a service is configured to use transparent proxy, workloads can now dial the
service using a virtual IP Consul DNS name.

- **Consul API Gateway for Nomad:** Consul API Gateway on Nomad is now
officially supported. A prescriptive job specification on
[hashicorp-guides/consul-api-gateway-on-nomad](https://github.com/hashicorp-guides/consul-api-gateway-on-nomad)
along with a supporting [tutorial](/nomad/tutorials/integrate-consul/deploy-api-gateway-on-nomad) on
how to securely deploy Consul API gateway on Nomad.

- **Re-worked Jobs page in the web UI with live updates:** Within the [Jobs index](/nomad/tutorials/web-ui/web-ui-workload-info#list-jobs)
page Nomad has made a few improvements:

- **Prioirtize showing the current state over historical state for jobs:**
Previously, long-garbage-collected allocation placement failures, lost nodes,
and other historical representations of job state were shown alongside
currently running allocations. In self-healing jobs, this often meant that a
healthy job looked like it had failures, when in fact Nomad had replaced or
rescheduled those failures. Now, the jobs list tries to show accurate
allocation information and meaningful statuses (like "Degraded", or
"Recovering") to better illustrate the current state of a job.
- **Server-side pagination:** For users with many thousands of jobs, the main
landing page for the web UI will no longer have a noticeable delay on
rendering. Users can control page length and filter paginated jobs
appropriately.
- **Live updates:** Previously, users had to manually refresh
the page to see newly created jobs, or to hide jobs that had been stopped and
garbage-collected. Now, the jobs list will update in real-time as jobs are
created, updated, or removed. Further, any changes to allocations of jobs
on-page will be reflected in the status of that job in real-time.

- **Time based task execution:** Using a CRON-like syntax, operators can now
schedule when tasks should execute and when they should stop. This provides
governance for tasks executed from jobs, and allows operators to easily opt-in
or opt-out of a schedule that governs when the task can run through the web based UI.

- **Sentinel policy management in the Web UI:** Enterprise users can manage
Sentinel policies directly within the Nomad UI. Users can create a Sentinel
policy based on a template provided from the UI or create policies directly
using an editor for Sentinel policies. Refer to [Sentinel policies](/nomad/tutorials/governance-and-policy/sentinel)
to learn more about how to use Sentinel within Nomad.

- **nomad-bench:** Nomad now provides a testing framework through [nomad-bench](https://github.com/hashicorp-forge/nomad-bench)
which provisions infrastructure used to run tests and benchmarks against
Nomad test clusters. The infrastructure consists of Nomad test clusters that
each have a set of servers with hundreds or thousands of simulated nodes
created using nomad-nodesim. The Nomad server processes are not simulated and
are expected to run on their own hosts, mimicking real-world deployments.
Metrics are then gathered from the Nomad servers for use with benchmarking
and load testing.

## What's deprecated

- **LXC Task driver:** The [Community LXC Task
Driver](/nomad/plugins/drivers/community/lxc) is now deprecated. Official
support will be removed and the repo will be archived when Nomad 1.9 is
released. Users are encouraged to migrate their workloads to another task
driver such as the built-in Docker task driver[/nomad/docs/drivers/docker].

- **ECS Task driver:** The remote [ECS Task
Driver](https://developer.hashicorp.com/nomad/plugins/drivers/remote/ecs) is
now deprecated. Official support will be removed and the repo will be
archived when Nomad 1.9 is released. Users are encouraged to migrate their
workloads to Amazon ECS or to another Nomad task driver.

- **`stop_after_client_disconnect`, `max_client_disconnect`,
`prevent_reschedule_on_lost`:** Nomad 1.8.0 introduces a [disconnect](/nomad/docs/job-specification/disconnect)
block meant to group all the configuration options related to disconnected
client's and server's behavior, causing the deprecation of the fields
stop_after_client_disconnect, max_client_disconnect and
prevent_reschedule_on_lost. This block also introduces new options for
allocations reconciliation if the client regains connectivity.


## What's removed

- **raw_exec option `no_cgroups`:** In Nomad 1.7.0 the raw_exec plugin option
for no_cgroups became ineffective. Starting in Nomad 1.8.0 attempting to set
the no_cgroups in raw_exec plugin configuration will result in an error when
starting the agent.


## Upgrading

For more detailed information, please refer to the [upgrade details
page](/nomad/docs/upgrade/upgrade-specific#nomad-1-8-0) and the changelogs.

## Known issues

The following issues are known to exist in the v1.8.x releases:

## Changelogs

The changelogs for this major release version and any maintenance versions are
listed below.

<Note> These links take you to the changelogs on the GitHub website. </Note>

- [1.8.0](https://github.com/hashicorp/nomad/releases/tag/v1.8.0)
2 changes: 0 additions & 2 deletions website/content/plugins/drivers/community/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ Below is a list of community-supported task drivers you can use with Nomad:
- [LXC][lxc]
- [Pledge][pledge]
- [Pot][pot]
- [Rkt][rkt]
- [Rookout][rookout]
- [Singularity][singularity]
- [systemd-nspawn][nspawn-driver]
Expand All @@ -36,7 +35,6 @@ Below is a list of community-supported task drivers you can use with Nomad:

[rookout]: /nomad/plugins/drivers/community/rookout
[lxc]: /nomad/plugins/drivers/community/lxc
[rkt]: /nomad/plugins/drivers/community/rkt
[plugin_guide]: /nomad/docs/concepts/plugins
[singularity]: /nomad/plugins/drivers/community/singularity
[jail-task-driver]: /nomad/plugins/drivers/community/jail-task-driver
Expand Down
7 changes: 5 additions & 2 deletions website/content/plugins/drivers/community/lxc.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,14 @@ description: The LXC task driver is used to run application containers using LXC

Name: `lxc`

~> **Deprecation Warning!**
The `lxc` driver is currently deprecated. We will not prioritize features or pull requests that affect the lxc driver. The external driver is available as an [open source
repository](https://github.com/hashicorp/nomad-driver-lxc) for community ownership.


The `lxc` driver provides an interface for using LXC for running application
containers. You can download the external LXC driver [here][lxc-driver]. For more detailed instructions on how to set up and use this driver, please refer to the [LXC guide][lxc-guide].

~> **Note:** The LXC client set up has changed in Nomad 0.9. You must use the new [plugin syntax][plugin] and install the external LXC driver in the [plugin_dir][plugin_dir] prior to upgrading. See [plugin options][plugin-options] below for an example. Note the job specification remains the same.

## Task Configuration

```hcl
Expand Down
Loading
Loading