Úvod do kontejnerů AWS

Kontejnery jsou standardizované vývojové jednotky softwaru, které vám umožňují zabalit kód aplikace, konfigurace a její závislosti do jediného objektu. Kontejnery jsou odvozeny od principů virtualizace na úrovni OS. Umožňuje spouštět aplikaci a její závislosti v procesech izolovaných na prostředcích, což zajišťuje rychlé, spolehlivé a konzistentní nasazení v jakémkoli prostředí.

Druhy kontejnerů

Nástroje pro správu kontejnerů lze rozdělit do tří typů: registr, orchestrace a výpočet. Registrační služby vám pomohou bezpečně ukládat a spravovat obrázky vašich kontejnerů. Orchestrace řídí kdy a kde vaše kontejnery běží. A motory Compute pohánějí vaše kontejnery. O všechny základní infrastruktury se stará AWS. Kontejnery usnadňují a zefektivňují vývoj a nasazení.

1. Registr

Amazon Elastic Container Register (ECR)

Je to vysoce škálovatelný, vysoce dostupný, vysoce bezpečný a plně spravovaný registr kontejnerů Docker. Pomáhá vývojářům efektivně ukládat, spravovat a zavádět obrázky kontejnerů Docker. Amazon ECR je integrován s Amazon Elastic Container Service (ECS), což zjednodušuje nasazení. Amazon ECR je splatný pouze za množství dat, která ukládáte ve svých úložištích, a za data přenesená na internetu.

Příklad vytvoření obrazu Docker jednoduché webové aplikace a jeho zasunutí do Amazon ECR:

  1. Vytvořte soubor, Dockerfile.

  1. Upravte soubor Dockerfile.

  1. Vytvořte obrázek Docker.

  1. Ověřte obrázek Docker jeho spuštěním.

Výstup:

  1. Spusťte nově vytvořený obrázek.

  1. Přejděte prohlížečem na adresu http://locallhost.com/ a výstup bude:

  1. Zastavte kontejner Docker zadáním Ctrl + c.
  2. Posuňte svůj obrázek do Amazon ECR. Vytvořte úložiště Amazon ECR pro uložení obrázku.

Výstup:

  1. Označte ecr-example image hodnotou Uri.

  1. Spusťte příkaz pro ověření přihlášení do Dockeru pro váš registr.

  1. Spusťte příkaz pro přihlášení Docker.
  2. Přeneste obrázek do Amazon ECR pomocí úložiště Uri

2. Orchestrace

Služba pružného kontejneru Amazon (ECS)

Jedná se o plně spravovanou, vysoce škálovatelnou a vysoce výkonnou službu správy kontejnerů. Podporuje kontejnery Docker a umožňuje uživatelům efektivně spouštět aplikaci ve spravovaném clusteru instancí EC2. Instalace a operace orchestrace kontejnerů jsou řízeny AWS.

Příklad nasazení kontejnerů Docker na Amazon ECS:

  1. Amazon ECS - First Run Set-Up : To vám umožní vytvářet klastry a spouštět ukázkové webové aplikace. Zadáte konzoli Amazon ECS a spustíte průvodce. Můžete také použít Amazon ECR k vytvoření úložiště obrázků a k němu do něj vložit obrázek.

Vyberte možnost a vyberte Pokračovat.

  1. Vytvoření definice úlohy: Jedná se o plán vaší aplikace. Zkontrolujte výchozí hodnoty a vyberte další krok.

  1. Konfigurace služby: Služba spouští a udržuje kopie definice úlohy ve vašem klastru.
  • Název služby: AWS ve výchozím nastavení nabízí ukázkovou webovou aplikaci „Hello World“.
  • Požadovaný počet úkolů: Výchozí hodnota je 1 pro vrstvu AWS zdarma.
  • Elastické vyvažování zátěže: Se svou službou můžete použít vyvažovač zátěže.
  • Název kontejneru: Hostitelský port: vyberte položku Simple-app : 80 a výchozí pole zadejte.

Pokud již máte rozevírací nabídku, vyberte roli IAM služby, nebo Amazon ECS ve výchozím nastavení vytvoří roli služby ECS.

Zkontrolujte své vstupy a vyberte další krok.

  1. Konfigurace klastru
  • Název klastru: Výchozí název je ukázkový cluster .
  • Typ instance EC2: Výchozí typ je t2.micro pro vrstvu AWS zdarma.
  • A Počet instancí: Výchozí hodnota je 1 pro vrstvu AWS zdarma.
  • Key Pair: Můžete pokračovat výběrem jednoho - Nelze SSH .
  • Skupina zabezpečení: Ve výchozím nastavení je kdekoli. Umožňuje přístup z celého internetu.
  • Role instance IAM pro kontejner: vyberte jednu, pokud již máte z rozevíracího seznamu nebo

Amazon ECS vytvoří jeden ve výchozím nastavení.

Vyberte možnost Zkontrolovat a spustit.

  1. Spusťte a zobrazte zdroje

Před spuštěním si můžete zkontrolovat definici úkolu, konfiguraci úkolu a konfiguraci clusteru.

Vyberte možnost Spustit instanci a spustit službu.

Po dokončení spuštění vyberte Zobrazit službu.

  1. Otevřete ukázkovou aplikaci : Ukázkovou aplikaci můžete ověřit a spustit tak, že prohlížeč nasměrujete na název DNS balanceru.

Otevřete stránku ukázkové webové aplikace a vyberte název vyrovnávače zatížení.

Zkopírujte název ELB DNS a vložte jej do nového prohlížeče a stiskněte klávesu Enter na klávesnici.

Můžete zobrazit ukázkovou aplikaci.

Prostředky můžete také kdykoli vyčistit, abyste se vyhnuli zbytečným poplatkům.

Služba Amazon Elastic Kubernetes Service (EKS)

Umožňuje snadno spravovat, zavádět a škálovat aplikace na kontejnerech pomocí Kubernetes na AWS. Spouští službu Kubernetes ve více zónách AWS, aby se vyloučil jediný bod chyby. Amazon EKS je certifikovaná integrace Kubernetes, můžete snadno migrovat aplikace běžící v jakémkoli standardním prostředí Kubernetes na AWS EKS.

3. Vypočítat

Amazon Elastic Compute Cloud (Amazon EC2)

Jedná se o bezpečnou a upravitelnou výpočetní kapacitu v cloudu, která spouští kontejnery na infrastrukturách virtuálních strojů s plnou kontrolou nad škálováním a konfigurací. To vám dává úplnou kontrolu nad vašimi výpočetními prostředky. Zkracuje čas potřebný k získání a spuštění nových instancí serveru na několik minut. Amazon EC2 poskytuje vývojářům nástroje pro vytváření aplikací odolných proti selhání.

Příklad: Nainstalujte webový server LAMP s Amazon Linux AMI.

Tento příklad vám pomůže nainstalovat webový server Apache s podporou PHP a MySQL ve vaší instanci Amazon Linux (nazývané také webový server LAMP).

  1. Připojte se k instanci systému Linux.
  2. Aktualizujte případné softwarové balíčky.

  1. Nainstalujte webový server Apache, MySQL a PHP softwarové balíčky pomocí příkazu yum install.

  1. Spusťte webový server Apache.

  1. Nakonfigurujte webový server Apache tak, aby se spouštěl při každém spuštění systému.

  1. Ověřte, že je httpd zapnutý.

  1. Přidejte nové příchozí bezpečnostní pravidlo s následujícími hodnotami:
  • Typ: HTTP
  • Protokol: TCP
  • Rozsah portů: 80
  • Zdroj: Vlastní
  1. Vyzkoušejte webový server zadáním adresy DNS do webového prohlížeče.
  2. V případě potřeby nastavte potřebná oprávnění k souborům.
  3. Vyzkoušejte server LAMP.
  4. Zabezpečte databázový server.

AWS Fargate

Je to bezpočtový výpočetní modul pro Amazon ECS, který vám umožní spouštět kontejnery bez správy serverů. Amazon se stará o všechny podřízené správy serverů, což vám umožní soustředit se na navrhování a vytváření aplikací

Má dva režimy:

Typ spuštění Fargate: Zabalte aplikaci do kontejnerů, určete požadavky na CPU a paměť, definujte zásady sítě a IAM a spusťte aplikaci.

EC2 Launch Type: Umožňuje vám mít na úrovni serveru kontrolu nad zařízením, které spouští vaše kontejnerové aplikace.

Výhody kontejnerů AWS

  • Běží kdekoli: Kontejnery zabalí váš kód do konfiguračních souborů a závislostí, které je nutné konzistentně spouštět v jakémkoli prostředí.
  • Vylepšit využití zdrojů: Kontejnery poskytují izolaci procesů, která umožňuje nastavit využití CPU a paměti pro lepší využití výpočetních prostředků.
  • Rychlé škálování: Každý kontejner běží jako samostatný proces, který sdílí zdroje základního operačního systému. To umožňuje, aby se kontejnery rychle rozběhly a zastavily.

Jak to funguje?

  1. Sestavte obrázek kontejneru: Zabalte kód a všechny jeho závislosti do kontejneru.
  2. Automatizace testu a nasazení: Standardizovaná jednotka kódu, kontejner funguje jako konzistentní budova
  3. Spustit kdekoli: Váš kontejner bude běžet v jakémkoli prostředí důsledně.
  4. Rychlé škálování: Kontejnery se rychle spouštějí a ukončují, takže vaše aplikace může škálovat nahoru a dolů

Závěr - kontejnery AWS

Amazon poskytuje širokou škálu služeb pro skladování, správu a provoz kontejnerů. Kontejnery vývojářům usnadňují vývoj a nasazení, protože Amazon se stará o všechny základní infrastruktury včetně správy serverů, což vývojářům umožňuje soustředit se na jejich vývoj. Vyberte si správnou službu AWS pro své pracovní vytížení.

Doporučené články

Toto je průvodce AWS Containers. Zde diskutujeme úvod, typy kontejnerů, který zahrnuje registr, orchestraci a výpočet spolu s výhodami kontejnerů AWS. Další informace naleznete také v následujících článcích -

  1. Služby AWS
  2. AWS Kinesis
  3. Architektura AWS
  4. Co je AWS RedShift?
  5. Kompletní průvodce konkurenty AWS
  6. Naučte se seznam funkcí webových služeb Amazon

Kategorie: