AWS::Batch::JobDefinition PodProperties - AWS CloudFormation

AWS::Batch::JobDefinition PodProperties

The properties for the pod.

Syntax

To declare this entity in your AWS CloudFormation template, use the following syntax:

JSON

{ "Containers" : [ EksContainer, ... ], "DnsPolicy" : String, "HostNetwork" : Boolean, "ImagePullSecrets" : [ ImagePullSecret, ... ], "InitContainers" : [ EksContainer, ... ], "Metadata" : Metadata, "ServiceAccountName" : String, "ShareProcessNamespace" : Boolean, "Volumes" : [ EksVolume, ... ] }

Properties

Containers

The properties of the container that's used on the Amazon EKS pod.

Required: No

Type: Array of EksContainer

Update requires: No interruption

DnsPolicy

The DNS policy for the pod. The default value is ClusterFirst. If the hostNetwork parameter is not specified, the default is ClusterFirstWithHostNet. ClusterFirst indicates that any DNS query that does not match the configured cluster domain suffix is forwarded to the upstream nameserver inherited from the node. For more information, see Pod's DNS policy in the Kubernetes documentation.

Valid values: Default | ClusterFirst | ClusterFirstWithHostNet

Required: No

Type: String

Update requires: No interruption

HostNetwork

Indicates if the pod uses the hosts' network IP address. The default value is true. Setting this to false enables the Kubernetes pod networking model. Most AWS Batch workloads are egress-only and don't require the overhead of IP allocation for each pod for incoming connections. For more information, see Host namespaces and Pod networking in the Kubernetes documentation.

Required: No

Type: Boolean

Update requires: No interruption

ImagePullSecrets

Property description not available.

Required: No

Type: Array of ImagePullSecret

Update requires: No interruption

InitContainers

These containers run before application containers, always runs to completion, and must complete successfully before the next container starts. These containers are registered with the Amazon EKS Connector agent and persists the registration information in the Kubernetes backend data store. For more information, see Init Containers in the Kubernetes documentation.

Note

This object is limited to 10 elements

Required: No

Type: Array of EksContainer

Update requires: No interruption

Metadata

Metadata about the Kubernetes pod. For more information, see Understanding Kubernetes Objects in the Kubernetes documentation.

Required: No

Type: Metadata

Update requires: No interruption

ServiceAccountName

The name of the service account that's used to run the pod. For more information, see Kubernetes service accounts and Configure a Kubernetes service account to assume an IAM role in the Amazon EKS User Guide and Configure service accounts for pods in the Kubernetes documentation.

Required: No

Type: String

Update requires: No interruption

ShareProcessNamespace

Indicates if the processes in a container are shared, or visible, to other containers in the same pod. For more information, see Share Process Namespace between Containers in a Pod.

Required: No

Type: Boolean

Update requires: No interruption

Volumes

Specifies the volumes for a job definition that uses Amazon EKS resources.

Required: No

Type: Array of EksVolume

Update requires: No interruption