Crea un AWS OpsWorks for Puppet Enterprise master utilizzando AWS CloudFormation - AWS OpsWorks

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Crea un AWS OpsWorks for Puppet Enterprise master utilizzando AWS CloudFormation

Importante

Il AWS OpsWorks for Puppet Enterprise servizio ha raggiunto la fine del ciclo di vita il 31 marzo 2024 ed è stato disattivato sia per i clienti nuovi che per quelli esistenti. Consigliamo vivamente ai clienti di migrare i propri carichi di lavoro verso altre soluzioni il prima possibile. Se hai domande sulla migrazione, contatta il AWS Support Team su AWS re:post o tramite Premium AWS Support.

AWS OpsWorks for Puppet Enterprise ti consente di eseguire un server Puppet Enterprise in. AWSÈ possibile effettuare il provisioning di un server master Puppet Enterprise in circa 15 minuti.

A partire dal 3 maggio 2021, OpsWorks for Puppet Enterprise memorizza alcuni attributi del server Puppet Enterprise in. AWS Secrets Manager Per ulteriori informazioni, consulta Integrazione con AWS Secrets Manager.

La procedura dettagliata seguente ti aiuta a creare un Puppet master in OpsWorks per Puppet Enterprise creando uno stack in. AWS CloudFormation

Prerequisiti

Prima di creare un nuovo Puppet master, crea le risorse esterne a Puppet Enterprise necessarie OpsWorks per accedere e gestire il tuo Puppet master. Per ulteriori informazioni, consulta Prerequisiti nella sezione delle nozioni di base di questa guida.

Se si sta creando un server che utilizza un dominio personalizzato, è necessario un dominio, un certificato e una chiave privata personalizzati. Devi specificare i valori per tutti e tre questi parametri nel tuo modello. AWS CloudFormation Per ulteriori informazioni sui requisiti per i CustomPrivateKey parametri, eCustomDomain,,CustomCertificate,,,,,,, CreateServerconsulta il AWS OpsWorks CM API Reference.

Consulta la sezione OpsWorks -CM della Guida per AWS CloudFormation l'utente di riferimento per conoscere i valori supportati e obbligatori nel AWS CloudFormation modello utilizzato per creare il server.

Creare un Puppet Enterprise Master in AWS CloudFormation

Questa sezione descrive come utilizzare un AWS CloudFormation modello per creare uno stack che crei un server master OpsWorks for Puppet Enterprise. Puoi farlo utilizzando la AWS CloudFormation console o il. AWS CLIÈ disponibile un AWS CloudFormation modello di esempio da utilizzare per creare uno stack di server OpsWorks per Puppet Enterprise. Assicurati di aggiornare il modello di esempio con il nome del server, i ruoli IAM, il profilo dell'istanza, la descrizione del server, il numero di conservazione dei backup, le opzioni di manutenzione e i tag opzionali. Se il server utilizzerà un dominio personalizzato, è necessario specificare i valori per i parametri CustomDomain, CustomCertificate e CustomPrivateKey nel modello AWS CloudFormation . Per ulteriori informazioni su tali opzioni, consulta Crea un Puppet Enterprise Master utilizzando il AWS Management Console nella sezione delle nozioni di base di questa guida.

Crea un Puppet Enterprise Master utilizzando AWS CloudFormation (Console)

  1. Accedi AWS Management Console e apri la AWS CloudFormation console all'indirizzo https://console.aws.amazon.com/cloudformation.

  2. Nella AWS CloudFormation home page, scegli Crea stack.

  3. In Prerequisite - Prepare template (Prerequisito - Preparare modello), se si sta utilizzando il modello AWS CloudFormation di esempio, scegliere Template is ready (Modello pronto).

  4. In Specify template (Specifica modello), scegliere l'origine del modello. Per questa procedura dettagliata, scegli Carica un file modello e carica un AWS CloudFormation modello che crei un server Puppet Enterprise. Cercare il file di modello e quindi scegliere Avanti.

    Un AWS CloudFormation modello può essere in formato YAML o JSON. È disponibile un AWS CloudFormation modello di esempio da utilizzare; assicurati di sostituire i valori di esempio con i tuoi. Puoi utilizzare lo strumento di progettazione del AWS CloudFormation modello per creare un nuovo modello o convalidarne uno esistente. Per ulteriori informazioni su come eseguire questa operazione, consulta la sezione relativa alla panoramica dell'interfaccia di progettazione AWS CloudFormation nella Guida per l'utente AWS CloudFormation .

    CloudFormation Crea una pagina stack
  5. Nella pagina Specify stack details (Specifica dettagli dello stack), immettere un nome per lo stack. Questo sarà diverso dal nome del server, è solo un nome di stack. Nell'area Parameters (Parametri), immettere una password di amministratore per l'accesso alla pagina Web della console Puppet Enterprise. La password deve utilizzare da 8 a 32 caratteri ASCII. Seleziona Successivo.

    Specificare la pagina Dettagli in CloudFormation
  6. Nella pagina Opzioni, puoi aggiungere tag al server che stai creando con lo stack e scegliere un ruolo IAM per la creazione di risorse se non hai già specificato un ruolo IAM da utilizzare nel tuo modello. Dopo aver specificato le opzioni, scegliere Next (Avanti). Per ulteriori informazioni sulle opzioni avanzate come i trigger di rollback, consulta Setting AWS CloudFormation Stack Options nella Guida per l'utente.AWS CloudFormation

  7. Nella pagina Review (Esamina), esaminare le proprie opzioni. Quando si è pronti per creare lo stack del server, scegliere Create (Crea).

    Mentre aspetti di AWS CloudFormation creare lo stack, visualizza lo stato di creazione dello stack. Se si verifica un errore di creazione dello stack, esaminare i messaggi di errore visualizzati nella console per risolvere i problemi. Per ulteriori informazioni sulla risoluzione dei problemi relativi a errori dello stack AWS CloudFormation , consulta la sezione relativa alla risoluzione dei problemi relativi agli errori nella Guida per l'utente AWS CloudFormation .

    Al termine della creazione del server, il Puppet master è disponibile nella home page OpsWorks di Puppet Enterprise, con lo stato online. Dopo che il server è online, la console Puppet Enterprise è disponibile nel dominio del server, in un URL nel formato seguente: https://your_server_name-randomID.region.opsworks-cm.io.

    Nota

    Se hai specificato un dominio, un certificato e una chiave privata personalizzati per il tuo server, crea una voce CNAME nello strumento di gestione DNS dell'azienda che mappa il dominio personalizzato all'endpoint generato automaticamente OpsWorks per Puppet Enterprise per il server. Non è possibile gestire il server o connettersi al sito Web di gestione Puppet Enterprise per il server finché non si esegue il mapping dell'endpoint generato al valore del dominio personalizzato.

    Per ottenere il valore dell'endpoint generato, esegui il AWS CLI comando seguente dopo che il server è online:

    aws opsworks describe-servers --server-name server_name

Crea un Puppet Enterprise Master utilizzando AWS CloudFormation (CLI)

Se sul tuo computer locale non è già in esecuzione AWS CLI, scaricalo e installalo AWS CLI seguendo le istruzioni di installazione nella AWS Command Line Interface User Guide. Questa sezione non descrive tutti i parametri che è puoi utilizzare con il comando create-stack. Per ulteriori informazioni sui parametri create-stack, consulta create-stack nella documentazione di riferimento delle AWS CLI .

  1. Assicurati di completare il modulo Prerequisiti per creare un master OpsWorks for Puppet Enterprise.

  2. Crea un ruolo di servizio e un profilo di istanza. AWS OpsWorks fornisce un AWS CloudFormation modello che è possibile utilizzare per creare entrambi. Esegui il AWS CLI comando seguente per creare uno AWS CloudFormation stack che crei automaticamente il ruolo di servizio e il profilo dell'istanza.

    aws cloudformation create-stack --stack-name OpsWorksCMRoles --template-url https://s3.amazonaws.com/opsworks-cm-us-east-1-prod-default-assets/misc/opsworks-cm-roles.yaml --capabilities CAPABILITY_NAMED_IAM

    Al AWS CloudFormation termine della creazione dello stack, trova e copia gli ARN dei ruoli di servizio nel tuo account.

    aws iam list-roles --path-prefix "/service-role/" --no-paginate

    Nei risultati del comando list-roles, cercare le voci del ruolo di servizio e del profilo dell'istanza che sono simili a quanto segue. Prendi nota degli ARN del ruolo di servizio e del profilo dell'istanza e aggiungili al AWS CloudFormation modello che stai utilizzando per creare lo stack del server master Puppet.

    { "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" } } ] }, "RoleId": "AROZZZZZZZZZZQG6R22HC", "CreateDate": "2018-01-05T20:42:20Z", "RoleName": "aws-opsworks-cm-ec2-role", "Path": "/service-role/", "Arn": "arn:aws:iam::000000000000:role/service-role/aws-opsworks-cm-ec2-role" }, { "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": "opsworks-cm.amazonaws.com" } } ] }, "RoleId": "AROZZZZZZZZZZZZZZZ6QE", "CreateDate": "2018-01-05T20:42:20Z", "RoleName": "aws-opsworks-cm-service-role", "Path": "/service-role/", "Arn": "arn:aws:iam::000000000000:role/service-role/aws-opsworks-cm-service-role" }
  3. Crea il master OpsWorks for Puppet Enterprise eseguendo nuovamente il comando. create-stack

    • Sostituisci stack_name con il nome dello stack. Questo è il nome dello AWS CloudFormation stack, non il tuo Puppet master. Il nome del master Puppet è il valore ServerName nel modello AWS CloudFormation .

    • Sostituisci template con il percorso del file del modello e l'estensione yaml o json con .yaml o .json in base alle esigenze.

    • I valori di --parameters corrispondono a EngineAttributesdall'CreateServerAPI. Per Puppet, i seguenti attributi del motore sono forniti dall'utente per la creazione di un server. Gli attributi del motore r10k collegano il master Puppet a un repository di codice per la gestione della configurazione dell'ambiente del server. Per ulteriori informazioni sugli attributi del motore r10k, consulta la sezione relativa alla gestione di codice con r10k nella documentazione di Puppet Enterprise.

      • PUPPET_ADMIN_PASSWORD, una password di amministratore per l'accesso alla pagina Web della console Puppet Enterprise. La password deve contenere da 8 a 32 caratteri ASCII e includere almeno una lettera maiuscola, una lettera minuscola, un numero e un carattere speciale.

      • PUPPET_R10K_REMOTE, l'URL del repository di controllo (ad esempio, ssh://git@your.git-repo.com:user/control-repo.git). Specificare un r10k remoto apre la porta TCP 8170.

      • PUPPET_R10K_PRIVATE_KEY. Se stai usando un repository Git privato, aggiungi PUPPET_R10K_PRIVATE_KEY per specificare un URL SSH e una chiave SSH privata con codifica PEM.

    aws cloudformation create-stack --stack-name stack_name --template-body file://template.yaml or json --parameters ParameterKey=AdminPassword,ParameterValue="password"

    Di seguito è riportato un esempio.

    aws cloudformation create-stack --stack-name "OpsWorksCMPuppetServerStack" --template-body file://opsworkscm-puppet-server.json --parameters ParameterKey=AdminPassword,ParameterValue="09876543210Ab#"

    L'esempio seguente specifica gli attributi del motore r10k come parametri, quando non sono forniti nel modello. AWS CloudFormation Un modello di esempio che include gli attributi del motore r10k, puppet-server-param-attributes.yaml, è incluso nei modelli AWS CloudFormation di esempio.

    aws cloudformation create-stack --stack-name MyPuppetStack --template-body file://puppet-server-param-attributes.yaml --parameters ParameterKey=AdminPassword,ParameterValue="superSecret1%3" ParameterKey=R10KRemote,ParameterValue="https://www.yourRemote.com" ParameterKey=R10KKey,ParameterValue="$(cat puppet-r10k.pem)"

    L'esempio seguente specifica gli attributi del motore r10k e i relativi valori nel modello AWS CloudFormation ; il comando deve solo puntare al file del modello. Il modello specificato come valore di --template-body, puppet-server-in-file-attributes.yaml, è incluso nel modelli AWS CloudFormation di esempio.

    aws cloudformation create-stack --stack-name MyPuppetStack --template-body file://puppet-server-in-file-attributes.yaml
  4. (Facoltativo) Per ottenere lo stato di creazione dello stack, eseguire il comando seguente.

    aws cloudformation describe-stacks --stack-name stack_name
  5. Al termine della creazione dello stack, passare alla sezione successiva, Configurare il Puppet Master utilizzando lo Starter Kit. Se si verifica un errore di creazione dello stack, esaminare i messaggi di errore visualizzati nella console per risolvere i problemi. Per ulteriori informazioni sulla risoluzione degli errori negli AWS CloudFormation stack, vedere Risoluzione dei problemi degli errori nella Guida per l'utente.AWS CloudFormation