[ aws . emr ]

modify-instance-groups

Description

ModifyInstanceGroups modifies the number of nodes and configuration settings of an instance group. The input parameters include the new target instance count for the group and the instance group ID. The call will either succeed or fail atomically.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  modify-instance-groups
[--cluster-id <value>]
[--instance-groups <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--cluster-id (string)

The ID of the cluster to which the instance group belongs.

--instance-groups (list)

Instance groups to change.

(structure)

Modify the size or configurations of an instance group.

InstanceGroupId -> (string)

Unique ID of the instance group to modify.

InstanceCount -> (integer)

Target size for the instance group.

EC2InstanceIdsToTerminate -> (list)

The EC2 InstanceIds to terminate. After you terminate the instances, the instance group will not return to its original requested size.

(string)

ShrinkPolicy -> (structure)

Policy for customizing shrink operations.

DecommissionTimeout -> (integer)

The desired timeout for decommissioning an instance. Overrides the default YARN decommissioning timeout.

InstanceResizePolicy -> (structure)

Custom policy for requesting termination protection or termination of specific instances when shrinking an instance group.

InstancesToTerminate -> (list)

Specific list of instances to be terminated when shrinking an instance group.

(string)

InstancesToProtect -> (list)

Specific list of instances to be protected when shrinking an instance group.

(string)

InstanceTerminationTimeout -> (integer)

Decommissioning timeout override for the specific list of instances to be terminated.

ReconfigurationType -> (string)

Type of reconfiguration requested. Valid values are MERGE and OVERWRITE.

Configurations -> (list)

A list of new or modified configurations to apply for an instance group.

(structure)

Note

Amazon EMR releases 4.x or later.

An optional configuration specification to be used when provisioning cluster instances, which can include configurations for applications and software bundled with Amazon EMR. A configuration consists of a classification, properties, and optional nested configurations. A classification refers to an application-specific configuration file. Properties are the settings you want to change in that file. For more information, see Configuring Applications .

Classification -> (string)

The classification within a configuration.

Configurations -> (list)

A list of additional configurations to apply within a configuration object.

(structure)

Note

Amazon EMR releases 4.x or later.

An optional configuration specification to be used when provisioning cluster instances, which can include configurations for applications and software bundled with Amazon EMR. A configuration consists of a classification, properties, and optional nested configurations. A classification refers to an application-specific configuration file. Properties are the settings you want to change in that file. For more information, see Configuring Applications .

Classification -> (string)

The classification within a configuration.

Properties -> (map)

A set of properties specified within a configuration classification.

key -> (string)

value -> (string)

Properties -> (map)

A set of properties specified within a configuration classification.

key -> (string)

value -> (string)

JSON Syntax:

[
  {
    "InstanceGroupId": "string",
    "InstanceCount": integer,
    "EC2InstanceIdsToTerminate": ["string", ...],
    "ShrinkPolicy": {
      "DecommissionTimeout": integer,
      "InstanceResizePolicy": {
        "InstancesToTerminate": ["string", ...],
        "InstancesToProtect": ["string", ...],
        "InstanceTerminationTimeout": integer
      }
    },
    "ReconfigurationType": "OVERWRITE"|"MERGE",
    "Configurations": [
      {
        "Classification": "string",
        "Configurations": [
          {
            "Classification": "string",
            "Configurations": ,
            "Properties": {"string": "string"
              ...}
          }
          ...
        ],
        "Properties": {"string": "string"
          ...}
      }
      ...
    ]
  }
  ...
]

--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.

Output

None