Časově náročný proces konfigurace požadovaných zdrojů jednoho po druhém již není nutný k nasazení webových aplikací a serverů.
Produkty Platform-as-a-service (PaaS), jako jsou AWS Elastic Beanstalk a Heroku, byly vytvořeny, aby umožnily aplikace, které mají být nasazeny a zpřístupněny uživatelům s malým nebo žádným kódem a několika tlačítky kliknutí.
Co je tedy AWS Elastic Beanstalk a jak můžete nasadit své webové aplikace Go v cloudu pomocí Elastic Beanstalk?
Co je AWS Elastic Beanstalk?
AWS Elastic Beanstalk (AWS EB) je produkt založený na platformě jako služba nabízený Amazon Web Services, který umožňuje rychlé a snadné nasazení a správu aplikací a požadovaných zdrojů.
S Elastic Beanstalk je snadné nasadit aplikaci, aniž byste museli nastavovat všechny její požadované zdroje, jako je např linuxový server na EC2nebo monitorovací služba v cloudwatch. Elastic Beanstalk se stará o všechny procesy nastavení zdrojů a umožňuje nasadit různé druhy aplikací, včetně Node.js, Golang, PHP, Docker a tak dále.
Vytvoření jednoduchého webového serveru Golang
Pro účely tohoto tutoriálu musíte mít funkční aplikaci Golang pro nasazení na AWS Elastic Beanstalk, takže v této části je vytvořen jednoduchý webový server Go.
Abyste mohli postupovat v této části, potřebujete na svém počítači nastavit vývojové prostředí Golang.
Prvním krokem je inicializace nového projektu Golang, který lze provést z terminálu spuštěním následujících příkazů:
Po dokončení můžete otevřít adresář projektu ve vámi preferovaném IDE. V kořenovém adresáři projektu vytvořte složku s názvem statický a vytvořit index.html soubor v něm. Zkopírujte a vložte následující kód do souboru HTML a uložte jej.
html>
<htmllang="en">
<hlava>
<metaznaková sada="UTF-8">
<titul>Ahoj světe!titul>
hlava>
<tělo>
<h1>Hello World od Elastic Beanstalkh1>
tělo>
html>
Vraťte se do kořenového adresáře projektu a vytvořte soubor application.go soubor. Zkopírujte a vložte níže uvedený kód do svého application.go soubor a uložte jej. Musíte pojmenovat hlavní soubor application.go protože toto je soubor, který bude Elastic Beanstalk hledat k sestavení vaší aplikace během procesu nasazení.
balík hlavní
import (
"log"
"net/http"
)funchlavní() {
statický := http. Souborový server (http. dir("./statický"))
http. Rukojeť("/", statické)
log. Fatální (http. Poslouchejte a servírujte (":5000", nula))
}
Elastic Beanstalk ve výchozím nastavení používá konfiguraci NGINX, která předává požadavky vaší aplikaci pouze na portu 5000. Kromě toho, že přepíšete výchozí konfigurace NGINX, vaše aplikace Golang by měla vždy naslouchat požadavkům na portu 5000.
Pokud soubor uložíte a spustíte program v terminálu s běž spustit application.go, budete moci zobrazit náhled statické webové stránky otevřením adresy localhost: 5000 ve vašem prohlížeči.
Nyní máte vytvořenou ukázkovou aplikaci a připravenou k nasazení. V další části nasadíte aplikaci do AWS Elastic Beanstalk.
Nasazení aplikace Go do AWS Elastic Beanstalk
K nasazení aplikace do jakékoli služby AWS, jako je Elastic Beanstalk, potřebujete cloudový účet AWS. Pokud v současné době nemáte účet AWS, přejděte na Registrační stránka AWS pro vytvoření nového zdarma.
Existuje několik způsobů, jak nasadit aplikace do Elastic Beanstalk, včetně AWS CLI, Elastic Beanstalk Command Line Interface (EB CLI) a z webové konzole, ale v tomto tutoriálu byste se naučili, jak nasadit do Elastic Beanstalk z terminálu pomocí EB CLI nástroj.
Můžete se podívat na Průvodce instalací AWS EB CLI pro podrobný návod, jak nainstalovat a nakonfigurovat EB CLI, abyste mohli pokračovat v této části. Jakmile dokončíte instalaci a konfiguraci EB CLI, můžete nyní pokračovat a nasadit aplikaci Golang podle níže uvedených kroků.
- Otevřete nové okno terminálu a přejděte do složky projektu aplikace Go, kterou chcete nasadit pomocí CD příkaz.
- Běh eb init k inicializaci nového repozitáře CLI Elastic Beanstalk. Protože tento příkaz po instalaci spouštíte poprvé, EB CLI vás vyzve k možnostem počátečního nastavení, jak je vidět v následujících krocích.
- Po výběru preferované oblasti je třeba nastavit přihlašovací údaje k bezpečnostní identitě (ID přístupového klíče a tajný klíč). K dispozici je komplexní průvodce, který poskytuje AWS při generování bezpečnostních pověření v konzole AWS.
- Dále musíte definovat název aplikace, kterou nasazujete. Ve výchozím nastavení se používá název aktuální složky projektu.
- Dalším krokem je výběr platformy aplikace, kterou se chystáte nasadit, v tomto případě byste měli vybrat 4. možnost, protože nasazujete aplikaci Golang.
- Další výzva se zeptá, zda chcete povolit připojení SSH pro vaši nasazenou aplikaci. To se doporučuje, protože umožňuje snadný vzdálený přístup a ladění vaší aplikace, ale v tomto tutoriálu Ne je vybrána, protože se jedná pouze o jednoduchou aplikaci.
Řádek, který naznačuje, že CodeCommit nelze nastavit, není důvod se obávat, protože je to způsobeno tím, že v tomto příkladu není v projektu použit Git nebo jakýkoli jiný ovládací prvek zdroje.
- Po dokončení výše uvedených kroků bude vytvořeno nové úložiště CLI Elastic Beanstalk a nyní můžete vytvořit prostředí Elastic Beanstalk pro nasazení vaší aplikace v dalších krocích.
- Běh eb vytvořit „název prostředí“ k vytvoření nového prostředí nazvaného zadané název prostředí. Prostředí je vytvořeno se všemi požadovanými prostředky včetně instance EC2, skupiny automatického škálování, segmentu S3, nástroje pro vyrovnávání zatížení atd. Tento proces trvá asi 5-10 minut v závislosti na rychlosti sítě.
Stejně jako když ty nasadit statický web do AWS, je vaší aplikaci EB také přiřazena adresa URL (označená v červeném poli na snímku obrazovky výše), kterou můžete použít pro přístup ke své webové aplikaci.
- Po úspěšném dokončení je aplikace připravena k náhledu a můžete ji spustit eb otevřeno otevřete nasazenou aplikaci ve vašem prohlížeči. Nyní byste měli vidět Ahoj světe zobrazí se ve vašem webovém prohlížeči pomocí adresy URL, kterou mu přiřadil Elastic Beanstalk.
Kdykoli ve své aplikaci provedete změnu, můžete ji spustit eb nasadit k prosazení nejnovějších aktualizací Elastic Beanstalk. A k vypnutí aplikace a všech jejích prostředků můžete spustit eb ukončit.
Nyní jste úspěšně nasadili webovou aplikaci Golang do AWS Elastic Beanstalk pomocí nástroje CLI Elastic Beanstalk. Tento proces je velmi snadný a lze jej následovat pro nasazení jakékoli formy webové aplikace Golang v Elastic Beanstalk.
Svůj ovládací panel Elastic Beanstalk můžete zkontrolovat v konzole AWS a zobrazit stav nebo jakékoli další informace o vašem prostředí a aplikaci.
Nasazení webových aplikací do Elastic Beanstalk
Elastic Beanstalk je spolehlivý způsob, jak převést vaše aplikace z místního prostředí do provozu ve velmi jednoduchých krocích. Své malé i velké aplikace můžete snadno nasadit a spravovat pomocí kteréhokoli z prostředků dostupných od AWS včetně webové konzole, AWS CLI, EB CLI, AWS API nebo AWS SDK.
Pro další procvičování se znalostmi získanými z tohoto článku můžete zvážit vytvoření CRUD API s Go a jeho nasazení do Elastic Beanstalk.