Executar uma receita na instância Windows - 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á.

Executar uma receita na instância Windows

Importante

A ferramenta AWS OpsWorks Stacks o 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 o AWS Support Equipe em AWS Re:post ou através de AWS Premium Support.

Este tópico é basicamente uma versão abreviada do Executar uma receita em uma instância Linux, que mostra como executar uma receita em um stack do Windows. Recomendamos que você passe por Executar uma receita em uma instância Linux primeiro, porque isso fornece uma discussão mais detalhada, a qual é relevante principalmente para ambos tipos de sistemas operacionais.

Para obter uma descrição de como executar receitas em AWS OpsWorks Empilha instâncias Linux, consulteExecutar uma receita em uma instância Linux.

Habilitando RDP o acesso

Antes de começar, caso ainda não tenha feito isso, você deve configurar um grupo de segurança com uma regra de entrada que permita o RDP acesso às suas instâncias. Você precisará desse grupo quando criar a pilha.

Quando você cria a primeira pilha em uma região, AWS OpsWorks O Stacks cria um conjunto de grupos de segurança. Eles incluem um chamado algo comoAWS-OpsWorks-RDP-Server, que AWS OpsWorks As pilhas são anexadas a todas as instâncias do Windows para permitir RDP o acesso. No entanto, por padrão, esse grupo de segurança não tem nenhuma regra, então você deve adicionar uma regra de entrada para permitir o RDP acesso às suas instâncias.

Para permitir o RDP acesso
  1. Abra o EC2console da Amazon, configure-o para a região da pilha e escolha Security Groups no painel de navegação.

  2. Escolha AWS- OpsWorks - RDP -Servidor, escolha a guia Entrada e escolha Editar.

  3. Adicione uma regra às seguintes configurações:

    • TipoRDP

    • Origem: os endereços IP de origem permitidos.

      Normalmente, você permite RDP solicitações de entrada do seu endereço IP ou de um intervalo de endereços IP especificado (normalmente o intervalo de endereços IP corporativos).

nota

Conforme descrito posteriormente, você também deve editar as permissões do usuário para autorizar o RDP acesso de usuários comuns.

Para obter mais informações, consulte Login com RDP.

Criar e executar a receita

As instruções a seguir resumem o procedimento da criação de uma pilha neste exemplo. Para obter mais informações, consulte Criar uma nova pilha.

Criar uma pilha
  1. Abra as AWS OpsWorks Console Stacks e escolha Add Stack. Especifique as seguintes configurações, aceite os padrões para as outras configurações e escolha Add Stack.

    • Nome — WindowsRecipeTest

    • Região: Oeste dos EUA (Oregon)

      Este exemplo funcionará em qualquer região, mas recomendamos o uso de Oeste dos EUA (Oregon) para tutoriais.

    • Sistema operacional padrão: Microsoft Windows Server 2012 R2

  2. Clique em Add a layer e adicione uma camada personalizada à pilha com as seguintes configurações.

    • Nome — RecipeTest

    • Nome curto: recipetest

  3. Adicione uma instância 24 horas por dia, 7 dias por semana, com configurações padrão à RecipeTest camada e inicie-a.

    AWS OpsWorks As pilhas são atribuídas automaticamente AWS-OpsWorks-RDP-Server a essa instância, o que permite que usuários autorizados façam login na instância.

  4. Escolha Permissões e, em seguida, Editar e escolha SSH/RDPe sudo/admin. Os usuários frequentes precisam dessa autorização além do grupo de segurança AWS-OpsWorks-RDP-Server para fazer login na instância.

    nota

    É possível também fazer login como administrador, mas isso requer um procedimento diferente. Para obter mais informações, consulte Login com RDP.

Enquanto a instância está iniciando, o que geralmente demora vários minutos, você pode criar o livro de receitas. A receita deste exemplo cria um diretório de dados e é basicamente a receita de Exemplo 3: Criação de diretórios, modificada para o Windows.

nota

Ao implementar livros de receitas para AWS OpsWorks Empilha instâncias do Windows, você usa uma estrutura de diretórios um pouco diferente da que usa ao implementar livros de receitas para AWS OpsWorks Compila instâncias Linux. Para obter mais informações, consulte Repositórios de livro de receitas.

Para configurar o livro de receitas
  1. Crie um diretório chamado windowstest e navegue até ele.

  2. Crie um arquivo metadata.rb com o seguinte conteúdo e salve-o em windowstest.

    name "windowstest" version "0.1.0"
  3. Criar um diretório recipes em windowstest.

  4. Crie um arquivo default.rb com a seguinte receita e salve-o no diretório recipes.

    Chef::Log.info("******Creating a data directory.******") directory 'C:\data' do rights :full_control, 'instance_name\username' inherits false action :create end

    Substituir username com seu nome de usuário.

  5. Coloque o livro de receitas em um repositório.

    Para instalar seu livro de receitas em um AWS OpsWorks Instância de pilhas, você deve armazená-la em um repositório e fornecer AWS OpsWorks Compila as informações necessárias para baixar o livro de receitas para a instância. É possível armazenar livros de receitas do Windows como um arquivo compactado em um bucket do S3 ou em um repositório Git. Este exemplo usa um bucket do S3, portanto, você deve criar um arquivo .zip do diretório windowstest. Para obter mais informações sobre repositórios de livros de receitas, consulte Repositórios de livro de receitas.

  6. Faça o upload do arquivo em um bucket do S3, torne o arquivo público e registre o arquivo. URL Você também pode usar um arquivo privado, mas um arquivo público é suficiente para este exemplo, além de ser mais fácil de trabalhar com ele.

    O conteúdo entregue aos buckets do Amazon S3 pode conter conteúdo do cliente. Para obter mais informações sobre a remoção de dados confidenciais, consulte Como faço para esvaziar um bucket do S3? ou Como faço para excluir um bucket do S3?.

Agora você pode instalar o livro de receitas e executar a receita.

Para executar a receita
  1. Edite a pilha para habilitar livros de receitas personalizados e especifique as seguintes configurações.

    • Tipo de repositório: Arquivamento do S3

    • Repositório URL — O arquivo do livro de receitas URL que você gravou anteriormente

    Aceite os valores padrão para as outras configurações e escolha Save para atualizar a configuração da pilha.

  2. Execute o comando de pilha Update Custom Cookbooks, que instala a versão atual de seus livros de receitas personalizados nas instâncias da pilha, inclusive em instâncias online. Se uma versão mais antiga de seus livros de receitas estiver presente, este comando a sobrescreverá.

  3. Após a execução de Update Custom Cookbooks (Atualizar livros de receitas personalizados), execute a receita executando o comando de pilhaExecute Recipes (Executar receitas) com a opção Recipes to execute (Receitas para executar) definida como windowstest::default. Esse comando inicia uma execução do Chef com uma lista de execução que consiste na sua receita.

Após a receita ser executada com sucesso, verifique isso.

Para verificar windowstest
  1. Examine o log do Chef. Escolha show na coluna Log da instância opstest1 para exibir o log. Role para baixo e veja sua mensagem de log próxima à parte inferior.

    ... [2014-07-31T17:01:45+00:00] INFO: Storing updated cookbooks/opsworks_cleanup/attributes/customize.rb in the cache. [2014-07-31T17:01:45+00:00] INFO: Storing updated cookbooks/opsworks_cleanup/metadata.rb in the cache. [2014-07-31T17:01:46+00:00] INFO: ******Creating a data directory.****** [2014-07-31T17:01:46+00:00] INFO: Processing template[/etc/hosts] action create (opsworks_stack_state_sync::hosts line 3) ...
  2. Escolha Instâncias, escolha rdp na coluna Ações da instância e solicite uma RDP senha com um prazo de validade adequado. Copie o DNS nome, nome de usuário e senha. Em seguida, você pode usar essas informações com um RDP cliente, como o cliente de Conexão de Área de Trabalho Remota do Windows, para fazer login na instância e verificar se c:\data ela existe. Para obter mais informações, consulte Login com RDP.

nota

Caso sua receita não esteja funcionando corretamente, consulte Solucionar problemas e corrigir receitas para obter dicas de solução de problemas; a maioria delas também se aplica a instâncias do Windows. Se você quiser testar sua correção editando a receita na instância, procure seu livro de receitas no C:\chef\cookbooks diretório, onde AWS OpsWorks O Stacks instala livros de receitas personalizados.

Executar a receita automaticamente

O comando Execute Recipes é uma maneira conveniente de testar receitas personalizadas, por isso ele é usado na maioria dos exemplos. No entanto, na prática as receitas são executadas em pontos padrão em um de ciclo de vida de uma instância, assim como após a instância concluir a inicialização ou quando se implanta um aplicativo. AWS OpsWorks O Stacks simplifica a execução de receitas em sua instância oferecendo suporte a um conjunto de eventos de ciclo de vida para cada camada: Setup, Configure, Deploy, Undeploy e Shutdown. Você pode ter AWS OpsWorks As pilhas executam uma receita automaticamente nas instâncias de uma camada atribuindo a receita ao evento de ciclo de vida apropriado.

Normalmente, os diretórios são criados, assim que uma instância termina a inicialização, que corresponde à instalação do evento. Os procedimentos a seguir mostram como executar a receita de exemplo na configuração usando a mesma pilha criada anteriormente no exemplo. O mesmo procedimento pode ser usado para os outros eventos.

Para executar automaticamente uma receita na instalação
  1. Escolha Camadas no painel de navegação e, em seguida, escolha o ícone de lápis ao lado do link Receitas da RecipeTest camada.

  2. Adicione windowstest::default às receitas Setup (Instalação) da camada, escolha + para adicioná-lo à camada e selecione Save (Salvar) para salvar a configuração.

  3. Escolha Instances, adicione outra instância à layer e a inicie.

    A instância deve ser designada recipetest2. Depois de terminar a inicialização, AWS OpsWorks As pilhas windowstest::default funcionarão.

  4. Quando a instância recipetest2 estiver online, verifique se c:\data está presente.

nota

Se você tiver atribuído receitas aos eventos Setup, Configure ou Deploy, também poderá executá-las manualmente usando um comando de pilha (Setup e Configure) ou um comando de implantação (Deploy) para acionar o evento. Observe que se você tiver várias receitas atribuídas a um evento, esses comandos executam todas elas.