Mysql
 sql >> Database >  >> RDS >> Mysql

Usa i modelli di formazione del cloud per avviare le istanze MySQL su RDS

In questo articolo, parlerò di come configurare un'istanza MySQL su AWS RDS utilizzando i modelli di Cloud Formation. Nel mio articolo precedente, Come configurare un ambiente Amazon RDS per MySQL, ho fornito una procedura dettagliata su come configurare un'istanza MySQL su Amazon. Puoi utilizzare la console AWS per fornire tutte le informazioni necessarie per configurare l'istanza e quindi utilizzarla. Tuttavia, in questo articolo, discuteremo di un modo automatizzato per ottenere le stesse funzionalità utilizzando i modelli di Cloud Formation.

Che cos'è un modello CloudFormation?

Per iniziare a scrivere i modelli, dobbiamo prima capire in cosa consiste la formazione del cloud. AWS offre Cloud Formation come servizio cloud che consente ai clienti AWS di scrivere lo stato desiderato di qualsiasi infrastruttura come codice e quindi utilizzarlo per distribuire risorse in AWS. Ci consente di creare una risorsa o un gruppo di risorse seguendo semplici modelli di configurazione. Ad esempio, se desideri distribuire un'applicazione Web su un'istanza EC2 che utilizzerà anche un database RDS, puoi semplicemente combinare entrambe le risorse in un unico stack e scrivere il codice per configurare le istanze. Una volta eseguito, creerà sia l'istanza EC2 che l'istanza RDS e distribuirà anche la tua applicazione web.

Figura 1 – Modello CloudFormation sulla Console AWS

I componenti di un modello di formazione delle nuvole sono i seguenti:

  • Un JSON o YAML file in cui le risorse verranno definite come template
  • Uno stack può essere una combinazione di più risorse che devono essere impostate come parte dell'applicazione. Ad esempio, EC2 e RDS
  • Un set di modifiche può essere utilizzato per visualizzare un elenco di operazioni che devono essere eseguite dallo stack
  • Uno stack set può anche essere considerato come un gruppo gestito di stack da riprodurre o replicare

Per quanto sopra, in questo articolo ci concentreremo principalmente sul modello JSON/YAML e sullo stack. I modelli supportano un'ampia gamma di risorse su AWS. Per ottenere un elenco completo, segui questo link.

Scrittura del file modello JSON o YAML

Una delle principali sfide che affrontiamo durante la scrittura di un modello per la prima volta è quali contenuti dovrebbero essere inclusi in esso. Per facilitare il fatto che AWS fornisce molti campioni di modelli che possono essere facilmente trovati nella documentazione ufficiale. Una volta trovato il modello necessario per creare una risorsa necessaria, puoi utilizzarlo per creare il tuo modello. Il modello può essere creato utilizzando JSON o YAML e convertito anche da uno all'altro. Per una nota personale, preferisco scrivere i modelli usando YAML in quanto mi aiuta a stare lontano dalle parentesi graffe e dalle virgole e mantiene il documento più pulito. Tuttavia, sei libero di scegliere qualsiasi opzione tra JSON e YAML.

Per questo esercizio, proviamo a creare un'istanza MySQL su RDS e scriveremo il codice in YAML. Per configurare un database MySQL utilizzando la formazione di cloud, avremmo bisogno dei seguenti elementi.

  • Nome risorsa – Il nome della risorsa che intendi configurare.
  • Tipo di risorsa – Il tipo di risorsa.
  • Proprietà della risorsa – Il nome del database, il nome utente e la password a cui connettersi.
  • Il motore del database – MySQL, SQL Server, PostgreSQL, ecc.
  • Tipo di archiviazione – Il tipo di archiviazione da utilizzare.
  • Accessibilità pubblica – Se il database dovrebbe avere accesso pubblico o meno.
  • Memoria allocata – La memoria da allocare all'istanza del database.
  • Regione AWS – La regione in cui deve essere creata l'istanza.

Ora che abbiamo alcuni punti con noi, andiamo avanti e iniziamo scrivendo il file modello.

https://gist.github.com/aveek22/a188b02abde65479bbba2deba5ec90d6

Figura 2 – Il file modello per la creazione di un'istanza MySQL su RDS

Come puoi vedere nella figura sopra, la struttura del file è divisa in due parti. Nella prima parte, abbiamo definito alcuni parametri che verranno utilizzati dalle definizioni delle risorse nella seconda parte durante la creazione delle risorse su AWS. Puoi utilizzare lo stesso script sulla tua macchina per creare un'istanza sul tuo account AWS.

Configurazione dello stack sulla console

Ora che abbiamo creato il nostro modello per MySQL, è ora di configurarlo per vedere se tutto funziona bene. Vai alla console AWS e cerca Cloud Formation sulla barra di ricerca. Fai clic su Crea stack e carica il file modello dal tuo locale. Fai clic su Avanti una volta fatto.

Figura 3 – Creazione dello stack dal modello

Nella pagina successiva, ti verrà chiesto di fornire i parametri che sono stati definiti nel modello di formazione delle nuvole. Procedi e fornisci i dettagli necessari e fai clic su Avanti .

Figura 4 – Parametri dello stack forniti

Esamina le modifiche e i parametri dello stack e fai clic su Crea stack nell'ultima pagina. La creazione dello stack inizierà. Potrebbe volerci del tempo per creare tutte le risorse prima che siano disponibili per l'uso. Nel frattempo, puoi fare clic sul pulsante Ricarica per verificare se tutti gli eventi sono stati creati correttamente.

Figura 5 – Creazione stack in corso

Come puoi vedere sui timestamp, mi ci sono voluti circa 6 minuti dopodiché le risorse erano disponibili ed erano visibili anche sulla console. Accedi alle Risorse scheda e fai clic su ID fisico della risorsa. Questo ti porterà alla console RDS.

Figura 6 – Stack creato con successo

Connessione al database MySQL

Una volta che sei nella console RDS, puoi ottenere il nome host per l'istanza del database e usarlo per connetterti al database. Prendi l'endpoint dalla console e utilizzalo per connetterti.

Figura 7 – Dettagli dell'istanza MySQL su RDS

Passiamo ora a MySQL Workbench e proviamo a connetterci al nome host con le credenziali che abbiamo fornito in precedenza. Usa il nome host, il nome utente e la password per connetterti all'istanza.

Figura 8 – Connessione all'istanza MySQL tramite MySQL Workbench

Come puoi vedere nella figura sopra, ci siamo collegati correttamente all'istanza del database su RDS. Ora eseguiamo alcune query e vediamo se funziona.

Figura 9 – Esecuzione di script in MySQL Workbench

Come puoi vedere nella figura sopra, siamo stati in grado di connetterci all'istanza del database ed eseguire query. Con questo, puoi scrivere il tuo modello di formazione del cloud e avviare qualsiasi altra risorsa come il database SQL Server o PostgreSQL.

Rimozione delle risorse

Se lo stai eseguendo come esercizio, ti consiglio di rimuovere le risorse che abbiamo creato in quanto verranno addebitati alcuni costi. Puoi accedere alla console RDS, quindi selezionare l'istanza e fare clic su Elimina per rimuovere le risorse in modo permanente.

Figura 10 – Eliminazione delle risorse create

Una volta che le risorse sono state eliminate correttamente, puoi controllare ancora una volta nella console se ci sono istanze in esecuzione solo per evitare di aggiungere costi di fatturazione non necessari.

Conclusione

In questo articolo abbiamo discusso in dettaglio come configurare un'istanza di database MySQL in un ambiente AWS RDS e automatizzarla utilizzando il modello Cloud Formation. In questo modo, se la configurazione delle risorse sul cloud è nota anche come servizio di infrastruttura come codice, in cui è possibile configurare l'intera infrastruttura come codice e quindi utilizzarla in vari ambienti. Questi modelli possono essere utilizzati non solo per distribuire istanze di database, ma anche altre infrastrutture all'interno di AWS come EC2, Lambda, RedShift, ecc. Per ulteriori informazioni sui modelli di formazione del cloud, puoi visualizzare i modelli di esempio disponibili sul sito Web ufficiale.