Procesul consumator de timp de configurare a resurselor necesare una câte una nu mai este necesar pentru a implementa aplicații web și servere.
Produsele Platform-as-a-service (PaaS) precum AWS Elastic Beanstalk și Heroku au fost create pentru a permite aplicații care urmează să fie implementate și puse la dispoziție utilizatorilor cu puțin sau deloc cod și câteva butoane clicuri.
Deci, ce este AWS Elastic Beanstalk și cum vă puteți implementa aplicațiile web Go în cloud cu Elastic Beanstalk?
Ce este AWS Elastic Beanstalk?
AWS Elastic Beanstalk (AWS EB) este un produs platform-as-a-service oferit de Amazon Web Services care permite implementarea și gestionarea rapidă și ușoară a aplicațiilor și a resurselor necesare.
Cu Elastic Beanstalk, este ușor să implementați o aplicație fără a fi nevoie să configurați toate resursele necesare, cum ar fi
server linux pe EC2, sau un serviciu de monitorizare în cloudwatch. Elastic Beanstalk se ocupă de toate procesele de configurare a resurselor și vă permite să implementați diferite tipuri de aplicații, inclusiv Node.js, Golang, PHP, Docker și așa mai departe.Crearea unui server web Golang simplu
În scopul acestui tutorial, trebuie să aveți o aplicație Golang funcțională pentru a fi implementată pe AWS Elastic Beanstalk, așa că în această secțiune este creat un server web Go simplu.
Aveți nevoie de un mediu de dezvoltare Golang configurat pe mașina dvs. pentru a urma în această secțiune.
Primul pas este să inițializați un nou proiect Golang, care poate fi realizat din terminal, rulând următoarele comenzi:
Odată terminat, puteți deschide directorul de proiect în IDE-ul preferat. În directorul rădăcină al proiectului, creați un folder numit static și creați un index.html dosar în el. Copiați și inserați următorul cod în fișierul HTML și salvați-l.
html>
<htmllang="ro">
<cap>
<metaset de caractere=„UTF-8”>
<titlu>Salut Lume!titlu>
cap>
<corp>
<h1>Hello World de la Elastic Beanstalkh1>
corp>
html>
Reveniți la directorul rădăcină al proiectului și creați un aplicație.go fişier. Copiați și inserați codul de mai jos în dvs aplicație.go fișier și salvați-l. Trebuie să denumiți fișierul principal aplicație.go deoarece acesta este fișierul pe care Elastic Beanstalk îl va căuta pentru a vă construi aplicația în timpul procesului de implementare.
pachet principal
import (
"Buturuga"
"net/http"
)funcprincipal() {
static := http. FileServer (http. Dir("./static"))
http. Mâner("/", static)
Buturuga. Fatal (http. ListenAndServe(":5000", zero))
}
Elastic Beanstalk utilizează în mod implicit o configurație NGINX care redirecționează cererile către aplicația dvs. numai pe portul 5000. Cu excepția faptului că veți suprascrie configurațiile implicite NGINX, aplicația dvs. Golang ar trebui să asculte întotdeauna cererile pe portul 5000.
Dacă salvați fișierul și rulați programul în terminal cu du-te la rulare application.go, veți putea previzualiza pagina web statică deschizând adresa gazdă locală: 5000 în browserul dvs.
Acum aveți aplicația eșantion construită și gata pentru implementare. În secțiunea următoare, veți implementa aplicația în AWS Elastic Beanstalk.
Implementarea unei aplicații Go în AWS Elastic Beanstalk
Pentru a implementa o aplicație în orice serviciu AWS, cum ar fi Elastic Beanstalk, aveți nevoie de un cont cloud AWS. Dacă în prezent nu aveți un cont AWS, accesați Pagina de înscriere a AWS pentru a crea unul nou gratuit.
Există mai multe moduri de a implementa aplicații în Elastic Beanstalk, inclusiv AWS CLI, Elastic Beanstalk Command Line Interface (EB). CLI), și din consola web, dar în acest tutorial, veți învăța cum să implementați în Elastic Beanstalk de pe terminal folosind EB CLI instrument.
Puteți verifica Ghid de instalare AWS EB CLI pentru un ghid detaliat despre cum să instalați și să configurați EB CLI pentru a continua în această secțiune. După ce ați terminat de instalat și configurat EB CLI, puteți merge mai departe și urmați pașii de mai jos pentru a vă implementa aplicația Golang.
- Deschideți o nouă fereastră de terminal și navigați la folderul de proiect al aplicației Go care urmează să fie implementat folosind CD comanda.
- Alerga eb init pentru a inițializa un nou depozit CLI Elastic Beanstalk. Fiind prima dată când rulați această comandă după instalare, EB CLI vă va solicita opțiunile de configurare inițială, așa cum se vede în pașii care urmează.
- După ce ați ales o regiune preferată, trebuie să vă configurați acreditările de identitate de securitate (ID-ul cheii de acces și cheia secretă). Există un ghid cuprinzător oferit de AWS despre generarea acreditărilor de securitate în consola AWS.
- Apoi, trebuie să definiți numele aplicației pe care o implementați. În mod implicit, acesta utilizează numele folderului actual al proiectului.
- Următorul pas este să selectați platforma aplicației pe care urmează să o implementați, în acest caz, ar trebui să selectați a 4-a opțiune, deoarece implementați o aplicație Golang.
- Următorul prompt vă întreabă dacă doriți să activați o conexiune SSH pentru aplicația dvs. implementată. Acest lucru este recomandat deoarece permite accesul ușor de la distanță și depanarea aplicației dvs., dar în acest tutorial, Nu este selectat, deoarece este doar o aplicație simplă.
Linia care indică faptul că CodeCommit nu a putut fi configurat nu trebuie să vă faceți griji, deoarece se datorează faptului că Git sau orice alt control sursă nu este utilizat în proiectul din acest exemplu.
- După finalizarea pașilor de mai sus, va fi creat un nou depozit CLI Elastic Beanstalk și acum puteți crea un mediu Elastic Beanstalk pentru a vă implementa aplicația în următorii pași.
- Alerga eb creați „numele mediului” pentru a crea un mediu nou numit specificat numele mediului. Mediul este creat cu toate resursele necesare, inclusiv o instanță EC2, un grup de scalare automată, un compartiment S3, un echilibrator de încărcare etc. Acest proces durează aproximativ 5-10 minute, în funcție de viteza rețelei.
Exact ca atunci când tu implementați un site web static la AWS, aplicației dvs. EB i se atribuie și o adresă URL (marcată în caseta roșie din captura de ecran de mai sus) pe care o puteți utiliza pentru a accesa aplicația dvs. web.
- Odată realizată cu succes, aplicația este gata să fie previzualizată și puteți rula eb deschis pentru a deschide aplicația implementată în browser. Ar trebui să vezi acum Salut Lume afișat în browserul dvs. web folosind adresa URL atribuită de Elastic Beanstalk.
Ori de câte ori modificați aplicația dvs., puteți rula eb deploy pentru a introduce cele mai recente actualizări pentru Elastic Beanstalk. Și pentru a închide aplicația și toate resursele acesteia, puteți rula eb termina.
Acum ați implementat cu succes o aplicație web Golang în AWS Elastic Beanstalk folosind instrumentul CLI Elastic Beanstalk. Procesul este foarte ușor și poate fi urmat pentru a implementa orice formă de aplicație web Golang în Elastic Beanstalk.
Puteți verifica tabloul de bord Elastic Beanstalk în consola AWS pentru a vedea starea sau orice alte informații despre mediul și aplicația dvs.
Implementarea aplicațiilor web în Elastic Beanstalk
Elastic Beanstalk este o modalitate fiabilă de a vă duce aplicațiile de la local la a trăi în pași foarte simpli. Puteți implementa și gestiona cu ușurință aplicațiile dvs. la scară mică și mare folosind oricare dintre mijloacele puse la dispoziție de AWS, inclusiv consola web, AWS CLI, EB CLI, API-urile AWS sau AWS SDK.
Pentru o practică suplimentară cu cunoștințele acumulate din acest articol, vă puteți gândi să construiți un API CRUD cu Go și să îl implementați în Elastic Beanstalk.