Adicionando nós automaticamente ao OpsWorks Puppet Enterprise - 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á.

Adicionando nós automaticamente ao OpsWorks Puppet Enterprise

Importante

O AWS OpsWorks for Puppet Enterprise serviço chegou ao fim da vida útil em 31 de março 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.

Este tópico descreve como adicionar automaticamente nós do Amazon Elastic Compute Cloud (Amazon EC2) ao OpsWorks seu servidor for Puppet Enterprise. Em Adicionar nós para o Puppet master gerenciar, foi ensinado como usar o comando associate-node para adicionar um nó de cada vez no servidor Puppet Enterprise. O código neste tópico mostra como adicionar nós automaticamente usando o método desassistido. O método recomendado de associação desassistida (ou automática) de novos nós é configurar os dados de usuário do Amazon EC2. Por padrão, um servidor OpsWorks for Puppet Enterprise já puppet-agentestá disponível para os sistemas operacionais de nós Ubuntu, Amazon Linux e RHEL.

Para obter informações sobre como desassociar um nó, consulte Desassociar um Node de um OpsWorks for Puppet Enterprise Server este guia e disassociate-nodea documentação da API OpsWorks for Puppet Enterprise.

Etapa 1: criar um perfil do IAM para usar como o perfil de instância

Crie uma função AWS Identity and Access Management (IAM) para usar como seu perfil de instância do EC2 e anexe a política a seguir à função do IAM. Esta política permite que a API do opsworks-cm se comunique com a instância do EC2 durante o registro de nó. Para obter mais informações sobre perfis de instâncias, consulte Uso de perfis de instância na documentação do Amazon EC2. Para informações sobre como criar um perfil do IAM, consulte Criação de um perfil do IAM no console na documentação do Amazon EC2.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "opsworks-cm:AssociateNode", "opsworks-cm:DescribeNodeAssociationStatus", "opsworks-cm:DescribeServers", "ec2:DescribeTags" ], "Resource": "*", "Effect": "Allow" } ] }

AWS OpsWorks fornece um AWS CloudFormation modelo que você pode usar para criar a função do IAM com a declaração de política anterior. O AWS CLI comando a seguir cria a função de perfil da instância para você usando esse modelo. Você pode omitir o --region parâmetro se quiser criar a nova AWS CloudFormation pilha na sua região padrão.

aws cloudformation --region region ID create-stack --stack-name myPuppetinstanceprofile --template-url https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/owpe/opsworks-cm-nodes-roles.yaml --capabilities CAPABILITY_IAM

Etapa 2: criar instâncias com um script de associação autônoma

Para criar instâncias do EC2, você pode copiar o script de dados do usuário incluído no Starter Kit para a userdata seção de instruções de instância do EC2, configurações de lançamento em grupo do Amazon EC2 Auto Scaling ou um modelo. AWS CloudFormation O script é compatível somente com instâncias do EC2 executando os sistemas operacionais Ubuntu e Amazon Linux. Para obter mais informações sobre a adição de scripts aos dados do usuário, consulte Execução de comandos na instância do Linux na inicialização na documentação do Amazon EC2. A maneira mais fácil de criar um novo nó é usar o Assistente de execução da instância do Amazon EC2. Esta descrição usa a configuração do módulo de exemplo do servidor da web Apache descrito em Introdução ao OpsWorks Puppet Enterprise.

  1. O script de dados do usuário no Starter Kit executa o comando da opsworks-cm API associate-node para associar um novo nó ao Puppet master. Nesta versão, ele também instala a versão atual do AWS CLI no nó para você, caso ainda não esteja executando a maioria das up-to-date versões. Salve esse script em um local conveniente como userdata.sh.

    Por padrão, o nome do novo nó registrado é o ID da instância.

  2. Siga o procedimento em Iniciar uma Instância na documentação do EC2, com modificações aqui. No assistente Iniciar instância do EC2, escolha um Amazon Linux AMI.

  3. Na página Configure Instance Details, selecione myPuppetinstanceprofile, a função que você criou em Etapa 1: criar um perfil do IAM para usar como o perfil de instância, como a função do IAM.

  4. Na área Details, faça upload do script userdata.sh que você criou na Etapa 1.

  5. Nenhuma alteração é necessária na página Add Storage. Vá para Add Tags.

    Ao aplicar tags para sua instância do EC2, você pode personalizar o comportamento de userdata.sh. Neste exemplo, aplique a função apache_webserver ao seu nó adicionando a seguinte tag: pp_role com o valor apache_webserver.

    A configuração do valor pp_role no nó define os valores de dados que são permanentemente armazenados no certificado do agente do nó, permitindo a classificação confiável do nó. Para obter mais informações, consulte Solicitações de extensão (dados certificados permanentes) na documentação da plataforma do Puppet.

  6. Na página Configurar grupo de segurança, selecione Adicionar regra e selecione o tipo HTTP para abrir a porta 8080 para o servidor web Apache neste exemplo.

  7. Escolha Review and Launch e, em seguida, selecione Launch. Quando o novo nó é iniciado, ele aplica a configuração do Apache do módulo de amostra que você configurou em Configurar o exemplo do Starter Kit do Apache.

  8. Quando você abrir a página da web vinculada ao DNS público do seu novo nó, deverá ver um site hospedado pelo servidor da web Apache gerenciado pelo Puppet.