Introdução a livros de receitas - 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á.

Introdução a livros de receitas

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.

Uma pilha AWS OpsWorks Stacks em nível de produção normalmente requer alguma personalização, o que geralmente significa implementar um livro de receitas personalizado do Chef com uma ou mais receitas, arquivos de atributos ou arquivos de modelo. Este tópico é um tutorial de introdução à implementação de livros de receitas para AWS OpsWorks Stacks.

Para obter mais informações sobre como o AWS OpsWorks Stacks usa livros de receitas, que incluem uma breve introdução geral aos livros de receitas, consulte. Livros de receitas e receitas Para obter mais informações sobre como implementar e testar receitas do Chef, consulte Test-Driven Infrastructure with Chef, 2nd Edition.

Os exemplos do tutorial são divididos em duas seções:

  • Conceitos básicos do livro de receitas é um conjunto de demonstrações de exemplo projetadas para os usuários que não estão familiarizados com o Chef; usuários experientes no Chef podem ignorar essa seção.

    Os exemplos mostrarão as noções básicas de como implementar livros de receitas para executar tarefas comuns, como instalação de pacotes ou criação de diretórios. Para simplificar o processo, você usará duas ferramentas úteis, Vagrant e Test Kitchen, para executar a maioria dos exemplos localmente em uma máquina virtual. Antes de começar Conceitos básicos do livro de receitas, você deve ler Vagrant e Test Kitchen para saber como instalar e usar essas ferramentas. Como o Test Kitchen ainda não é compatível com o Windows, os exemplos são todos para o Linux, com observações indicando como adaptá-los para o Windows.

  • Implementando livros de receitas para pilhas AWS OpsWorksdescreve como implementar receitas para AWS OpsWorks pilhas, inclusive para pilhas do Windows.

    Ele também inclui alguns tópicos mais avançados como, por exemplo, como usar Berkshelf para gerenciar livros de receitas externos. Os exemplos são escritos para novos usuários do Chef, da mesma forma que os exemplos em Conceitos básicos do livro de receitas. No entanto, o AWS OpsWorks Stacks funciona de forma um pouco diferente do Chef Server, por isso recomendamos que usuários experientes do Chef pelo menos leiam esta seção.

Vagrant e Test Kitchen

Se você trabalha com receitas para instâncias do Linux, o Vagrant e o Test Kitchen são ferramentas muito úteis para aprendizado e desenvolvimento e testes iniciais. Este oferece descrições breves do Vagrant e do Test Kitchen e indica as instruções de instalação e demonstrações para que você conheça e se familiarize com os conceitos básicos de como usar as ferramentas. Embora o Vagrant seja compatível com o Windows, o Test Kitchen não é; portanto, somente exemplos para Linux são fornecidos para essas ferramentas.

Vagrant

O Vagrant fornece um ambiente consistente para execução e teste de código em uma máquina virtual. Ele é compatível com uma grande variedade de ambientes, chamados de caixas do Vagrant, cada um representando um sistema operacional configurado. Para AWS OpsWorks Stacks, os ambientes de interesse são baseados nas distribuições Ubuntu, Amazon ou Red Hat Enterprise Linux (RHEL), então os exemplos usam principalmente uma caixa Vagrant chamada. opscode-ubuntu-12.04

O Vagrant está disponível para sistemas Linux, Windows e Macintosh; portanto, você pode usar a estação de trabalho de sua preferência para implementar e testar receitas em qualquer sistema operacional compatível. Os exemplos deste capítulo foram criados em um sistema Linux Ubuntu, mas converter os procedimentos para os sistemas Windows ou Macintosh é simples.

O Vagrant é basicamente um wrapper para um provedor de virtualização. A maioria dos exemplos usa o VirtualBoxprovedor. VirtualBox é gratuito e está disponível para sistemas Linux, Windows e Macintosh. O passo a passo do Vagrant fornece instruções de instalação, caso você ainda não tenha VirtualBox em seu sistema. Observe que você pode executar ambientes baseados no Ubuntu, VirtualBox mas o Amazon Linux está disponível somente para instâncias do Amazon EC2. No entanto, você pode executar um sistema operacional semelhante, como o CentOS VirtualBox, o que é útil para desenvolvimento e teste iniciais.

Para obter informações sobre outros provedores, consulte a documentação do Vagrant. Especificamente, o provedor do plug-in vagrant-aws permite que você use o Vagrant com instâncias Amazon EC2. Esse provedor é especialmente útil para testar receitas no Amazon Linux, que está disponível apenas em instâncias Amazon EC2. O provedor vagrant-aws é gratuito, mas você precisa ter uma conta da AWS e pagar por todos os recursos da AWS que usar.

Nesse ponto, você deve passar pela demonstração Conceitos básicos do Vagrant, que descreve como instalá-lo na estação de trabalho e ensina os conceitos básicos de como usá-lo. Observe que os exemplos deste capítulo não usam um repositório Git. Portanto, você pode omitir essa parte da demonstração, se preferir.

Test Kitchen

O Test Kitchen simplifica o processo de execução e teste dos livros de receitas no Vagrant. Como uma questão prática, você raramente precisará usar o Vagrant diretamente, isso se alguma vez precisar. O Test Kitchen executa tarefas mais comuns, incluindo:

  • Como executar uma instância no Vagrant.

  • Como transferir livros de receitas para a instância.

  • Como executar as receitas do livro de receitas na instância.

  • Como testar as receitas de um livro de receitas na instância.

  • Como usar o SSH para fazer login na instância.

Em vez de instalar o gem do Test Kitchen diretamente, recomendamos instalar o Chef DK. Além do próprio Chef, este pacote inclui Test Kitchen, Berkshelf e várias outras ferramentas úteis. ChefSpec

Nesse ponto, você deve passar pela demonstração Conceitos básicos do Test Kitchen, que apresenta os conceitos básicos de como usá-lo para executar e testar receitas.

nota

Os exemplos neste capítulo usam o Test Kitchen como uma forma conveniente para executar receitas. Se você preferir, pode interromper a demonstração Conceitos básicos após concluir a seção Como verificar manualmente, que abrange tudo que é preciso saber para os exemplos. No entanto, o Test Kitchen é principalmente uma plataforma de teste compatível com estruturas de teste como o sistema automatizado de testes bash (BATS). Você deve concluir o restante da demonstração em algum momento para aprender como usar o Test Kitchen para testar as receitas.