[ aws . batch ]

update-compute-environment

Description

Updates an Batch compute environment.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  update-compute-environment
--compute-environment <value>
[--state <value>]
[--compute-resources <value>]
[--service-role <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--compute-environment (string)

The name or full Amazon Resource Name (ARN) of the compute environment to update.

--state (string)

The state of the compute environment. Compute environments in the ENABLED state can accept jobs from a queue and scale in or out automatically based on the workload demand of its associated queues.

If the state is ENABLED , then the Batch scheduler can attempt to place jobs from an associated job queue on the compute resources within the environment. If the compute environment is managed, then it can scale its instances out or in automatically, based on the job queue demand.

If the state is DISABLED , then the Batch scheduler doesn’t attempt to place jobs within the environment. Jobs in a STARTING or RUNNING state continue to progress normally. Managed compute environments in the DISABLED state don’t scale out. However, they scale in to minvCpus value after instances become idle.

Possible values:

  • ENABLED

  • DISABLED

--compute-resources (structure)

Details of the compute resources managed by the compute environment. Required for a managed compute environment. For more information, see Compute Environments in the Batch User Guide .

minvCpus -> (integer)

The minimum number of Amazon EC2 vCPUs that an environment should maintain.

Note

This parameter isn’t applicable to jobs that are running on Fargate resources, and shouldn’t be specified.

maxvCpus -> (integer)

The maximum number of Amazon EC2 vCPUs that an environment can reach.

Note

With both BEST_FIT_PROGRESSIVE and SPOT_CAPACITY_OPTIMIZED allocation strategies, Batch might need to exceed maxvCpus to meet your capacity requirements. In this event, Batch never exceeds maxvCpus by more than a single instance. That is, no more than a single instance from among those specified in your compute environment.

desiredvCpus -> (integer)

The desired number of Amazon EC2 vCPUS in the compute environment.

Note

This parameter isn’t applicable to jobs that are running on Fargate resources, and shouldn’t be specified.

subnets -> (list)

The VPC subnets where the compute resources are launched. Fargate compute resources can contain up to 16 subnets. Providing an empty list will be handled as if this parameter wasn’t specified and no change is made. This can’t be specified for EC2 compute resources. For more information, see VPCs and Subnets in the Amazon VPC User Guide .

(string)

securityGroupIds -> (list)

The Amazon EC2 security groups associated with instances launched in the compute environment. This parameter is required for Fargate compute resources, where it can contain up to 5 security groups. This can’t be specified for EC2 compute resources. Providing an empty list is handled as if this parameter wasn’t specified and no change is made.

(string)

Shorthand Syntax:

minvCpus=integer,maxvCpus=integer,desiredvCpus=integer,subnets=string,string,securityGroupIds=string,string

JSON Syntax:

{
  "minvCpus": integer,
  "maxvCpus": integer,
  "desiredvCpus": integer,
  "subnets": ["string", ...],
  "securityGroupIds": ["string", ...]
}

--service-role (string)

The full Amazon Resource Name (ARN) of the IAM role that allows Batch to make calls to other Amazon Web Services services on your behalf. For more information, see Batch service IAM role in the Batch User Guide .

Warning

If the compute environment has a service-linked role, it can’t be changed to use a regular IAM role. Likewise, if the compute environment has a regular IAM role, it can’t be changed to use a service-linked role.

If your specified role has a path other than / , then you must either specify the full role ARN (this is recommended) or prefix the role name with the path.

Note

Depending on how you created your Batch service role, its ARN might contain the service-role path prefix. When you only specify the name of the service role, Batch assumes that your ARN doesn’t use the service-role path prefix. Because of this, we recommend that you specify the full ARN of your service role when you create compute environments.

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See ‘aws help’ for descriptions of global parameters.

Examples

To update a compute environment

This example disables the P2OnDemand compute environment so it can be deleted.

Command:

aws batch update-compute-environment --compute-environment P2OnDemand --state DISABLED

Output:

{
    "computeEnvironmentName": "P2OnDemand",
    "computeEnvironmentArn": "arn:aws:batch:us-east-1:012345678910:compute-environment/P2OnDemand"
}

Output

computeEnvironmentName -> (string)

The name of the compute environment. Up to 128 letters (uppercase and lowercase), numbers, hyphens, and underscores are allowed.

computeEnvironmentArn -> (string)

The Amazon Resource Name (ARN) of the compute environment.