Aggiorna un server OpsWorks for Puppet Enterprise per utilizzare un dominio personalizzato - 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à.

Aggiorna un server OpsWorks for Puppet Enterprise per utilizzare un dominio personalizzato

Importante

Il AWS OpsWorks for Puppet Enterprise servizio ha raggiunto la fine del ciclo di vita il 31 marzo 2024 ed è stato disabilitato 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.

Questa sezione descrive come aggiornare un server OpsWorks for Puppet Enterprise esistente per utilizzare un dominio e un certificato personalizzati utilizzando un backup del server per creare un nuovo server. In sostanza, stai copiando un server OpsWorks for Puppet Enterprise 2.0 esistente creando un nuovo server da un backup, quindi configurando il nuovo server per utilizzare un dominio, un certificato e una chiave privata personalizzati.

Prerequisiti

Di seguito sono riportati i requisiti per aggiornare un server OpsWorks for Puppet Enterprise esistente per utilizzare un dominio e un certificato personalizzati.

  • Il server che desideri aggiornare (o copiare) deve eseguire Puppet Enterprise 2019.8.5.

  • Decidere quale backup si desidera utilizzare per creare un nuovo server. È necessario avere almeno un backup disponibile del server che si desidera aggiornare. Per ulteriori informazioni sui backup in Puppet Enterprise, consulta OpsWorks . Esegui il backup di un OpsWorks Puppet Enterprise Server

  • Predisporre gli ARN del ruolo di servizio e del profilo di istanza utilizzati per creare il server esistente che è l'origine del backup.

  • Assicurarsi di utilizzare la versione più recente della AWS CLI. Per ulteriori informazioni sull'aggiornamento AWS CLI degli strumenti, consulta la Guida per l'utente dell'interfaccia AWS CLI a riga di comando di AWS (Installazione della Guida per l'utente dell'interfaccia a riga di comando di AWS).

Limitazioni

Quando aggiorni un server esistente creando un nuovo server da un backup, il nuovo server non può essere esattamente lo stesso del server esistente OpsWorks per Puppet Enterprise.

  • È possibile completare questa procedura solo utilizzando AWS CLI o uno degli AWS SDK. Non è possibile creare un nuovo server da un backup utilizzando la AWS Management Console.

  • Il nuovo server non può utilizzare lo stesso nome del server esistente all'interno di un account e all'interno di una regione AWS. Il nome deve essere diverso da quello del server esistente utilizzato come origine del backup.

  • I nodi collegati al server esistente non vengono gestiti dal nuovo server. È necessario effettuare una delle seguenti operazioni.

    • Collegare nodi diversi, perché i nodi non possono essere gestiti da più master Puppet.

    • Eseguire la migrazione dei nodi dal server esistente (l'origine del backup) al nuovo server e al nuovo endpoint di dominio personalizzato. Per ulteriori informazioni sulla migrazione dei nodi, vedere la documentazione di Puppet Enterprise.

Aggiornare un server per utilizzare un dominio personalizzato

Per aggiornare un master Puppet esistente, è possibile crearne una copia eseguendo il comando create-server, aggiungendo parametri per specificare un backup, un dominio personalizzato, un certificato personalizzato e una chiave privata personalizzata.

  1. Se non sono presenti ARN del ruolo di servizio o del profilo di istanza disponibili da specificare nel comando create-server, attenersi alle fasi da 1 a 5 in Crea un server Chef Automate utilizzando il AWS CLI per creare un ruolo di servizio e un profilo di istanza che è possibile utilizzare.

  2. Se non è stato già fatto, trovare il backup del master Puppet esistente su cui si desidera basare un nuovo server con un dominio personalizzato. Esegui il comando seguente per mostrare informazioni su tutti i OpsWorks backup di Puppet Enterprise nel tuo account e in una regione. Assicurarsi di annotare l'ID del backup che si desidera utilizzare.

    aws opsworks-cm --region region name describe-backups
  3. Crea il server OpsWorks for Puppet Enterprise eseguendo il comando. create-server

    • Il --engine valore è PuppetMonolithic, --engine-model è ed --engine-version è 2019 o2017.

    • Il nome del server deve essere univoco all'interno del tuo AWS account, all'interno di ogni regione. I nomi dei server devono iniziare con una lettera; quindi sono consentiti lettere, numeri o trattini (-) fino a un massimo di 40 caratteri.

    • Utilizza l'ARN del profilo dell'istanza e l'ARN del ruolo di servizio copiati nella Fase 3 e 4.

    • I tipi di istanza validi sono c4.large, c4.xlarge o c4.2xlarge. Per ulteriori informazioni sulle specifiche di questi tipi di istanze, consulta Instance Types nella Amazon EC2 User Guide.

    • Il parametro --engine-attributes è opzionale; se non si specifica una password di amministratore Puppet, il processo di creazione del server ne genera uno. Se si aggiunge --engine-attributes, specificare una PUPPET_ADMIN_PASSWORD, una password di amministratore per l'accesso alla pagina Web della console Puppet Enterprise. La password deve utilizzare da 8 a 32 caratteri ASCII.

    • Una coppia di chiavi SSH è facoltativa, ma può aiutare a connettersi al Puppet master se si deve reimpostare la password di amministratore della console. Per ulteriori informazioni sulla creazione di una coppia di chiavi SSH, consulta Amazon EC2 Key Pairs nella Amazon EC2 User Guide.

    • Per utilizzare un dominio personalizzato, aggiungere i seguenti parametri al comando. Diversamente, il processo di creazione del master Puppet genera automaticamente un endpoint. Tutti e tre i parametri sono necessari per configurare un dominio personalizzato. Per informazioni sui requisiti aggiuntivi per l'utilizzo di questi parametri, consulta il AWS OpsWorks CM API CreateServerReference.

      • --custom-domain - Un endpoint pubblico opzionale di un server, ad esempio https://aws.my-company.com.

      • --custom-certificate - Un certificato HTTPS in formato PEM. Il valore può essere un singolo certificato autofirmato o una catena di certificati.

      • --custom-private-key - Una chiave privata in formato PEM per la connessione al server tramite HTTPS. La chiave privata non deve essere crittografata; non può essere protetta da password o da passphrase.

    • La manutenzione del sistema settimanale è obbligatoria. I valori validi devono essere specificati nel seguente formato: DDD:HH:MM. L'ora specificata è espressa nel Tempo coordinato universale (UTC). Se non si specifica un valore per --preferred-maintenance-window, il valore predefinito è un periodo casuale di un'ora il martedì, mercoledì o venerdì.

    • I valori validi per --preferred-backup-window devono essere specificati in uno dei seguenti formati: HH:MM per backup giornaliero o DDD:HH:MM per backup settimanali. L'orario specificato è nel formato UTC. Il valore predefinito è un'ora di avvio giornaliera casuale. Per disattivare i backup automatici, aggiungere invece il parametro --disable-automated-backup.

    • Per --security-group-ids, inserire uno o più ID del gruppo di sicurezza, separati da uno spazio.

    • Per --subnet-ids, inserire un ID di sottorete.

    aws opsworks-cm create-server --engine "Puppet" --engine-model "Monolithic" --engine-version "2019" --server-name "server_name" --instance-profile-arn "instance_profile_ARN" --instance-type "instance_type" --engine-attributes '{"PUPPET_ADMIN_PASSWORD":"ASCII_password"}' --key-pair "key_pair_name" --preferred-maintenance-window "ddd:hh:mm" --preferred-backup-window "ddd:hh:mm" --security-group-ids security_group_id1 security_group_id2 --service-role-arn "service_role_ARN" --subnet-ids subnet_ID

    Nell'esempio seguente viene creato un master Puppet che utilizza un dominio personalizzato.

    aws opsworks-cm create-server \ --engine "Puppet" \ --engine-model "Monolithic" \ --engine-version "2019" \ --server-name "puppet-02" \ --instance-profile-arn "arn:aws:iam::1019881987024:instance-profile/aws-opsworks-cm-ec2-role" \ --instance-type "c4.large" \ --engine-attributes '{"PUPPET_ADMIN_PASSWORD":"zZZzDj2DLYXSZFRv1d"}' \ --custom-domain "my-puppet-master.my-corp.com" \ --custom-certificate "-----BEGIN CERTIFICATE----- EXAMPLEqEXAMPLE== -----END CERTIFICATE-----" \ --custom-private-key "-----BEGIN RSA PRIVATE KEY----- EXAMPLEqEXAMPLE= -----END RSA PRIVATE KEY-----" \ --key-pair "amazon-test" --preferred-maintenance-window "Mon:08:00" \ --preferred-backup-window "Sun:02:00" \ --security-group-ids sg-b00000001 sg-b0000008 \ --service-role-arn "arn:aws:iam::044726508045:role/service-role/aws-opsworks-cm-service-role" \ --subnet-ids subnet-383daa71
  4. OpsWorks for Puppet Enterprise impiega circa 15 minuti per creare un nuovo server. Nell'output del comando create-server, copiare il valore dell'attributo Endpoint. Di seguito è riportato un esempio.

    "Endpoint": "puppet-2019-exampleexample.opsworks-cm.us-east-1.amazonaws.com"

    Non annullare l'output del comando create-server né chiudere la sessione shell, poiché l'output può contenere informazioni importanti che non vengono visualizzate nuovamente. Per ottenere le password e lo starter kit dai risultati create-server, passare alla fase successiva.

  5. Se hai scelto di fare in modo che OpsWorks Puppet Enterprise generi una password per te, puoi estrarla in un formato utilizzabile dai create-server risultati utilizzando un processore JSON come jq. Dopo aver installato jq, è possibile eseguire i seguenti comandi per estrarre la password di amministratore Puppet e lo starter kit. Se non si fornisce la password nella Fase 3, assicurarsi di salvare la password di amministratore estratta in una posizione sicura, ma comoda.

    #Get the Puppet password: cat resp.json | jq -r '.Server.EngineAttributes[] | select(.Name == "PUPPET_ADMIN_PASSWORD") | .Value' #Get the Puppet Starter Kit: cat resp.json | jq -r '.Server.EngineAttributes[] | select(.Name == "PUPPET_STARTER_KIT") | .Value' | base64 -D > starterkit.zip
    Nota

    Non è possibile rigenerare un nuovo starter kit Puppet master nella AWS Management Console. Quando crei un master Puppet utilizzando il AWS CLI, esegui il jq comando precedente per salvare lo starter kit con codifica base64 nei risultati come file ZIP. create-server

  6. Facoltativamente, se non hai estratto lo starter kit dai risultati dei create-server comandi, puoi scaricare un nuovo starter kit dalla pagina Proprietà del server nella console di for Puppet Enterprise. OpsWorks

  7. Se non si utilizza un dominio personalizzato, passare alla fase successiva. Se utilizzi un dominio personalizzato con il server, crea una voce CNAME nello strumento di gestione DNS dell'azienda per indirizzare il dominio personalizzato all'endpoint OpsWorks for Puppet Enterprise che hai copiato nel passaggio 4. Non è possibile raggiungere o eseguire l'accesso al server con un dominio personalizzato fino a quando non si completa questa fase.

  8. Al termine del processo di creazione del server, vai su Configurare il Puppet Master utilizzando lo Starter Kit.

Vedi anche