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
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
-
Abra o EC2console da Amazon
, configure-o para a região da pilha e escolha Security Groups no painel de navegação. -
Escolha AWS- OpsWorks - RDP -Servidor, escolha a guia Entrada e escolha Editar.
-
Adicione uma regra às seguintes configurações:
-
Tipo — RDP
-
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
-
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
-
-
Clique em Add a layer e adicione uma camada personalizada à pilha com as seguintes configurações.
-
Nome — RecipeTest
-
Nome curto: recipetest
-
-
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. -
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
-
Crie um diretório chamado
windowstest
e navegue até ele. -
Crie um arquivo
metadata.rb
com o seguinte conteúdo e salve-o emwindowstest
.name "windowstest" version "0.1.0"
-
Criar um diretório
recipes
emwindowstest
. -
Crie um arquivo
default.rb
com a seguinte receita e salve-o no diretóriorecipes
.Chef::Log.info("******Creating a data directory.******") directory 'C:\data' do rights :full_control, '
instance_name
\username
' inherits false action :create endSubstituir
username
com seu nome de usuário. -
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. -
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
-
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.
-
-
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á.
-
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
-
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) ...
-
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
-
Escolha Camadas no painel de navegação e, em seguida, escolha o ícone de lápis ao lado do link Receitas da RecipeTest camada.
-
Adicione
windowstest::default
às receitas Setup (Instalação) da camada, escolha + para adicioná-lo à camada e selecione Save (Salvar) para salvar a configuração. -
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 pilhaswindowstest::default
funcionarão. -
Quando a instância
recipetest2
estiver online, verifique sec:\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.