Passaggio 3: configura l'ambiente per eseguire lo script - 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à.

Passaggio 3: configura l'ambiente per eseguire lo script

Configura l'ambiente per eseguire lo script utilizzando il comando seguente.

pipenv install -r requirements.txt pipenv shell
Nota

Attualmente, lo script può eseguire il provisioning solo di applicazioni a livello singolo in Application Manager. Ad esempio, se si esegue lo script due volte per due livelli nello stesso stack, lo script crea due diverse applicazioni in Application Manager.

Dopo aver configurato l'ambiente, esaminate i parametri dello script. È possibile visualizzare le opzioni disponibili per lo script di migrazione eseguendo il python3 stack_exporter.py --help comando.

Parametro Descrizione Richiesto Type Valore predefinito
--layer-id Esporta un CloudFormation modello per questo ID di OpsWorks livello. string
--region La AWS regione dello OpsWorks stack. Se la regione OpsWorks dello stack e la regione dell'endpoint dell'API sono diverse, utilizza la regione dello stack. Questa è la stessa regione delle altre risorse che fanno parte dello OpsWorks stack (ad esempio, istanze e sottoreti EC2). No string us-east-1
--provision-application Per impostazione predefinita, lo script esegue il provisioning dell'applicazione esportata dal modello. CloudFormation Passate questo parametro allo script con il valore FALSE per saltare il provisioning del modello. CloudFormation No Booleano TRUE
--launch-template

Questo parametro definisce se utilizzare un modello di avvio esistente o creare un nuovo modello di lancio. È possibile creare un nuovo modello di avvio che utilizzi le proprietà dell'istanza consigliate o che utilizzi proprietà dell'istanza che corrispondono a un'istanza online.

I valori validi includono:

  • RECOMMENDED- Utilizza le caratteristiche dell'istanza dell'AMI più recente per il sistema operativo OpsWorks dello stack e una dimensione dell'istanza c5.large.

  • MATCH_LAST_INSTANCE- Utilizza le caratteristiche delle istanze online più recenti disponibili.

  • LaunchTemplateID/[LaunchTemplateVersion]- Utilizza un modello di lancio esistente. Facoltativamente, puoi fornire una versione modello. Se non si fornisce una versione del modello, lo script utilizza la versione predefinita.

No string RECOMMENDED
--system-updates

Definisce se eseguire gli aggiornamenti del kernel e dei pacchetti all'avvio dell'istanza.

I valori validi includono:

  • ALL_UPDATES- Esegue aggiornamenti di sistema per il kernel e i pacchetti all'avvio dell'istanza.

  • NO_UPDATES- Non esegue aggiornamenti di sistema all'avvio dell'istanza.

  • MATCH_LAYER_SETTINGS- Utilizza la InstallUpdatesOnBoot proprietà del OpsWorks livello o dell'istanza per determinare se installare gli aggiornamenti di sistema.

No string ALL_UPDATES
--http-username Il nome del SecureString parametro Systems Manager che memorizza il nome utente utilizzato per l'autenticazione nell'archivio HTTP che contiene i libri di cucina personalizzati. No string
--http-password Il nome del SecureString parametro Systems Manager che memorizza la password utilizzata per l'autenticazione nell'archivio HTTP che contiene i libri di cucina personalizzati. No string
--repo-private-key Il nome del SecureString parametro Systems Manager che memorizza la chiave SSH utilizzata per l'autenticazione nel repository che contiene i ricettari personalizzati. Se il repository è attivo GitHub, è necessario generare una nuova chiave SSH. Ed25519 Se non si genera una nuova chiave Ed25519 SSH, la connessione al repository fallisce GitHub . No string
--lb-type

L'eventuale tipo di bilanciamento del carico da creare durante la migrazione del sistema di bilanciamento del carico esistente.

I valori validi includono:

  • ALB(Application Load Balancer)

  • Classis(Classic Load Balancer)

  • None(se non si desidera creare un sistema di bilanciamento del carico)

No string ALB
--lb-access-logs-path Il percorso verso un bucket S3 esistente e il prefisso per l'archiviazione dei log di accesso al load balancer. Il bucket S3 e il load balancer devono trovarsi nella stessa regione. Se non si fornisce un valore e il valore del --lb-type parametro è impostato suNone, lo script crea un nuovo bucket e prefisso S3. Assicurati che esista una policy bucket appropriata per questo prefisso. No string
--enable-instance-protection Se impostato suTRUE, lo script crea una politica di terminazione personalizzata (funzione Lambda) per il gruppo Auto Scaling. Le istanze EC2 con un protected_instance tag sono protette dagli eventi di scalabilità. Aggiungi un protected_instance tag a ogni istanza EC2 che desideri proteggere dagli eventi di scalabilità. No Booleano FALSE
--command-logs-bucket Il nome di un bucket S3 esistente in cui archiviare i log and. AWS ApplyChefRecipe MountEBSVolumes Se non fornisci un valore, lo script crea un nuovo bucket S3. No string aws-opsworks-application-manager-logs-account-id
--custom-json-bucket Il nome di un bucket S3 esistente per memorizzare JSON personalizzato. Se non fornisci un valore, lo script crea un nuovo bucket S3. No string aws-apply-chef-application-manager-transition-data-account-id

Note:

  • Se utilizzi un GitHub repository privato, devi creare una nuova chiave Ed25519 host per SSH. Questo perché sono state GitHub modificate le chiavi supportate in SSH e rimosso il protocollo Git non crittografato. Per ulteriori informazioni sulla chiave Ed25519 host, consulta il post sul GitHub blog Improving Git protocol security on GitHub. Dopo aver generato una nuova chiave Ed25519 host, create un SecureString parametro Systems Manager per la chiave SSH e utilizzate il nome del SecureString parametro come valore per il --repo-private-key parametro. Per ulteriori informazioni su come creare un SecureString parametro Systems Manager, vedere Create a SecureString parameter (AWS CLI) o Create a Systems Manager (console) nella Guida per l'AWS Systems Manager utente.

  • I --http-username --repo-private-key parametri --http-password e si riferiscono al nome di un SecureString parametro Systems Manager. Lo script di migrazione utilizza questi parametri quando si esegue il AWS-ApplyChefRecipes documento.

  • Il --http-username parametro richiede che venga specificato anche un valore per il --http-password parametro.

  • Il --http-password parametro richiede che venga specificato anche un valore per il --http-username parametro.

  • Non impostate valori per entrambi --http-password e--repo-private-key. Fornire il nome del SecureString parametro Systems Manager di una chiave SSH (--repo-private-key) o il nome utente () e la password (--http-username--http-password) del repository.