Skip to content

Commit

Permalink
Remove docs/devices/ and redirect to plugins/devices
Browse files Browse the repository at this point in the history
  • Loading branch information
aimeeu committed Jan 17, 2025
1 parent b7bd02e commit 3f87747
Show file tree
Hide file tree
Showing 11 changed files with 62 additions and 142 deletions.
7 changes: 0 additions & 7 deletions website/content/docs/devices/index.mdx

This file was deleted.

6 changes: 5 additions & 1 deletion website/content/docs/drivers/index.mdx
Original file line number Diff line number Diff line change
@@ -1,7 +1,11 @@
---
layout: docs
page_title: Task Drivers
description: Learn how Nomad's bundled task drivers integrate with the host OS to run job tasks in isolation.
description: Nomad's bundled task drivers integrate with the host OS to run job tasks in isolation. Review the Docker, Isolated Fork/Exec, Java, QEMU, and Raw Fork/Exec task drivers.
---

# Task Drivers

This section provides reference information for task drivers bundled with Nomad.

@include 'task-driver-intro.mdx'
2 changes: 1 addition & 1 deletion website/content/docs/job-specification/device.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -326,4 +326,4 @@ device "nvidia/gpu" {

[affinity]: /nomad/docs/job-specification/affinity 'Nomad affinity Job Specification'
[constraint]: /nomad/docs/job-specification/constraint 'Nomad constraint Job Specification'
[devices]: /nomad/docs/devices 'Nomad Device Plugins'
[devices]: /nomad/plugins/devices 'Nomad Device Plugins'
2 changes: 1 addition & 1 deletion website/content/docs/partnerships.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ Container Runtime

GPUs & Specialized Hardware Devices

- [Device plugin documentation](/nomad/docs/devices)
- [Device plugin documentation](/nomad/plugins/devices)
- [Guide to build, install, and maintain a device plugin](/nomad/docs/concepts/plugins/devices)
- [Template for writing a device plugin](https://github.com/hashicorp/nomad-skeleton-device-plugin)
- [Example of a device plugin](https://github.com/hashicorp/nomad/tree/main/devices/gpu/nvidia)
Expand Down
2 changes: 1 addition & 1 deletion website/content/intro/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Nomad is widely adopted and used in production by PagerDuty, Target, Citadel, Tr

- **Simple & Reliable**: Nomad runs as a single binary and is entirely self contained - combining resource management and scheduling into a single system. Nomad does not require any external services for storage or coordination. Nomad automatically handles application, node, and driver failures. Nomad is distributed and resilient, using leader election and state replication to provide high availability in the event of failures.

- **Device Plugins & GPU Support**: Nomad offers built-in support for GPU workloads such as machine learning (ML) and artificial intelligence (AI). Nomad uses [device plugins](/nomad/docs/devices) to automatically detect and utilize resources from hardware devices such as GPU, FPGAs, and TPUs.
- **Device Plugins & GPU Support**: Nomad offers built-in support for GPU workloads such as machine learning (ML) and artificial intelligence (AI). Nomad uses [device plugins](/nomad/plugins/devices) to automatically detect and utilize resources from hardware devices such as GPU, FPGAs, and TPUs.

- **Federation for Multi-Region**: Nomad has native support for multi-region federation. This built-in capability allows multiple clusters to be linked together, which in turn enables developers to deploy jobs to any cluster in any region. Federation also enables automatic replication of ACL policies, namespaces, resource quotas and Sentinel policies across all clusters.

Expand Down
31 changes: 0 additions & 31 deletions website/content/partials/device-driver-intro.mdx

This file was deleted.

6 changes: 3 additions & 3 deletions website/content/partials/task-driver-intro.mdx
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Task drivers
## Introduction

Nomad clients use task drivers to execute a task and provide resource isolation.
By having extensible task drivers, Nomad has the flexibility to support a broad
Expand All @@ -21,9 +21,9 @@ Requirements][docker_plugin] section for a detailed example.
## Nomad task drivers

The Nomad binary contains several bundled task drivers. We also support
additional task drivers that you may install separately.
additional task driver plugins that you may install separately.

| Bundled with Nomad | Separate installation |
| Bundled with Nomad | Plugins |
|----------------------|-----------------------|
| [Docker] | [Exec2] |
| [Isolated Fork/Exec] | [Podman] |
Expand Down
31 changes: 30 additions & 1 deletion website/content/plugins/devices/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,33 @@ description: |-
Use device driver plugins to detect your Nomad client's physical hardware devices, such as graph processing units (GPUs), field programmable gate arrays (FPGAs), tensor processing units (TPUs), and universal serial buses (USBs). You can then use those devices in your Nomad workloads.
---

@include 'device-driver-intro.mdx'
# Device driver plugins

Use device driver plugins to detect physical hardware devices, such as graph
processing units (GPUs), a field-programmable gate arrays (FPGAs), and universal
serial buses (USBs), on your Nomad clients. You can then use those devices in
your Nomad workloads.

By having extensible device plugins, Nomad has the flexibility
to support a broad set of devices and allows the community to build additional
device plugins as needed.

## Nomad device drivers

We support the [NVIDIA] device driver plugin, which you must install
separately. Refer to the [NVIDIA] documentation for instructions.

## Community device drivers

The community supports the [USB] device driver plugin.

## Create device drivers

Nomad's device driver architecture is pluggable, which gives you the flexibility
to create your own drivers without having to recompile Nomad. Refer to the
[plugin authoring guide][plugin_guide] for details.


[NVIDIA]: /nomad/plugins/devices/nvidia
[USB]: /nomad/plugins/devices/community/usb
[plugin_guide]: /nomad/docs/concepts/plugins/devices
8 changes: 6 additions & 2 deletions website/content/plugins/drivers/index.mdx
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
---
layout: docs
page_title: Task Drivers
description: Learn how task driver plugins extend Nomad functionality to provide resource isolation when executing job tasks.
page_title: Task Driver Plugins
description: Task driver plugins extend Nomad functionality to provide resource isolation when executing job tasks. Review the Exec2, Podman, and Virt task driver reference. Explore plugins developed by the Nomad user community.
---

# Task driver plugins

This section provides reference information for task driver plugins.

@include 'task-driver-intro.mdx'

104 changes: 10 additions & 94 deletions website/data/docs-nav-data.json
Original file line number Diff line number Diff line change
Expand Up @@ -1974,10 +1974,6 @@
"title": "Docker",
"path": "drivers/docker"
},
{
"title": "Exec2",
"href": "/plugins/drivers/exec2"
},
{
"title": "Isolated Fork/Exec",
"path": "drivers/exec"
Expand All @@ -1986,10 +1982,6 @@
"title": "Java",
"path": "drivers/java"
},
{
"title": "Podman",
"href": "/plugins/drivers/podman"
},
{
"title": "QEMU",
"path": "drivers/qemu"
Expand All @@ -1999,107 +1991,31 @@
"path": "drivers/raw_exec"
},
{
"title": "Virt <sup>Beta</sup>",
"routes": [
{
"title": "Overview",
"href": "/plugins/drivers/virt"
},
{
"title": "Installation",
"href": "/plugins/drivers/virt/install"
},
{
"title": "Task Config",
"href": "/plugins/drivers/virt/task-config"
}
]
},
{
"title": "Community",
"title": "Plugins",
"routes": [
{
"title": "Overview",
"href": "/plugins/drivers/community"
},
{
"title": "containerd",
"href": "/plugins/drivers/community/containerd"
},
{
"title": "Pledge",
"href": "/plugins/drivers/community/pledge"
},
{
"title": "Firecracker driver",
"href": "/plugins/drivers/community/firecracker-task-driver"
},
{
"title": "Jailtask driver",
"href": "/plugins/drivers/community/jail-task-driver"
"title": "Exec2",
"href": "/plugins/drivers/exec2"
},
{
"title": "Lightrun",
"href": "/plugins/drivers/community/lightrun"
"title": "Podman",
"href": "/plugins/drivers/podman"
},
{
"title": "Pot",
"href": "/plugins/drivers/community/pot"
},
{
"title": "Rookout",
"href": "/plugins/drivers/community/rookout"
},
{
"title": "Singularity",
"href": "/plugins/drivers/community/singularity"
},
{
"title": "systemd-nspawn",
"href": "/plugins/drivers/community/nspawn"
},
{
"title": "Windows IIS",
"href": "/plugins/drivers/community/iis"
"title": "Virt <sup>Beta</sup>",
"href": "/plugins/drivers/virt"
},
{
"title": "Windows IIS",
"href": "/plugins/drivers/community/nomad-iis"
"title": "Community",
"href": "/plugins/drivers/community"
}
]
}
]
},
{
"title": "Device Plugins",
"routes": [
{
"title": "Overview",
"path": "devices"
},
{
"title": "External",
"routes": [
{
"title": "Overview",
"href": "/plugins/devices"
},
{
"title": "Nvidia",
"href": "/plugins/devices/nvidia"
},
{
"title": "USB",
"badge": {
"text": "Beta",
"type": "outlined",
"color": "neutral"
},
"href": "/plugins/devices/community/usb"
}
]
}
]
"href": "/plugins/devices"
},
{
"title": "Schedulers",
Expand Down
5 changes: 5 additions & 0 deletions website/redirects.js
Original file line number Diff line number Diff line change
Expand Up @@ -108,4 +108,9 @@ module.exports = [
destination: '/nomad/plugins/drivers/virt/install',
permanent: true,
},
{
source: '/nomad/docs/devices',
destination: '/nomad/plugins/devices/',
permanent: true,
},
]

0 comments on commit 3f87747

Please sign in to comment.