

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Usar o `pcluster update-cluster`
<a name="using-pcluster-update-cluster-v3"></a>

Na AWS ParallelCluster versão 3.x, [`pcluster update-cluster`](pcluster.update-cluster-v3.md) analisa as configurações usadas para criar o cluster atual e as configurações no arquivo de configuração em busca de problemas. Se algum problema for descoberto, ele será relatado e as etapas a serem seguidas para corrigi-los serão exibidas. Por exemplo, se a [`InstanceType`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-InstanceType) de computação for alterada, a frota de computação deverá ser interrompida antes que uma atualização possa continuar. Esse problema é relatado quando é descoberto. Se nenhum problema de bloqueio for descoberto, o processo de atualização será iniciado e as alterações serão relatadas.

Você pode usar o [`pcluster update-cluster`](pcluster.update-cluster-v3.md) `--dryrun option` para ver as alterações antes de serem executadas. Para obter mais informações, consulte [Exemplos da `pcluster update-cluster`](#pcluster-update-cluster-examples).

Para obter ajuda de solução de problemas, consulte [AWS ParallelCluster solução de problemas](troubleshooting-v3.md).

## Política de atualização: definições
<a name="pcluster-update-policy-definitions"></a>

**Política de atualização: os nós de login no cluster devem ser interrompidos para que esta configuração seja alterada para uma atualização**.  
Não será possível alterar essas configurações enquanto os nós de login no cluster estiverem em uso. Você deve reverter a alteração ou interromper os nós de login dos clusters. (Você pode interromper os nós de login no cluster definindo a contagem de cada pool igual a 0). Depois que os nós de login do cluster forem interrompidos, você poderá atualizar o cluster (pcluster update-cluster) para ativar as alterações.  
Essa política de atualização é suportada a partir da AWS ParallelCluster versão 3.7.0.

**Política de atualização: grupos de nós de login podem ser adicionados, mas a remoção de um grupo exige que todos os nós de login no cluster sejam interrompidos**.  
Para remover um grupo, você deve interromper todos os nós de login no cluster. (Você pode interromper os nós de login no cluster definindo a contagem de cada grupo igual a 0). Após os nós de login do cluster serem interrompidos, você pode atualizar o cluster ([`pcluster update-cluster`](pcluster.update-cluster-v3.md)) para ativar as alterações.  
Essa política de atualização é suportada a partir da AWS ParallelCluster versão 3.11.0.

**Política de atualização: grupos de nós de login devem ser interrompidos para que esta configuração seja alterada para uma atualização**.  
Você não pode alterar essas configurações enquanto os nós de login no pool estiverem em uso. Ou você deve reverter a alteração ou deve parar os nós de login do grupo. (Você pode interromper os nós de login no grupo definindo a contagem do grupo igual a 0). Depois que os nós de login do grupo forem interrompidos, você poderá atualizar o cluster ([`pcluster update-cluster`](pcluster.update-cluster-v3.md)) para ativar as alterações.  
Essa política de atualização é suportada a partir da AWS ParallelCluster versão 3.11.0.

**Política de atualização: essa configuração pode ser alterada durante uma atualização.**  
Depois de alterar essa configuração, o cluster pode ser atualizado usando o [`pcluster update-cluster`](pcluster.update-cluster-v3.md).

**Política de atualização: se essa configuração for alterada, a atualização não será permitida.**  
Depois de alterar essa configuração, o cluster não poderá ser atualizado. Você deve reverter as configurações do cluster original e criar um novo cluster com as configurações atualizadas. Você pode excluir o cluster original em uma data posterior. Use [`pcluster create-cluster`](pcluster.create-cluster-v3.md) para criar um novo cluster. Use [`pcluster delete-cluster`](pcluster.delete-cluster-v3.md) para excluir o cluster original.

**Política de atualização: essa configuração não é analisada durante uma atualização.**  
Essas configurações podem ser alteradas, e o cluster pode ser atualizado usando o [`pcluster update-cluster`](pcluster.update-cluster-v3.md).

**Política de atualização: a frota de computação deve ser interrompida para que essa configuração seja alterada para uma atualização.**  
Essas configurações não podem ser alteradas enquanto a frota de computação existir. A alteração deve ser revertida ou a frota de computação deve ser interrompida (usando [`pcluster update-compute-fleet`](pcluster.update-compute-fleet-v3.md)). Depois que a frota computacional for interrompida, você poderá atualizar o cluster ([`pcluster update-cluster`](pcluster.update-cluster-v3.md)) para ativar as alterações. Por exemplo, se você estiver usando um programador Slurm com [`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues) / [`ComputeResources`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-ComputeResources) / - [`Name`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-Name) / [`MinCount`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-MinCount) > 0, uma frota de computação será iniciada.

**Política de atualização: a frota de computação e os nós de login devem ser interrompidos para que esta configuração seja alterada para uma atualização**.  
Essas configurações não poderão ser alteradas enquanto a frota de computação existir ou se os nós de login estiverem em uso. A alteração deve ser revertida ou a frota de computação e os nós de login devem ser interrompidos (a frota de computação pode ser interrompida usando [`pcluster update-compute-fleet`](pcluster.update-compute-fleet-v3.md)). Depois que a frota de computação e os nós de login forem interrompidos, você poderá atualizar o cluster ([`pcluster update-cluster`](pcluster.update-cluster-v3.md)) para ativar as alterações.

**Política de atualização: essa configuração não pode ser diminuída durante uma atualização.**  
Essas configurações podem ser alteradas, mas não podem ser diminuídas. Se essas configurações tiverem que ser diminuídas, você deve reverter as configurações do cluster original e criar um novo cluster com as configurações atualizadas. Você pode excluir o cluster original em uma data posterior. Use [`pcluster create-cluster`](pcluster.create-cluster-v3.md) para criar um novo cluster. Use [`pcluster delete-cluster`](pcluster.delete-cluster-v3.md) para excluir o cluster original.

**Política de atualização: se essa configuração for alterada, a atualização não será permitida. Se você forçar a atualização, o novo valor será ignorado e o valor antigo será usado.**  
Depois de alterar essa configuração, o cluster não poderá ser atualizado. Você deve reverter as configurações do cluster original e criar um novo cluster com as configurações atualizadas. Você pode excluir o cluster original em uma data posterior. Use [`pcluster create-cluster`](pcluster.create-cluster-v3.md) para criar um novo cluster. Use [`pcluster delete-cluster`](pcluster.delete-cluster-v3.md) para excluir o cluster original.

**Política de atualização: a frota de computação deve ser interrompida ou [`QueueUpdateStrategy`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy) para que essa configuração seja alterada para uma atualização.**  
Essas configurações podem ser alteradas. A frota de computação deve ser interrompida (usando [`pcluster update-compute-fleet`](pcluster.update-compute-fleet-v3.md)) ou [`QueueUpdateStrategy`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy) deve ser definido. Depois que a frota de computação for interrompida ou [`QueueUpdateStrategy`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy) for definido, você poderá atualizar o cluster ([`pcluster update-cluster`](pcluster.update-cluster-v3.md)) para ativar as alterações.  
Essa política de atualização é suportada a partir da AWS ParallelCluster versão 3.2.0.

**Política de atualização: para essa configuração de valores de lista, um novo valor pode ser adicionado durante uma atualização ou a frota de computação deve ser interrompida ao remover um valor existente.**  
Um novo valor para essas configurações pode ser adicionado durante uma atualização. Depois de adicionar um novo valor à lista, o cluster pode ser atualizado usando ([`pcluster update-cluster`](pcluster.update-cluster-v3.md)).  
Para remover um valor existente da lista, a frota de computação deve ser interrompida (usando [`pcluster update-compute-fleet`](pcluster.update-compute-fleet-v3.md)).  
Por exemplo, se você estiver usando um Slurm agendador e adicionando um novo tipo de instância a [Instances/ InstanceType](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-Instances), poderá atualizar o cluster sem interromper a frota computacional. [Para remover um tipo de instância existente de [Instances/ InstanceType](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-Instances), a frota computacional deve ser interrompida primeiro (usando pcluster). update-compute-fleet](pcluster.update-compute-fleet-v3.md)  
Essa política de atualização é suportada a partir da AWS ParallelCluster versão 3.2.0.

**Política de atualização: reduzir o tamanho de uma fila exige que a frota de computação seja interrompida ou **[QueueUpdateStrategy](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy)**definida como TERMINATE para que essa configuração seja alterada para uma atualização.**  
Essas configurações podem ser alteradas, mas se a alteração reduzir o tamanho da fila, a frota de computação deverá ser interrompida (usando o pcluster update-compute-fleet) ou definida como [QueueUpdateStrategy](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy)TERMINATE. Depois que a frota computacional for interrompida ou [QueueUpdateStrategy](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy)definida como TERMINATE, você poderá atualizar o cluster ([pcluster update-cluster](pcluster.update-cluster-v3.md)) para ativar as alterações.   
O TERMINATE definido ao redimensionar a capacidade do cluster encerrará apenas os nós do final da lista de nós e deixará intocados todos os outros nós da mesma partição.  
Por exemplo, se a capacidade inicial do cluster for `MinCount = 5` e `MaxCount = 10`, os nós serão `st-[1-5]; dy-[1-5]`. Ao redimensionar o cluster para `MinCount = 3` e `MaxCount = 5`, a nova capacidade do cluster será composta pelos nós `st-[1-3]; dy-[1-2]`, que não serão alterados durante a atualização. Somente os nós `st-[4-5]; dy-[3-5]` serão encerrados durante a atualização.  
As alterações a seguir são suportadas e não exigem que a frota de computação seja interrompida nem a [QueueUpdateStrategy](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy)configuração para TERMINATE:  
+ Um novo [SlurmQueue](Scheduling-v3.md#Scheduling-v3-SlurmQueues)é adicionado
+ Um novo [ComputeResource](Scheduling-v3.md#Scheduling-v3-SlurmQueues-ComputeResources)é adicionado
+ [MaxCount](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-MaxCount)é aumentado
+ [MinCount](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-MinCount)é aumentado e [MaxCount](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-ComputeResources-MaxCount)é aumentado em pelo menos a mesma quantidade

  **Observação:** essa política de atualização é suportada a partir da AWS ParallelCluster versão 3.9.0.

**Política de atualização: para essa configuração de valores de lista, a frota de computação deve ser interrompida ou [`QueueUpdateStrategy`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy) deve ser configurada para agregar um novo valor; a frota de computação deve ser interrompida ao remover um valor existente.**  
Um novo valor para essas configurações pode ser adicionado durante uma atualização. A frota de computação deve ser interrompida (usando [`pcluster update-compute-fleet`](pcluster.update-compute-fleet-v3.md)) ou [`QueueUpdateStrategy`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy) deve ser definido. Depois que a frota de computação for interrompida ou [`QueueUpdateStrategy`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy) for definido, você poderá atualizar o cluster ([`pcluster update-cluster`](pcluster.update-cluster-v3.md)) para ativar as alterações.  
Para remover um valor existente da lista, a frota de computação deve ser interrompida (usando [`pcluster update-compute-fleet`](pcluster.update-compute-fleet-v3.md)).  
Essa política de atualização é suportada a partir da AWS ParallelCluster versão 3.3.0.

**Política de atualização: todos os nós de computação devem ser interrompidos para a exclusão de um grupo de posicionamento gerenciado. A frota de computação deve ser interrompida ou [`QueueUpdateStrategy`](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy) deve ser configurada para que essa configuração seja alterada para uma atualização.**  
A frota de computação deve ser interrompida (usando [`pcluster update-compute-fleet`](pcluster.update-compute-fleet-v3.md)) para remover um grupo de posicionamento gerenciado. Se você executar uma atualização de cluster para remover um grupo de posicionamento gerenciado antes de interromper a frota de computação, uma mensagem de configuração inválida será retornada e a atualização não prosseguirá. A interrupção da frota de computação garante que nenhuma instância esteja em execução.

## Exemplos da `pcluster update-cluster`
<a name="pcluster-update-cluster-examples"></a>

Essas configurações podem ser alteradas, mas se a alteração reduzir o tamanho da fila, a frota de computação deverá ser interrompida (usando o pcluster update-compute-fleet) ou definida como [QueueUpdateStrategy](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy)TERMINATE. Depois que a frota computacional for interrompida ou [QueueUpdateStrategy](Scheduling-v3.md#yaml-Scheduling-SlurmSettings-QueueUpdateStrategy)definida como TERMINATE, você poderá atualizar o cluster ([pcluster update-cluster](pcluster.update-cluster-v3.md)) para ativar as alterações.
+ Este exemplo demonstra uma atualização com algumas alterações permitidas e a atualização é iniciada diretamente.

  ```
  $ pcluster update-cluster --cluster-name cluster_name --cluster-config ~/.parallelcluster/test_cluster --region us-east-1
  {
    "cluster": {
      "clusterName": cluster_name,
      "cloudformationStackStatus": "UPDATE_IN_PROGRESS",
      "cloudformationStackArn": stack_arn,
      "region": "us-east-1",
      "version": "3.15.0",
      "clusterStatus": "UPDATE_IN_PROGRESS"
    },
    "changeSet": [
      {
        "parameter": "HeadNode.Networking.AdditionalSecurityGroups",
        "requestedValue": [
          "sg-0cd61884c4ad11234"
        ],
        "currentValue": [
          "sg-0cd61884c4ad16341"
        ]
      }
    ]
  }
  ```
+ Este exemplo demonstra uma atualização de simulação com algumas alterações permitidas. A simulação é útil para relatar o conjunto de alterações sem iniciar a atualização.

  ```
  $ pcluster update-cluster --cluster-name cluster_name --cluster-config ~/.parallelcluster/test_cluster --region us-east-1 --dryrun true
  {
    "message": "Request would have succeeded, but DryRun flag is set.",
    "changeSet": [
      {
        "parameter": "HeadNode.Networking.AdditionalSecurityGroups",
        "requestedValue": [
          "sg-0cd61884c4ad11234"
        ],
        "currentValue": [
          "sg-0cd61884c4ad16341"
        ]
      }
    ]
  }
  ```
+ Este exemplo demonstra uma atualização com algumas alterações que bloqueiam a atualização.

  ```
  $ pcluster update-cluster --cluster-name cluster_name --cluster-config ~/.parallelcluster/test_cluster --region us-east-1
  {
    "message": "Update failure",
    "updateValidationErrors": [
      {
        "parameter": "HeadNode.Ssh.KeyName",
        "requestedValue": "mykey_2",
        "message": "Update actions are not currently supported for the 'KeyName' parameter. Restore 'KeyName' value to 'jenkinsjun'. If you need this change, please consider creating a new cluster instead of updating the existing one.",
        "currentValue": "mykey_1"
      },
      {
        "parameter": "Scheduling.SlurmQueues[queue1].ComputeResources[queue1-t2micro].InstanceType",
        "requestedValue": "c4.xlarge",
        "message": "All compute nodes must be stopped. Stop the compute fleet with the pcluster update-compute-fleet command",
        "currentValue": "t2.micro"
      },
      {
        "parameter": "SharedStorage[ebs1].MountDir",
        "requestedValue": "/my/very/very/long/shared_dir",
        "message": "Update actions are not currently supported for the 'MountDir' parameter. Restore 'MountDir' value to '/shared'. If you need this change, please consider creating a new cluster instead of updating the existing one.",
        "currentValue": "/shared"
      }
    ],
    "changeSet": [
      {
        "parameter": "HeadNode.Networking.AdditionalSecurityGroups",
        "requestedValue": [
          "sg-0cd61884c4ad11234"
        ],
        "currentValue": [
          "sg-0cd61884c4ad16341"
        ]
      },
      {
        "parameter": "HeadNode.Ssh.KeyName",
        "requestedValue": "mykey_2",
        "currentValue": "mykey_1"
      },
      {
        "parameter": "Scheduling.SlurmQueues[queue1].ComputeResources[queue1-t2micro].InstanceType",
        "requestedValue": "c4.xlarge",
        "currentValue": "t2.micro"
      },
      {
        "parameter": "SharedStorage[ebs1].MountDir",
        "requestedValue": "/my/very/very/long/shared_dir",
        "currentValue": "/shared"
      }
    ]
  }
  ```