9912dfd1e6
It is really unclear on how to use this feature. it took me a while to find this, so I thought I would purpose how to use this.
65 lines
2.2 KiB
Plaintext
65 lines
2.2 KiB
Plaintext
---
|
|
layout: docs
|
|
page_title: ephemeral_disk Stanza - Job Specification
|
|
description: |-
|
|
The "ephemeral_disk" stanza describes the ephemeral disk requirements of the
|
|
group. Ephemeral disks can be marked as sticky and support live data
|
|
migrations.
|
|
---
|
|
|
|
# `ephemeral_disk` Stanza
|
|
|
|
<Placement groups={['job', 'group', 'ephemeral_disk']} />
|
|
|
|
The `ephemeral_disk` stanza describes the ephemeral disk requirements of the
|
|
group. Ephemeral disks can be marked as sticky and support live data migrations.
|
|
All tasks in this group will share the same ephemeral disk.
|
|
|
|
```hcl
|
|
job "docs" {
|
|
group "example" {
|
|
ephemeral_disk {
|
|
migrate = true
|
|
size = 500
|
|
sticky = true
|
|
}
|
|
}
|
|
}
|
|
```
|
|
The ephemeral disk can be referenced under `alloc/data/`. More information can be found in the [filesystem internals].
|
|
|
|
## `ephemeral_disk` Parameters
|
|
|
|
- `migrate` `(bool: false)` - When `sticky` is true, this specifies that the
|
|
Nomad client should make a best-effort attempt to migrate the data from a
|
|
remote machine if placement cannot be made on the original node. During data
|
|
migration, the task will block starting until the data migration has
|
|
completed. Migration is atomic and any partially migrated data will be
|
|
removed if an error is encountered.
|
|
|
|
- `size` `(int: 300)` - Specifies the size of the ephemeral disk in MB. The
|
|
current Nomad ephemeral storage implementation does not enforce this limit;
|
|
however, it is used during job placement.
|
|
|
|
- `sticky` `(bool: false)` - Specifies that Nomad should make a best-effort
|
|
attempt to place the updated allocation on the same machine. This will move
|
|
the `local/` and `alloc/data` directories to the new allocation.
|
|
|
|
## `ephemeral_disk` Examples
|
|
|
|
The following examples only show the `ephemeral_disk` stanzas. Remember that the
|
|
`ephemeral_disk` stanza is only valid in the placements listed above.
|
|
|
|
### Sticky Volumes
|
|
|
|
This example shows enabling sticky volumes with Nomad using ephemeral disks:
|
|
|
|
```hcl
|
|
ephemeral_disk {
|
|
sticky = true
|
|
}
|
|
```
|
|
|
|
[resources]: /docs/job-specification/resources 'Nomad resources Job Specification'
|
|
[filesystem internals]: /docs/concepts/filesystem#templates-artifacts-and-dispatch-payloads 'Filesystem internals documentation'
|