Instalações de pacotes de sistema operacional por camada - AWS OpsWorks

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

Instalações de pacotes de sistema operacional por camada

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 ou por meio do Premium AWS Support.

Começando com o Chef 12, você deve usar receitas personalizadas para instalar pacotes em camadas que estão executando diferentes sistemas operacionais. Essa abordagem fornece a você o máximo de flexibilidade e controle sobre instalações de pacotes.

Por exemplo, suponha que você queira instalar o Apache em camadas que estão executando RedHat as versões Ubuntu e Amazon do sistema operacional Linux. O pacote Apache para RedHat o Amazon Linux é chamadohttpd, mas no Ubuntu, ele é chamadoapache2.

Para lidar com essa diferença na nomenclatura de pacotes, você pode usar uma sintaxe semelhante à receita de exemplo a seguir. A receita instala o pacote Apache apropriado para cada sistema operacional. Esse exemplo é baseado na documentação do Chef.

package "Install Apache" do case node[:platform] when "redhat", "amazon" package_name "httpd" when "ubuntu" package_name "apache2" end end

Para informações detalhadas sobre como usar o recurso package para gerenciar pacotes, acesse a página package na documentação do Chef.

Como alternativa, você pode usar o método auxiliar value_for_platform a partir do Chef Recipe DSL (linguagem específica do domínio), que faz a mesma coisa de maneira mais sucinta:

package "Install Apache" do package_name value_for_platform( ["redhat", "amazon"] => { "default" => "httpd" }, ["ubuntu"] => { "default" => "apache2" } ) end

Para informações sobre como usar o método auxiliar value_for_platform, consulte Sobre o Recipe DSL.