

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

# Migração de uma pilha existente do Linux para uma nova versão do Chef
<a name="workingcookbook-chef11-migrate"></a>

**Importante**  
O AWS OpsWorks Stacks serviço chegou ao fim da vida útil em 26 de maio de 2024 e foi desativado para clientes novos e existentes. É altamente recomendável que os clientes migrem suas cargas de trabalho para outras soluções o mais rápido possível. Se você tiver dúvidas sobre migração, entre em contato com a AWS Support equipe no [AWS re:POST](https://repost.aws/) ou por meio do Premium [AWS Support](https://aws.amazon.com/support).

Você pode usar o console, a API ou a CLI do OpsWorks Stacks para migrar suas pilhas do Linux para uma versão mais recente do Chef. No entanto, pode ser necessário modificar suas receitas para que sejam compatíveis com a versão mais recente. Durante a preparação para a migração de uma pilha, considere o seguinte.
+ Você não pode alterar as versões da OpsWorks pilha de pilhas do Chef 11 para o Chef 12 editando ou clonando a pilha. A atualização de uma versão principal do Chef não pode ser executada usando os procedimentos desta seção. Para obter mais informações sobre a transição do Chef 11.10 para o Chef 12, consulte [Implementação de receitas: Chef 12](workingcookbook-chef12-linux.md).
+ A transição de uma versão do Chef para outra envolve uma série de alterações, e algumas delas são alterações interruptivas.

  Para obter mais informações sobre a transição do Chef 0.9 para o Chef 11.4, consulte [Migração para uma nova versão do Chef](#workingcookbook-chef11-migrate). Para obter mais informações sobre a transição do Chef 11.4 para o Chef 11.10, consulte [Implementação de receitas: Chef 11.10](workingcookbook-chef11-10.md). Para obter mais informações sobre a transição do Chef 11.10 para o Chef 12, consulte [Implementação de receitas: Chef 12](workingcookbook-chef12-linux.md).
+ As execuções do Chef usam versões diferentes do Ruby nas pilhas do Chef 0.9 e Chef 11.4 (Ruby 1.8.7), do Chef 11.10 (Ruby 2.0.0) e do Chef 12 (Ruby 2.1.6).

  Para obter mais informações, consulte [Versões do Ruby](workingcookbook-ruby.md).
+ As pilhas do Chef 11.10 lidam com a instalação de livros de receitas de forma diferente das pilhas do Chef 0.9 ou do Chef 11.4.

  Essa diferença pode causar problemas durante a migração de pilhas que usam livros de receitas personalizados para o Chef 11.10. Para obter mais informações, consulte [Instalação e precedência em livros de receitas](workingcookbook-chef11-10.md#workingcookbook-chef11-10-override).

 Veja a seguir as diretrizes recomendadas para a migração de uma pilha do Chef para uma versão mais recente do Chef:

**Para migrar uma pilha para uma versão mais recente do Chef**

1. [Faça a clonagem da sua pilha de produção](workingstacks-cloning.md). Na página **Clone Stack**, clique em **Advanced>>** para exibir a seção **Configuration Management**, e mude **Chef version** para a próxima versão mais recente.
**nota**  
Se você estiver começando de uma pilha do Chef 0.9, não poderá fazer upgrade diretamente para o Chef 11.10. Primeiro, será necessário fazer upgrade para o Chef 11.4. Se quiser migrar sua pilha para o Chef 11.10 antes de testar suas receitas, aguarde 20 minutos para que a atualização seja executada e, em seguida, atualize a pilha de 11.4 para 11.10.

1. Adicione instâncias às camadas e teste os aplicativos e livros de receitas da pilha clonada em um sistema de teste ou de preparação. Para mais informações, consulte [Tudo sobre o Chef ...](https://docs.chef.io/index.html).

1. Quando os resultados dos testes forem satisfatórios, faça o seguinte:
   + Se esta for a versão desejada do Chef, você pode usar a pilha clonada como sua pilha de produção ou redefinir a versão do Chef em sua pilha de produção. 
   + Se você estiver fazendo a migração do Chef 0.9 para o Chef 11.10 em duas etapas, repita o processo para migrar a pilha do Chef 11.4 para o Chef 11.10.

**nota**  
Quando você está testando receitas, pode [usar o SSH para se conectar à](workinginstances-ssh.md) instância e, em seguida, usar o comando da [CLI do agente da instância](agent.md) [run\$1command](agent-run.md) para executar as receitas associadas aos vários eventos de ciclo de vida. A CLI do agente é especialmente útil para testar o Configurar receitas, pois você pode usá-la até mesmo quando a configuração falha e a instância não atinge o estado online. Você também pode usar o [comando Configurar pilha](workingstacks-commands.md) para executar novamente o comando Configurar receitas, mas esse comando só estará disponível se a configuração tiver êxito e a instância estiver online. 

É possível atualizar uma pilha em execução para uma nova versão do Chef.

**Para atualizar uma pilha em execução para uma nova versão do Chef**

1. [Edite a pilha](workingstacks-edit.md) para alterar a configuração **Chef version** dela.

1. Salve as novas configurações e espere que as OpsWorks pilhas atualizem as instâncias, o que normalmente leva de 15 a 20 minutos.

**Importante**  
OpsWorks O Stacks não sincroniza a atualização da versão do Chef com os eventos do ciclo de vida. Se você deseja atualizar a versão do Chef em uma pilha de produção, deve tomar cuidado para garantir que a atualização seja concluída antes que o próximo [evento de ciclo de vida](workingcookbook-events.md) ocorra. Quando ocorre um evento, normalmente um evento de configuração ou implantação, o agente da instância atualiza os livros de receitas personalizados e executa as receitas atribuídas a esse evento, esteja a atualização de versão concluída ou não. Não há uma maneira direta de se determinar quando uma atualização de versão está concluída, mas os logs de implantação incluem a versão do Chef.