Esecuzione di una ricetta su un'istanza Windows - 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à.

Esecuzione di una ricetta su un'istanza Windows

Importante

Il AWS OpsWorks Stacks il servizio ha raggiunto la fine del ciclo di vita il 26 maggio 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 Squadra su AWS Re:post o tramite AWS Supporto Premium.

Questo argomento è fondamentalmente una versione abbreviata di Esecuzione di una ricetta su un'istanza Linux, che illustra come eseguire una ricetta su uno stack Windows. Ti consigliamo di consultare prima Esecuzione di una ricetta su un'istanza Linux, perché fornisce una discussione più dettagliata, pertinente in gran parte ai due tipi di sistema operativo.

Per una descrizione di come eseguire le ricette su AWS OpsWorks Impila le istanze Linux, vedi. Esecuzione di una ricetta su un'istanza Linux

Abilitazione dell'accesso RDP

Prima di iniziare, se non l'hai già fatto, devi configurare un gruppo di sicurezza con una regola in entrata che consenta RDP l'accesso alle tue istanze. Tale gruppo sarà necessario al momento della creazione dello stack.

Quando crei il primo stack in una regione, AWS OpsWorks Stacks crea una serie di gruppi di sicurezza. Ne includono uno chiamato qualcosa del genereAWS-OpsWorks-RDP-Server, che AWS OpsWorks Stacks si collega a tutte le istanze di Windows per consentire l'accesso. RDP Tuttavia, per impostazione predefinita, questo gruppo di sicurezza non ha regole, quindi è necessario aggiungere una regola in entrata per consentire RDP l'accesso alle istanze.

Per consentire l'accesso RDP
  1. Apri la EC2console Amazon, impostala sulla regione dello stack e scegli Security Groups dal pannello di navigazione.

  2. Scegli AWS- OpsWorks - RDP -Server, scegli la scheda In entrata e scegli Modifica.

  3. Aggiungere una regola con le impostazioni seguenti:

    • Digita — RDP

    • Origine: gli indirizzi IP di origine consentiti.

      In genere, consentite RDP le richieste in entrata dal vostro indirizzo IP o da un intervallo di indirizzi IP specificato (in genere l'intervallo di indirizzi IP aziendali).

Nota

Come descritto più avanti, è inoltre necessario modificare le autorizzazioni degli utenti per autorizzare l'RDPaccesso per gli utenti normali.

Per ulteriori informazioni, consulta Accesso con RDP.

Creazione ed esecuzione della ricetta

Di seguito viene brevemente descritto come creare uno stack per questo esempio. Per ulteriori informazioni, consulta Creare un nuovo stack.

Creare uno stack
  1. Aprire AWS OpsWorksConsole Stacks e scegli Aggiungi stack. Specificare le impostazioni seguenti, accettare i valori predefiniti di altre impostazioni e scegliere Add Stack (Aggiungi stack).

    • Nome: WindowsRecipeTest

    • Regione: Stati Uniti occidentali (Oregon)

      Questo esempio funzionerà in qualsiasi regione, ma consigliamo di utilizzare Stati Uniti occidentali (Oregon) per i tutorial.

    • Sistema operativo predefinito: Microsoft Windows Server 2012 R2

  2. Scegliere Add a layer (Aggiungi un livello) e aggiungere un livello personalizzato allo stack con le impostazioni seguenti.

    • Nome — RecipeTest

    • Nome abbreviato: recipetest

  3. Aggiungi un'istanza 24 ore su 24, 7 giorni su 7 con impostazioni predefinite al RecipeTest layer e avviala.

    AWS OpsWorks Stacks si AWS-OpsWorks-RDP-Server assegna automaticamente a questa istanza, il che consente agli utenti autorizzati di accedere all'istanza.

  4. Scegli Autorizzazioni, quindi Modifica, quindi scegli SSH/RDPe sudo/admin. Gli utenti standard necessitano di questa autorizzazione oltre al gruppo di sicurezza AWS-OpsWorks-RDP-Server per accedere all'istanza.

    Nota

    Puoi anche effettuare l'accesso come amministratore, ma è necessario eseguire una procedura diversa. Per ulteriori informazioni, consulta Accesso con RDP.

Durante l'avvio dell'istanza, che in genere richiede diversi minuti, puoi creare il ricettario. La ricetta di questo esempio crea una directory dati ed è generalmente la ricetta di Esempio 3: creazione di directory, modificata per Windows.

Nota

Quando si implementano libri di cucina per AWS OpsWorks Impila le istanze di Windows, si utilizza una struttura di directory leggermente diversa da quella utilizzata quando si implementano i libri di cucina per AWS OpsWorks Impila le istanze Linux. Per ulteriori informazioni, consulta Repository dei libri di ricette.

Per configurare il libro di ricette
  1. Creare una directory denominata windowstest e accedervi.

  2. Creare un file metadata.rb con il seguente contenuto e salvarlo in windowstest.

    name "windowstest" version "0.1.0"
  3. Creare una directory recipes in windowstest.

  4. Creare un file default.rb con la seguente ricetta e salvarlo nella directory recipes.

    Chef::Log.info("******Creating a data directory.******") directory 'C:\data' do rights :full_control, 'instance_name\username' inherits false action :create end

    Replace (Sostituisci) username con il tuo nome utente.

  5. Inserire il libro di ricette in un repository.

    Per installare il tuo ricettario su un AWS OpsWorks Istanza Stacks, è necessario archiviarla in un repository e fornire AWS OpsWorks Contiene le informazioni necessarie per scaricare il ricettario sull'istanza. Puoi archiviare libri di ricette di Windows come file di archivio in un bucket S3 o in un repository Git. In questo esempio viene utilizzato un bucket S3, perciò è necessario creare un archivio .zip della directory windowstest. Per ulteriori informazioni sui repository dei libri di ricette, consulta Repository dei libri di ricette.

  6. Carica l'archivio in un bucket S3, rendilo pubblico e registra quello dell'archivio. URL È possibile usare anche un archivio privato. Tuttavia, per questo esempio, un archivio pubblico è sufficiente e molto più facile da utilizzare.

    I contenuti distribuiti ai bucket Amazon S3 potrebbero contenere informazioni dei clienti. Per ulteriori informazioni sulla rimozione di dati sensibili, vedi Come svuotare un bucket S3? o Come eliminare un bucket S3?.

Adesso puoi installare il libro di ricette ed eseguire la ricetta.

Per eseguire la ricetta
  1. Modificare lo stack per abilitare i libri di ricette personalizzati e specificare le impostazioni seguenti.

    • Tipo di repository: S3 Archive

    • Repository URL: l'archivio dei libri di cucina che hai registrato in precedenza URL

    Accettare i valori predefiniti per altre impostazioni e scegliere Save (Salva) per aggiornare la configurazione dello stack.

  2. Eseguire il comando dello stack Update Custom Cookbooks (Aggiorna libri di ricette personalizzati), che installa la versione corrente dei libri di ricette personalizzati nelle istanze dello stack, incluse le istanze online. Se è presente una versione precedente dei libri di cucina, verrà sovrascritta da questo comando.

  3. Dopo aver aggiornato i libri di ricette personalizzati, eseguire la ricetta eseguendo il comando dello stack Execute Recipes (Esegui ricette) con l'opzione Recipes to execute (Ricette da eseguire) impostata su windowstest::default. Questo comando avvia un'esecuzione di Chef, con un elenco di esecuzione costituito dalla tua ricetta.

Dopo aver eseguito correttamente la ricetta, puoi verificarla.

Per verificare windowstest
  1. Esaminare il log di Chef. Scegliere show (mostra) nella colonna Log (Registro) dell'istanza opstest1 per visualizzare il registro. Scorrere e visualizzare il messaggio di log verso il basso.

    ... [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) ...
  2. Scegli Istanze, scegli rdp nella colonna Azioni dell'istanza e richiedi una RDP password con un tempo di scadenza adeguato. Copia il DNS nome, il nome utente e la password. È quindi possibile utilizzare tali informazioni con un RDP client, ad esempio il client Windows Remote Desktop Connection, per accedere all'istanza e verificarne l'c:\dataesistenza. Per ulteriori informazioni, consulta Accesso con RDP.

Nota

Se la tua ricetta non funziona correttamente, consulta Risoluzione dei problemi e correzione delle ricette per suggerimenti relativi alla risoluzione dei problemi (la maggior parte di essi si applica anche alle istanze Windows). Se vuoi testare la correzione modificando la ricetta sull'istanza, cerca il tuo ricettario nella C:\chef\cookbooks directory, dove AWS OpsWorks Stacks installa libri di cucina personalizzati.

Esecuzione automatica della ricetta

Il comando Execute Recipes (Esegui ricette) è un metodo utile per testare ricette personalizzate. Per tale motivo viene utilizzato nella maggior parte degli esempi. Tuttavia, in pratica esegui generalmente ricette in momenti standard del ciclo di vita di un'istanza, ad esempio dopo il processo di avvio dell'istanza o durante la distribuzione di un'app. AWS OpsWorks Stacks semplifica l'esecuzione di ricette sull'istanza supportando una serie di eventi del ciclo di vita per ogni livello: Setup, Configure, Deploy, Undeploy e Shutdown. Puoi avere AWS OpsWorks Gli stack eseguono automaticamente una ricetta sulle istanze di un layer assegnando la ricetta all'evento del ciclo di vita appropriato.

In genere, è opportuno creare le directory non appena terminata la procedura di avvio di un'istanza, che corrisponde all'evento Setup. Di seguito viene mostrato come eseguire la ricetta di esempio al momento dell'installazione, utilizzando lo stesso stack creato in precedenza nell'esempio. Puoi utilizzare la stessa procedura per gli altri eventi.

Per eseguire automaticamente una ricetta al momento della configurazione
  1. Scegliete Livelli nel riquadro di navigazione, quindi scegliete l'icona a forma di matita accanto al link Ricette del RecipeTest livello.

  2. Aggiungere windowstest::default alle ricette Setup (Installazione) del livello, scegliere + per aggiungerlo al livello e scegliere Save (Salva) per salvare la configurazione.

  3. Scegliere Instances (Istanze), aggiungere un'altra istanza a un livello e avviarla.

    L'istanza deve essere denominata recipetest2. Al termine dell'avvio, AWS OpsWorks Gli stack funzioneranno. windowstest::default

  4. Una volta che l'istanza recipetest2 è online, verificare che c:\data sia presente.

Nota

Se hai assegnato ricette agli eventi Setup, Configure o Deploy, puoi eseguirle anche manualmente utilizzando un comando dello stack (Setup e Configure) o un comando di distribuzione (Deploy) per attivare l'evento. Se hai più ricette assegnate a un evento, questi comandi le eseguono tutte.