interface NodeRangePropertyProperty
| Language | Type name |
|---|---|
.NET | Amazon.CDK.AWS.Batch.CfnJobDefinition.NodeRangePropertyProperty |
Go | github.com/aws/aws-cdk-go/awscdk/v2/awsbatch#CfnJobDefinition_NodeRangePropertyProperty |
Java | software.amazon.awscdk.services.batch.CfnJobDefinition.NodeRangePropertyProperty |
Python | aws_cdk.aws_batch.CfnJobDefinition.NodeRangePropertyProperty |
TypeScript | aws-cdk-lib » aws_batch » CfnJobDefinition » NodeRangePropertyProperty |
This is an object that represents the properties of the node range for a multi-node parallel job.
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_batch as batch } from 'aws-cdk-lib';
declare const labels: any;
declare const limits: any;
declare const options: any;
declare const requests: any;
const nodeRangePropertyProperty: batch.CfnJobDefinition.NodeRangePropertyProperty = {
targetNodes: 'targetNodes',
// the properties below are optional
consumableResourceProperties: {
consumableResourceList: [{
consumableResource: 'consumableResource',
quantity: 123,
}],
},
container: {
image: 'image',
// the properties below are optional
command: ['command'],
enableExecuteCommand: false,
environment: [{
name: 'name',
value: 'value',
}],
ephemeralStorage: {
sizeInGiB: 123,
},
executionRoleArn: 'executionRoleArn',
fargatePlatformConfiguration: {
platformVersion: 'platformVersion',
},
instanceType: 'instanceType',
jobRoleArn: 'jobRoleArn',
linuxParameters: {
devices: [{
containerPath: 'containerPath',
hostPath: 'hostPath',
permissions: ['permissions'],
}],
initProcessEnabled: false,
maxSwap: 123,
sharedMemorySize: 123,
swappiness: 123,
tmpfs: [{
containerPath: 'containerPath',
size: 123,
// the properties below are optional
mountOptions: ['mountOptions'],
}],
},
logConfiguration: {
logDriver: 'logDriver',
// the properties below are optional
options: options,
secretOptions: [{
name: 'name',
valueFrom: 'valueFrom',
}],
},
memory: 123,
mountPoints: [{
containerPath: 'containerPath',
readOnly: false,
sourceVolume: 'sourceVolume',
}],
networkConfiguration: {
assignPublicIp: 'assignPublicIp',
},
privileged: false,
readonlyRootFilesystem: false,
repositoryCredentials: {
credentialsParameter: 'credentialsParameter',
},
resourceRequirements: [{
type: 'type',
value: 'value',
}],
runtimePlatform: {
cpuArchitecture: 'cpuArchitecture',
operatingSystemFamily: 'operatingSystemFamily',
},
secrets: [{
name: 'name',
valueFrom: 'valueFrom',
}],
ulimits: [{
hardLimit: 123,
name: 'name',
softLimit: 123,
}],
user: 'user',
vcpus: 123,
volumes: [{
efsVolumeConfiguration: {
fileSystemId: 'fileSystemId',
// the properties below are optional
authorizationConfig: {
accessPointId: 'accessPointId',
iam: 'iam',
},
rootDirectory: 'rootDirectory',
transitEncryption: 'transitEncryption',
transitEncryptionPort: 123,
},
host: {
sourcePath: 'sourcePath',
},
name: 'name',
}],
},
ecsProperties: {
taskProperties: [{
containers: [{
image: 'image',
// the properties below are optional
command: ['command'],
dependsOn: [{
condition: 'condition',
containerName: 'containerName',
}],
environment: [{
name: 'name',
value: 'value',
}],
essential: false,
firelensConfiguration: {
type: 'type',
// the properties below are optional
options: {
optionsKey: 'options',
},
},
linuxParameters: {
devices: [{
containerPath: 'containerPath',
hostPath: 'hostPath',
permissions: ['permissions'],
}],
initProcessEnabled: false,
maxSwap: 123,
sharedMemorySize: 123,
swappiness: 123,
tmpfs: [{
containerPath: 'containerPath',
size: 123,
// the properties below are optional
mountOptions: ['mountOptions'],
}],
},
logConfiguration: {
logDriver: 'logDriver',
// the properties below are optional
options: options,
secretOptions: [{
name: 'name',
valueFrom: 'valueFrom',
}],
},
mountPoints: [{
containerPath: 'containerPath',
readOnly: false,
sourceVolume: 'sourceVolume',
}],
name: 'name',
privileged: false,
readonlyRootFilesystem: false,
repositoryCredentials: {
credentialsParameter: 'credentialsParameter',
},
resourceRequirements: [{
type: 'type',
value: 'value',
}],
secrets: [{
name: 'name',
valueFrom: 'valueFrom',
}],
ulimits: [{
hardLimit: 123,
name: 'name',
softLimit: 123,
}],
user: 'user',
}],
enableExecuteCommand: false,
executionRoleArn: 'executionRoleArn',
ipcMode: 'ipcMode',
pidMode: 'pidMode',
taskRoleArn: 'taskRoleArn',
volumes: [{
efsVolumeConfiguration: {
fileSystemId: 'fileSystemId',
// the properties below are optional
authorizationConfig: {
accessPointId: 'accessPointId',
iam: 'iam',
},
rootDirectory: 'rootDirectory',
transitEncryption: 'transitEncryption',
transitEncryptionPort: 123,
},
host: {
sourcePath: 'sourcePath',
},
name: 'name',
}],
}],
},
eksProperties: {
podProperties: {
containers: [{
image: 'image',
// the properties below are optional
args: ['args'],
command: ['command'],
env: [{
name: 'name',
// the properties below are optional
value: 'value',
}],
imagePullPolicy: 'imagePullPolicy',
name: 'name',
resources: {
limits: limits,
requests: requests,
},
securityContext: {
allowPrivilegeEscalation: false,
privileged: false,
readOnlyRootFilesystem: false,
runAsGroup: 123,
runAsNonRoot: false,
runAsUser: 123,
},
volumeMounts: [{
mountPath: 'mountPath',
name: 'name',
readOnly: false,
subPath: 'subPath',
}],
}],
dnsPolicy: 'dnsPolicy',
hostNetwork: false,
imagePullSecrets: [{
name: 'name',
}],
initContainers: [{
image: 'image',
// the properties below are optional
args: ['args'],
command: ['command'],
env: [{
name: 'name',
// the properties below are optional
value: 'value',
}],
imagePullPolicy: 'imagePullPolicy',
name: 'name',
resources: {
limits: limits,
requests: requests,
},
securityContext: {
allowPrivilegeEscalation: false,
privileged: false,
readOnlyRootFilesystem: false,
runAsGroup: 123,
runAsNonRoot: false,
runAsUser: 123,
},
volumeMounts: [{
mountPath: 'mountPath',
name: 'name',
readOnly: false,
subPath: 'subPath',
}],
}],
metadata: {
labels: labels,
},
serviceAccountName: 'serviceAccountName',
shareProcessNamespace: false,
volumes: [{
name: 'name',
// the properties below are optional
emptyDir: {
medium: 'medium',
sizeLimit: 'sizeLimit',
},
hostPath: {
path: 'path',
},
persistentVolumeClaim: {
claimName: 'claimName',
// the properties below are optional
readOnly: false,
},
secret: {
secretName: 'secretName',
// the properties below are optional
optional: false,
},
}],
},
},
instanceTypes: ['instanceTypes'],
};
Properties
| Name | Type | Description |
|---|---|---|
| target | string | The range of nodes, using node index values. |
| consumable | IResolvable | Consumable | Contains a list of consumable resources required by a job. |
| container? | IResolvable | Container | The container details for the node range. |
| ecs | IResolvable | Multi | This is an object that represents the properties of the node range for a multi-node parallel job. |
| eks | IResolvable | Eks | This is an object that represents the properties of the node range for a multi-node parallel job. |
| instance | string[] | The instance types of the underlying host infrastructure of a multi-node parallel job. |
targetNodes
Type:
string
The range of nodes, using node index values.
A range of 0:3 indicates nodes with index values of 0 through 3 . If the starting range value is omitted ( :n ), then 0 is used to start the range. If the ending range value is omitted ( n: ), then the highest possible node index is used to end the range. Your accumulative node ranges must account for all nodes ( 0:n ). You can nest node ranges (for example, 0:10 and 4:5 ). In this case, the 4:5 range properties override the 0:10 properties.
consumableResourceProperties?
Type:
IResolvable | Consumable
(optional)
Contains a list of consumable resources required by a job.
container?
Type:
IResolvable | Container
(optional)
The container details for the node range.
ecsProperties?
Type:
IResolvable | Multi
(optional)
This is an object that represents the properties of the node range for a multi-node parallel job.
eksProperties?
Type:
IResolvable | Eks
(optional)
This is an object that represents the properties of the node range for a multi-node parallel job.
instanceTypes?
Type:
string[]
(optional)
The instance types of the underlying host infrastructure of a multi-node parallel job.
This parameter isn't applicable to jobs that are running on Fargate resources.
In addition, this list object is currently limited to one element.

.NET
Go
Java
Python
TypeScript