

# `pcluster`
<a name="pcluster"></a>

`pcluster` is the primary AWS ParallelCluster CLI command. You use `pcluster` to launch and manage HPC clusters in the AWS Cloud.

```
pcluster [ -h ] ( create | update | delete | start | stop | status | list |
                  instances | ssh | dcv | createami | configure | version ) ...
```

## Arguments
<a name="pcluster.arguments"></a>

**`pcluster command`**  
Possible choices: [`configure`](pcluster.configure.md), [`create`](pluster.create.md), [`createami`](pcluster.createami.md), [`dcv`](pcluster.dcv.md), [`delete`](pcluster.delete.md), [`instances`](pcluster.instances.md), [`list`](pcluster.list.md), [`ssh`](pcluster.ssh.md), [`start`](pcluster.start.md), [`status`](pcluster.status.md), [`stop`](pcluster.stop.md), [`update`](pcluster.update.md), [`version`](pcluster.version.md)

## Sub-commands:
<a name="pcluster.subcommands"></a>

**Topics**
+ [

## Arguments
](#pcluster.arguments)
+ [

## Sub-commands:
](#pcluster.subcommands)
+ [

# `pcluster configure`
](pcluster.configure.md)
+ [

# `pcluster create`
](pluster.create.md)
+ [

# `pcluster createami`
](pcluster.createami.md)
+ [

# `pcluster dcv`
](pcluster.dcv.md)
+ [

# `pcluster delete`
](pcluster.delete.md)
+ [

# `pcluster instances`
](pcluster.instances.md)
+ [

# `pcluster list`
](pcluster.list.md)
+ [

# `pcluster ssh`
](pcluster.ssh.md)
+ [

# `pcluster start`
](pcluster.start.md)
+ [

# `pcluster status`
](pcluster.status.md)
+ [

# `pcluster stop`
](pcluster.stop.md)
+ [

# `pcluster update`
](pcluster.update.md)
+ [

# `pcluster version`
](pcluster.version.md)

# `pcluster configure`
<a name="pcluster.configure"></a>

Begins an AWS ParallelCluster configuration. For more information, see [Configuring AWS ParallelCluster](getting-started-configuring-parallelcluster.md).

```
pcluster configure [ -h ] [ -c CONFIG_FILE ] [ -r REGION ]
```

## Named arguments
<a name="pcluster.configure.namedargs"></a>

**-h, --help**  
Shows the help text for `pcluster configure`.

**-c * CONFIG\$1FILE*, --config *CONFIG\$1FILE***  
Specifies the full path of the alternative configuration file to use.  
Defaults to `~/.parallelcluster/config`.  
For more information, see [Configuring AWS ParallelCluster](getting-started-configuring-parallelcluster.md).

**-r *REGION*, --region *REGION***  
Specifies the AWS Region to use. If this is specified, the configuration skips AWS Region detection.

To delete the network resources in the VPC, you can delete the CloudFormation networking stack. The stack name starts with "parallelclusternetworking-" and contains the creation time in "YYYYMMDDHHMMSS" format. You can list the stacks using the [list-stacks](https://docs.aws.amazon.com/goto/aws-cli/cloudformation-2010-05-15/ListStacks) command.

```
$ aws --region us-east-1 cloudformation list-stacks \
   --stack-status-filter "CREATE_COMPLETE" \
   --query "StackSummaries[].StackName" | \
   grep -e "parallelclusternetworking-"
    "parallelclusternetworking-pubpriv-20191029205804"
```

The stack can be deleted using the [delete-stack](https://docs.aws.amazon.com/goto/aws-cli/cloudformation-2010-05-15/DeleteStack) command.

```
$ aws --region us-east-1 cloudformation delete-stack \
   --stack-name parallelclusternetworking-pubpriv-20191029205804
```

The VPC that [`pcluster configure`](#pcluster.configure) creates for you is not created in the CloudFormation networking stack. You can delete that VPC manually in the console or by using the AWS CLI.

```
$ aws --region us-east-1 ec2 delete-vpc --vpc-id vpc-0b4ad9c4678d3c7ad
```

# `pcluster create`
<a name="pluster.create"></a>

Creates a new cluster.

```
pcluster create [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] [ -nw ] [ -nr ]
                [ -u TEMPLATE_URL ] [ -t CLUSTER_TEMPLATE ]
                [ -p EXTRA_PARAMETERS ] [ -g TAGS ]
                cluster_name
```

## Positional arguments
<a name="pluster.create.arg"></a>

***cluster\$1name***  
Defines the name of the cluster. The AWS CloudFormation stack name is `parallelcluster-cluster_name`.

## Named arguments
<a name="pluster.create.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster create`.

**-c *CONFIG\$1FILE*, --config *CONFIG\$1FILE***  
Specifies the alternative configuration file to use.  
Defaults to `~/.parallelcluster/config`.

**-r *REGION*, --region *REGION***  
Specifies the AWS Region to use. The priority order used to select the AWS Region for a new cluster is as follows:  

1. `-r` or `--region` parameter to [`pcluster create`](#pluster.create).

1. `AWS_DEFAULT_REGION` environment variable.

1. `aws_region_name` setting in `[aws]` section of AWS ParallelCluster config file (default location is `~/.parallelcluster/config`.) This is the location updated by the [`pcluster configure`](pcluster.configure.md) command.

1. `region` setting in `[default]` section of AWS CLI config file (`~/.aws/config`.)

**-nw, --nowait**  
Indicates not to wait for stack events after running a stack command.  
Defaults to `False`.

**-nr, --norollback**  
Disables stack rollback on error.  
Defaults to `False`.

**-u *TEMPLATE\$1URL*, --template-url *TEMPLATE\$1URL***  
Specifies a URL for the custom AWS CloudFormation template if it was used when created.

**-t *CLUSTER\$1TEMPLATE*, --cluster-template *CLUSTER\$1TEMPLATE***  
Indicates the cluster template to use.

**-p *EXTRA\$1PARAMETERS*, --extra-parameters *EXTRA\$1PARAMETERS***  
Adds extra parameters to stack create.

**-g *TAGS*, --tags *TAGS***  
Specifies additional tags to add to the stack.

When the command is called and begins polling for the status of that call, it's safe to use "Ctrl-C" to exit. You can return to viewing the current status by calling `pcluster status mycluster`.

**Examples using AWS ParallelCluster version 2.11.7:**

```
$ pcluster create mycluster
    Beginning cluster creation for cluster: mycluster
Info: There is a newer version 3.1.4 of AWS ParallelCluster available.
Creating stack named: parallelcluster-mycluster
Status: ComputeFleetHITSubstack - CREATE_IN_PROGRESS
$ pcluster create mycluster --tags '{ "Key1" : "Value1" , "Key2" : "Value2" }'
```

# `pcluster createami`
<a name="pcluster.createami"></a>

(Linux/macOS) Creates a custom AMI to use with AWS ParallelCluster.

```
pcluster createami [ -h ] -ai BASE_AMI_ID -os BASE_AMI_OS
                   [ -i INSTANCE_TYPE ] [ -ap CUSTOM_AMI_NAME_PREFIX ]
                   [ -cc CUSTOM_AMI_COOKBOOK ] [--no-public-ip]
                   [ -post-install POST_INSTALL_SCRIPT ]
                   [ -c CONFIG_FILE ] [-t CLUSTER_TEMPLATE]
                   [--vpc-id VPC_ID] [--subnet-id SUBNET_ID]
                   [ -r REGION ]
```

## Required dependencies
<a name="pcluster.createami.required-dependencies"></a>

In addition to the AWS ParallelCluster CLI, the following dependency is required to run `pcluster createami`:
+ **Packer**: Download the latest version from [https://developer.hashicorp.com/packer/downloads](https://developer.hashicorp.com/packer/downloads).

**Note**  
Before AWS ParallelCluster version 2.8.0, [Berkshelf](https://github.com/berkshelf/berkshelf) (installed using `gem install berkshelf`) was required to use `pcluster createami`.

## Named arguments
<a name="pcluster.createami.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster createami`.

**-ai *BASE\$1AMI\$1ID*, --ami-id *BASE\$1AMI\$1ID***  
Specifies the base AMI to use for building the AWS ParallelCluster AMI.

**-os *BASE\$1AMI\$1OS*, --os *BASE\$1AMI\$1OS***  
Specifies the OS of the base AMI. Valid options are: `alinux2`, `ubuntu1804`, `ubuntu2004`, and `centos7`.  
OS support changes in different AWS ParallelCluster versions:  
+ Support for `centos8` was removed in AWS ParallelCluster version 2.10.4.
+ Support for `centos8` was added, and support for `centos6` was removed in AWS ParallelCluster version 2.10.0.
+ Support for alinux2 was added in AWS ParallelCluster version 2.6.0.
+ Support for ubuntu1804 was added in AWS ParallelCluster version 2.5.0.

**-i *INSTANCE\$1TYPE*, --instance-type *INSTANCE\$1TYPE***  
Specifies the instance type to use to create the AMI.  
Defaults to `t2.xlarge`.  
Support for the `--instance-type` argument was added in AWS ParallelCluster version 2.4.1.

**-ap *CUSTOM\$1AMI\$1NAME\$1PREFIX*, --ami-name-prefix *CUSTOM\$1AMI\$1NAME\$1PREFIX***  
Specifies the prefix name of the resulting AWS ParallelCluster AMI.  
Defaults to `custom-ami-`.

**-cc *CUSTOM\$1AMI\$1COOKBOOK*, --custom-cookbook *CUSTOM\$1AMI\$1COOKBOOK***  
Specifies the cookbook to use to build the AWS ParallelCluster AMI.

**--post-install *POST\$1INSTALL\$1SCRIPT***  
Specifies the path to the post-install script. Paths must use a `s3://`, `https://`, or `file://` URL scheme. Examples include the following:  
+ `https://bucket-name.s3.region.amazonaws.com/path/post_install.sh`
+ `s3://bucket-name/post_install.sh`
+ `file:///opt/project/post_install.sh`
Support for the `--post-install` argument was added in AWS ParallelCluster version 2.10.0.

**--no-public-ip**  
Do not associate a public IP address to the instance used to create the AMI. By default, a public IP address is associated with the instance.  
Support for the `--no-public-ip` argument was added in AWS ParallelCluster version 2.5.0.

**-c *CONFIG\$1FILE*, --config *CONFIG\$1FILE***  
Specifies the alternative configuration file to use.  
Defaults to `~/.parallelcluster/config`.

**-t *CLUSTER\$1TEMPLATE*, --cluster-template *CLUSTER\$1TEMPLATE***  
Specifies the [[`cluster`] section](cluster-definition.md) of the *CONFIG\$1FILE* to use to retrieve the VPC and subnet settings.  
Support for the `--cluster-template` argument was added in AWS ParallelCluster version 2.4.0.

**--vpc-id *VPC\$1ID***  
Specifies the ID of the VPC to use to build the AWS ParallelCluster AMI.  
Support for the `--vpc-id` argument was added in AWS ParallelCluster version 2.5.0.

**--subnet-id *SUBNET\$1ID***  
Specifies the ID of the subnet to use to build the AWS ParallelCluster AMI.  
Support for the `--vpc-id` argument was added in AWS ParallelCluster version 2.5.0.

**-r *REGION*, --region** *REGION*  
Specifies the AWS Region to use. Defaults to the AWS Region specified by using the [`pcluster configure`](pcluster.configure.md) command.

# `pcluster dcv`
<a name="pcluster.dcv"></a>

Interacts with the Amazon DCV server running on the head node.

```
pcluster dcv [ -h ] ( connect )
```

**`pcluster dcv command`**  
Possible choices: [`connect`](#pcluster-dcv-connect)

**Note**  
OS support changes for the `pcluster dcv` command in different AWS ParallelCluster versions:  
Support for the `pcluster dcv` command on `centos8` was added in AWS ParallelCluster version 2.10.0.
Support for the `pcluster dcv` command on AWS Graviton-based instances was added in AWS ParallelCluster version 2.9.0.
Support for the `pcluster dcv` command on `ubuntu1804` was added in AWS ParallelCluster version 2.6.0.
Support for the `pcluster dcv` command on `centos7` was added in AWS ParallelCluster version 2.5.0.

## Named arguments
<a name="pcluster.dcv.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster dcv`.

## Sub-commands
<a name="pcluster-dcv-subcommands"></a>

### `pcluster dcv connect`
<a name="pcluster-dcv-connect"></a>

```
pcluster dcv connect [ -h ] [ -k SSH_KEY_PATH ] [ -r REGION ] cluster_name
```

**Important**  
The URL expires 30 seconds after it's issued. If the connection isn't made before the URL expires, run `pcluster dcv connect` again to generate a new URL.

#### Positional arguments
<a name="pcluster.dcv.connect.arg"></a>

***cluster\$1name***  
Specifies the name of the cluster to connect to.

#### Named arguments
<a name="pcluster.dcv.connect.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster dcv connect`.

**-k *SSH\$1KEY\$1PATH*, --key-path *SSH\$1KEY\$1PATH***  
Key path of the SSH key to use for the connection.  
The key must be the one specified at cluster creation time in the [`key_name`](cluster-definition.md#key-name) configuration parameter. This argument is optional, but if it's not specified, then the key must be available by default for the SSH client. For example, add it to the `ssh-agent` with `ssh-add`.

**-r *REGION*, --region** *REGION*  
Specifies the AWS Region to use. Defaults to the AWS Region specified by using the [`pcluster configure`](pcluster.configure.md) command.

**-s, --show-url**  
Displays a one-time URL for connecting to the Amazon DCV session. The default browser isn't opened when this option is specified.  
Support for the `--show-url` argument was added in AWS ParallelCluster version 2.5.1.

**Example using AWS ParallelCluster version 2.11.7:**

```
$ pcluster dcv connect -k ~/.ssh/id_rsa mycluster
```

Opens the default browser to connect to the Amazon DCV session running on the head node.

A new Amazon DCV session is created if one isn't already started.

 ![\[A screenshot of the DCV console.\]](http://docs.aws.amazon.com/parallelcluster/v2/ug/images/Dcv-image.png) 

# `pcluster delete`
<a name="pcluster.delete"></a>

Deletes a cluster.

```
pcluster delete [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] [ -nw ] cluster_name
```

## Positional arguments
<a name="pcluster.delete.arg"></a>

***cluster\$1name***  
Specifies the name of the cluster to delete.

## Named arguments
<a name="pcluster.delete.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster delete`.

**-c *CONFIG\$1FILE*, --config *CONFIG\$1FILE***  
Specifies the alternative configuration file to use.  
Defaults to `~/.parallelcluster/config`.

**--keep-logs**  
Keep the CloudWatch Logs data after deleting the cluster. The log group remains until you delete it manually, but the log events expire based on the [`retention_days`](cw-log-section.md#cw-log-section-retention-days) setting. The setting defaults to 14 days.  
Support for the **--keep-logs** argument was added in AWS ParallelCluster version 2.6.0.

**-r *REGION*, --region *REGION***  
Specifies the AWS Region to use. Defaults to the AWS Region specified by using the [`pcluster configure`](pcluster.configure.md) command.

When the command is called and begins polling for the status of that call, it's safe to use "Ctrl-C" to exit. You can return to viewing the current status by calling `pcluster status mycluster`.

**Example using AWS ParallelCluster version 2.11.7:**

```
$ pcluster delete -c path/to/config -r us-east-1 mycluster
Deleting: mycluster
Status: RootRole - DELETE_COMPLETE                                              
Cluster deleted successfully.
```

To delete the network resources in the VPC, you can delete the CloudFormation networking stack. The stack name starts with "parallelclusternetworking-" and contains the creation time in "YYYYMMDDHHMMSS" format. You can list the stacks using the [list-stacks](https://docs.aws.amazon.com/goto/aws-cli/cloudformation-2010-05-15/ListStacks) command.

```
$ aws --region us-east-1 cloudformation list-stacks \
   --stack-status-filter "CREATE_COMPLETE" \
   --query "StackSummaries[].StackName" | \
   grep -e "parallelclusternetworking-"
    "parallelclusternetworking-pubpriv-20191029205804"
```

The stack can be deleted using the [delete-stack](https://docs.aws.amazon.com/goto/aws-cli/cloudformation-2010-05-15/DeleteStack) command.

```
$ aws --region us-east-1 cloudformation delete-stack \
   --stack-name parallelclusternetworking-pubpriv-20191029205804
```

The VPC that [`pcluster configure`](pcluster.configure.md) creates for you is not created in the CloudFormation networking stack. You can delete that VPC manually in the console or by using the AWS CLI.

```
$ aws --region us-east-1 ec2 delete-vpc --vpc-id vpc-0b4ad9c4678d3c7ad
```

# `pcluster instances`
<a name="pcluster.instances"></a>

Displays a list of all instances in a cluster.

```
pcluster instances [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] cluster_name
```

## Positional arguments
<a name="pcluster.instances.arg"></a>

***cluster\$1name***  
Displays the instances for the cluster with the provided name.

## Named arguments
<a name="pcluster.instances.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster instances`.

**-c *CONFIG\$1FILE*, --config *CONFIG\$1FILE***  
Specifies the alternative configuration file to use.  
Defaults to `~/.parallelcluster/config`.

**-r *REGION*, --region *REGION***  
Specifies the AWS Region to use. Defaults to the AWS Region specified by using the [`pcluster configure`](pcluster.configure.md) command.

**Example using AWS ParallelCluster version 2.11.7:**

```
$ pcluster instances -c path/to/config -r us-east-1 mycluster
MasterServer         i-1234567890abcdef0
ComputeFleet         i-abcdef01234567890
```

# `pcluster list`
<a name="pcluster.list"></a>

Displays a list of stacks that are associated with AWS ParallelCluster.

```
pcluster list [ -h ] [ -c CONFIG_FILE ] [ -r REGION ]
```

## Named arguments
<a name="pcluster.list.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster list`.

**--color**  
Displays the cluster status in color.  
Defaults to `False`.

**-c *CONFIG\$1FILE*, --config *CONFIG\$1FILE***  
Specifies the alternative configuration file to use.  
Defaults to `c`.

**-r *REGION*, --region *REGION***  
Specifies the AWS Region to use. Defaults to the AWS Region specified by using the [`pcluster configure`](pcluster.configure.md) command.

Lists the name of any AWS CloudFormation stacks named `parallelcluster-*`.

**Example using AWS ParallelCluster version 2.11.7:**

```
$ pcluster list -c path/to/config -r us-east-1
mycluster            CREATE_IN_PROGRESS  2.11.7
myothercluster       CREATE_IN_PROGRESS  2.11.7
```

# `pcluster ssh`
<a name="pcluster.ssh"></a>

Runs an `ssh` command with the user name and IP address of the cluster pre-populated. Arbitrary arguments are appended to the end of the `ssh` command. This command can be customized in the aliases section of the configuration file.

```
pcluster ssh [ -h ] [ -d ] [ -r REGION ] cluster_name
```

## Positional arguments
<a name="pcluster.ssh.arg"></a>

***cluster\$1name***  
Specifies the name of the cluster to connect to.

## Named arguments
<a name="pcluster.ssh.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster ssh`.

**-d, --dryrun**  
Prints the command that would be run and exits.  
Defaults to `False`.

**-r *REGION*, --region *REGION***  
Specifies the AWS Region to use. Defaults to the Region specified by using the [`pcluster configure`](pcluster.configure.md) command.

**Examples using AWS ParallelCluster version 2.11.7:**

```
$ pcluster ssh -d mycluster -i ~/.ssh/id_rsa
SSH command: ssh ec2-user@1.1.1.1 -i /home/user/.ssh/id_rsa
```

```
$ pcluster ssh mycluster -i ~/.ssh/id_rsa
```

Runs `ssh` command with the user name and IP address of the cluster pre-populated:

```
ssh ec2-user@1.1.1.1 -i ~/.ssh/id_rsa
```

The `ssh` command is defined in the global configuration file under the [`[aliases]` section](aliases.md). It can be customized as follows.

```
[ aliases ]
ssh = ssh {CFN_USER}@{MASTER_IP} {ARGS}
```

Variables substituted:

`CFN_USER`  
The user name for the [`base_os`](cluster-definition.md#base-os) that is selected.

`MASTER_IP`  
The IP address of the head node.

`ARGS`  
Optional arguments to pass to the `ssh` command.

# `pcluster start`
<a name="pcluster.start"></a>

Starts the compute fleet for a cluster that has been stopped.

```
pcluster start [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] cluster_name
```

## Positional arguments
<a name="pcluster.start.arg"></a>

***cluster\$1name***  
Starts the compute fleet of the provided cluster name.

## Named arguments
<a name="pcluster.start.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster start`.

**-c *CONFIG\$1FILE*, --config *CONFIG\$1FILE***  
Specifies the alternative configuration file to use.  
Defaults to `~/.parallelcluster/config`.

**-r *REGION*, --region *REGION***  
Specifies the AWS Region to use. Defaults to the AWS Region specified by using the [`pcluster configure`](pcluster.configure.md) command.

**Example using AWS ParallelCluster version 2.11.7:**

```
$ pcluster start mycluster
Compute fleet status is: RUNNING. Submitting status change request.
Request submitted successfully. It might take a while for the transition to complete.
Please run 'pcluster status' if you need to check compute fleet status
```

This command sets the Auto Scaling Group parameters to one of the following: 
+ The initial configuration values (`max_queue_size` and `initial_queue_size`) from the template that was used to create the cluster.
+ The configuration values that were used to update the cluster since it was first created.

# `pcluster status`
<a name="pcluster.status"></a>

Pulls the current status of the cluster.

```
pcluster status [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] [ -nw ] cluster_name
```

## Positional arguments
<a name="pcluster.status.posarg"></a>

**cluster\$1name**  
Shows the status of the cluster with the provided name.

## Named arguments
<a name="pcluster.status.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster status`.

**-c *CONFIG\$1FILE*, `--config` *CONFIG\$1FILE***  
Specifies the alternative configuration file to use.  
Defaults to `~/.parallelcluster/config`.

**-r *REGION*, --region *REGION***  
Specifies the AWS Region to use. Defaults to the AWS Region specified by using the [`pcluster configure`](pcluster.configure.md) command.

**-nw, --nowait**  
Indicates not to wait for stack events after processing a stack command.  
Defaults to `False`.

**Example using AWS ParallelCluster version 2.11.7:**

```
$ pcluster status -c path/to/config -r us-east-1 mycluster
Status: ComputeFleetHITSubstack - CREATE_IN_PROGRESS
```

# `pcluster stop`
<a name="pcluster.stop"></a>

Stops the compute fleet, leaving the head node running.

```
pcluster stop [ -h ] [ -c CONFIG_FILE ] [ -r REGION ] cluster_name
```

## Positional arguments
<a name="pcluster.stop.posarg"></a>

***cluster\$1name***  
Stops the compute fleet of the provided cluster name.

**Example using AWS ParallelCluster version 2.11.7:**

## Named arguments
<a name="pcluster.stop.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster stop`.

**-c *CONFIG\$1FILE*, --config *CONFIG\$1FILE***  
Specifies the alternative configuration file to use.  
Defaults to `~/.parallelcluster/config`.

**-r *REGION*, --region *REGION***  
Specifies the AWS Region to use. Defaults to the AWS Region specified by using the [`pcluster configure`](pcluster.configure.md) command.

```
$ pcluster stop mycluster
Compute fleet status is: STOPPED. Submitting status change request.
Request submitted successfully. It might take a while for the transition to complete.
Please run 'pcluster status' if you need to check compute fleet status
```

Sets the Auto Scaling group parameters to min/max/desired = 0/0/0, and terminates the compute fleet. The head remains running. To terminate all EC2 resources and avoid EC2 charges, consider deleting the cluster.

# `pcluster update`
<a name="pcluster.update"></a>

Analyzes the configuration file to determine if the cluster can be safely updated. If the analysis determines the cluster can be updated, you are prompted to confirm the change. If the analysis shows the cluster can't be updated, the configuration settings that are the source of the conflicts are enumerated with details. For more information, see [Using `pcluster update`](using-pcluster-update.md).

```
pcluster update [ -h ] [ -c CONFIG_FILE ] [ --force ] [ -r REGION ] [ -nr ]
                [ -nw ] [ -t CLUSTER_TEMPLATE ] [ -p EXTRA_PARAMETERS ] [ -rd ]
                [ --yes ] cluster_name
```

## Positional arguments
<a name="pcluster.update.arg"></a>

***cluster\$1name***  
Specifies the name of the cluster to update.

## Named arguments
<a name="pcluster.update.namedarg"></a>

**-h, --help**  
Shows the help text for `pcluster update`.

**-c *CONFIG\$1FILE*, --config *CONFIG\$1FILE***  
Specifies the alternative configuration file to use.  
Defaults to `~/.parallelcluster/config`.

**--force**  
Enables an update even if one or more settings has a blocking change or if an outstanding action is required (such as stopping the compute fleet) before the update can proceed. This shouldn't be combined with the `--yes` argument.

**-r *REGION*, --region *REGION***  
Specifies the AWS Region to use. Defaults to the AWS Region specified by using the [`pcluster configure`](pcluster.configure.md) command.

**-nr, --norollback**  
Disables AWS CloudFormation stack rollback on error.  
Defaults to `False`.

**-nw, --nowait**  
Indicates not to wait for stack events after processing a stack command.  
Defaults to `False`.

**-t *CLUSTER\$1TEMPLATE*, --cluster-template *CLUSTER\$1TEMPLATE***  
Specifies the section of the cluster template to use.

**-p *EXTRA\$1PARAMETERS*, --extra-parameters *EXTRA\$1PARAMETERS***  
Adds extra parameters to a stack update.

**-rd, --reset-desired**  
Resets the current capacity of an Auto Scaling Group to the initial configuration values.  
Defaults to `False`.

**--yes**  
Automatically assumes that the answer to all prompts is yes. This should not be combined with the `--force` argument.

```
$ pcluster update -c path/to/config mycluster
Retrieving configuration from CloudFormation for cluster mycluster...
Validating configuration file .parallelcluster/config...
Found Configuration Changes:

#    parameter                   old value    new value
---  --------------------------  -----------  -----------
     [compute_resource default]
01   min_count                   1            2
02   max_count                   5            12

Validating configuration update...
Congratulations! The new configuration can be safely applied to your cluster.
Do you want to proceed with the update? - Y/N: Y
Updating: mycluster
Calling update_stack
Status: parallelcluster-mycluster - UPDATE_COMPLETE
```

When the command is called and begins polling for the status of that call, it's safe to use "Ctrl-C" to exit. You can return to viewing the current status by calling `pcluster status mycluster`.

# `pcluster version`
<a name="pcluster.version"></a>

Displays the AWS ParallelCluster version.

```
pcluster version [ -h ]
```

For command-specific flags, run: `pcluster [command] –-help`.

## Named arguments
<a name="pcluster.version.named.arguments"></a>

**-h, --help**  
Shows the help text for `pcluster version`.

When the command is called and begins polling for the status of that call, it's safe to use "Ctrl-C" to exit. You can return to viewing the current status by calling `pcluster status mycluster`.

```
$ pcluster version
2.11.7
```