AWS::Batch::JobDefinition LinuxParameters
Linux-specific modifications that are applied to the container, such as details for device mappings.
Syntax
To declare this entity in your AWS CloudFormation template, use the following syntax:
JSON
{ "Devices" :
[ Device, ... ]
, "InitProcessEnabled" :Boolean
, "MaxSwap" :Integer
, "SharedMemorySize" :Integer
, "Swappiness" :Integer
, "Tmpfs" :[ Tmpfs, ... ]
}
YAML
Devices:
- Device
InitProcessEnabled:Boolean
MaxSwap:Integer
SharedMemorySize:Integer
Swappiness:Integer
Tmpfs:- Tmpfs
Properties
Devices
-
Any host devices to expose to the container. This parameter maps to
Devices
in the Create a containersection of the Docker Remote API and the --device
option to docker run. Note This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.
Required: No
Type: List of Device
Update requires: No interruption
InitProcessEnabled
-
If true, run an
init
process inside the container that forwards signals and reaps processes. This parameter maps to the--init
option to docker run. This parameter requires version 1.25 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log into your container instance and run the following command: sudo docker version | grep "Server API version"
Required: No
Type: Boolean
Update requires: No interruption
MaxSwap
-
The total amount of swap memory (in MiB) a container can use. This parameter is translated to the
--memory-swap
option to docker runwhere the value is the sum of the container memory plus the maxSwap
value. For more information, see--memory-swap
detailsin the Docker documentation. If a
maxSwap
value of0
is specified, the container doesn't use swap. Accepted values are0
or any positive integer. If themaxSwap
parameter is omitted, the container doesn't use the swap configuration for the container instance it is running on. AmaxSwap
value must be set for theswappiness
parameter to be used.Note This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.
Required: No
Type: Integer
Update requires: No interruption
SharedMemorySize
-
The value for the size (in MiB) of the
/dev/shm
volume. This parameter maps to the--shm-size
option to docker run. Note This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.
Required: No
Type: Integer
Update requires: No interruption
Swappiness
-
This allows you to tune a container's memory swappiness behavior. A
swappiness
value of0
causes swapping not to happen unless absolutely necessary. Aswappiness
value of100
causes pages to be swapped very aggressively. Accepted values are whole numbers between0
and100
. If theswappiness
parameter isn't specified, a default value of60
is used. If a value isn't specified formaxSwap
then this parameter is ignored. IfmaxSwap
is set to 0, the container doesn't use swap. This parameter maps to the--memory-swappiness
option to docker run. Consider the following when you use a per-container swap configuration.
-
Swap space must be enabled and allocated on the container instance for the containers to use.
Note The Amazon ECS optimized AMIs don't have swap enabled by default. You must enable swap on the instance to use this feature. For more information, see Instance Store Swap Volumes in the Amazon EC2 User Guide for Linux Instances or How do I allocate memory to work as swap space in an Amazon EC2 instance by using a swap file?
-
The swap space parameters are only supported for job definitions using EC2 resources.
-
If the
maxSwap
andswappiness
parameters are omitted from a job definition, each container will have a defaultswappiness
value of 60, and the total swap usage will be limited to two times the memory reservation of the container.
Note This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.
Required: No
Type: Integer
Update requires: No interruption
-
Tmpfs
-
The container path, mount options, and size (in MiB) of the tmpfs mount. This parameter maps to the
--tmpfs
option to docker run. Note This parameter isn't applicable to jobs running on Fargate resources and shouldn't be provided.
Required: No
Update requires: No interruption