Wprowadzenie do pojemników AWS

Kontenery są znormalizowanymi jednostkami programistycznymi, które pozwalają spakować kod aplikacji, konfiguracje i jej zależności w jeden obiekt. Kontenery wywodzą się z zasad wirtualizacji na poziomie systemu operacyjnego. Umożliwia uruchamianie aplikacji i jej zależności w procesach izolowanych od zasobów, co zapewnia szybkie, niezawodne i spójne wdrażanie w dowolnym środowisku.

Rodzaje pojemników

Narzędzia do zarządzania kontenerami można podzielić na trzy typy: rejestr, aranżacja i obliczenia. Usługi rejestru pomagają w bezpiecznym przechowywaniu obrazów kontenerów i zarządzaniu nimi. Orkiestracja zarządza czasem i miejscem działania kontenerów. A silniki obliczeniowe zasilają Twoje kontenery. Wszystkimi bazowymi infrastrukturami zajmuje się AWS. Kontenery sprawiają, że opracowywanie i wdrażanie jest łatwe i wydajne.

1. Rejestr

Rejestr elastycznych pojemników Amazon (ECR)

Jest to wysoce skalowalny, wysoce dostępny, bardzo bezpieczny iw pełni zarządzany rejestr kontenerów Docker. Pomaga programistom w wydajnym przechowywaniu, zarządzaniu i wdrażaniu obrazów kontenerów Docker. Amazon ECR jest zintegrowany z usługą elastycznego kontenera Amazon (ECS), co upraszcza wdrożenie. Amazon ECR jest płatny tylko za ilość danych przechowywanych w twoich repozytoriach i danych przesyłanych przez Internet.

Przykład tworzenia obrazu Docker prostej aplikacji internetowej i wypychania jej do Amazon ECR:

  1. Utwórz plik, plik Docker.

  1. Edytuj plik Docker.

  1. Zbuduj obraz Dockera.

  1. Sprawdź obraz Dockera, uruchamiając go.

Wynik:

  1. Uruchom nowo zbudowany obraz.

  1. Skieruj przeglądarkę na http://locallhost.com/, a wynikiem będzie:

  1. Zatrzymaj kontener Docker, naciskając Ctrl + c.
  2. Prześlij swój obraz do Amazon ECR. Utwórz repozytorium Amazon ECR do przechowywania obrazu.

Wynik:

  1. Oznacz obraz przykładowy ecr wartością Uri.

  1. Uruchom komendę Docker login authentication dla swojego rejestru.

  1. Uruchom polecenie logowania Docker.
  2. Prześlij obraz do Amazon ECR z repozytorium Uri

2. Orkiestracja

Usługa elastycznych pojemników Amazon (ECS)

Jest to w pełni zarządzana, wysoce skalowalna i wysokowydajna usługa zarządzania kontenerami. Obsługuje kontenery Docker i umożliwia użytkownikom wydajne uruchamianie aplikacji w zarządzanym klastrze instancji EC2. Instalacjami i operacjami orkiestracji kontenerów zarządza AWS.

Przykład wdrażania kontenerów Docker w Amazon ECS:

  1. Amazon ECS - konfiguracja pierwszego uruchomienia : pozwoli ci tworzyć klastry i uruchamiać przykładowe aplikacje internetowe. Wejdziesz do konsoli Amazon ECS i uruchomisz kreatora. Możesz także użyć Amazon ECR, aby utworzyć repozytorium obrazów i wcisnąć do niego obraz.

Wybierz opcję i wybierz Kontynuuj.

  1. Tworzenie definicji zadania: Jest to plan Twojej aplikacji. Przejrzyj wartości domyślne i wybierz Następny krok.

  1. Konfiguracja usługi: usługa uruchamia i zachowuje kopie definicji zadania w klastrze.
  • Nazwa usługi: AWS domyślnie udostępnia przykładową aplikację „Hello World” - przykładową aplikację internetową.
  • Pożądana liczba zadań: Wartość domyślna to 1, dla warstwy wolnej od AWS.
  • Elastyczne równoważenie obciążenia: w ramach usługi można używać modułu równoważenia obciążenia.
  • Nazwa kontenera: Port hosta: wybierz Simple-app : 80 i domyślnie pozostałe pola.

Wybierz rolę usługi IAM, jeśli już ją masz, lub Amazon ECS domyślnie utworzy rolę usługi ECS.

Przejrzyj wprowadzone dane i wybierz Następny krok.

  1. Konfiguracja klastra
  • Nazwa klastra: Domyślna nazwa to klaster przykładowy .
  • Typ wystąpienia EC2: Domyślny typ to t2.micro dla warstwy wolnej od AWS.
  • Liczba wystąpień: Wartość domyślna to 1 dla warstwy wolnej od AWS.
  • Para kluczy: możesz kontynuować, wybierając jedną - Nie można połączyć się z SSH .
  • Grupa bezpieczeństwa: domyślnie w dowolnym miejscu. Umożliwia dostęp z całego Internetu.
  • Rola IAM wystąpienia kontenera: wybierz jedną, jeśli już ją masz, z menu rozwijanego lub

Amazon ECS utworzy go domyślnie.

Wybierz Przejrzyj i uruchom.

  1. Uruchom i wyświetl zasoby

Przed uruchomieniem możesz przejrzeć definicję zadania, konfigurację zadania i konfigurację klastra.

Wybierz Uruchom instancję i uruchom usługę.

Po zakończeniu uruchamiania wybierz Wyświetl usługę.

  1. Otwórz przykładową aplikację: możesz zweryfikować i uruchomić swoją przykładową aplikację, wskazując przeglądarkę na nazwę DNS modułu równoważenia obciążenia.

Otwórz przykładową stronę aplikacji internetowej i wybierz nazwę modułu równoważenia obciążenia.

Skopiuj nazwę DNS ELB i wklej ją do nowej przeglądarki i naciśnij klawisz Enter na klawiaturze.

Możesz wyświetlić przykładową aplikację.

Możesz także wyczyścić swoje zasoby w dowolnym momencie, aby uniknąć niepotrzebnych opłat.

Amazon Elastic Kubernetes Service (EKS)

Umożliwia łatwe zarządzanie, wdrażanie i skalowanie aplikacji kontenerowych za pomocą Kubernetes na AWS. Działa usługa Kubernetes w wielu strefach AWS, aby wyeliminować pojedynczy punkt błędu. Amazon EKS to certyfikowana integracja Kubernetes. Możesz łatwo migrować aplikacje działające w dowolnym standardowym środowisku Kubernetes do AWS EKS.

3. Oblicz

Amazon Elastic Compute Cloud (Amazon EC2)

Jest to bezpieczna i skalowalna pojemność obliczeniowa w chmurze, która obsługuje kontenery w infrastrukturach maszyn wirtualnych z pełną kontrolą nad skalowaniem i konfiguracją. Zapewnia pełną kontrolę nad zasobami obliczeniowymi. Skraca czas potrzebny do uzyskania i uruchomienia nowych instancji serwera do zaledwie kilku minut. Amazon EC2 zapewnia programistom narzędzia do budowania aplikacji odpornych na awarie.

Przykład: zainstaluj serwer WWW LAMP z Amazon Linux AMI.

Ten przykład pomaga zainstalować serwer WWW Apache z obsługą PHP i MySQL w Twojej instancji Amazon Linux (zwanej także serwerem WWW LAMP).

  1. Połącz z instancją Linuksa.
  2. Zaktualizuj pakiety oprogramowania, jeśli takie istnieją.

  1. Zainstaluj serwer WWW Apache, MySQL i pakiety oprogramowania PHP za pomocą polecenia yum install.

  1. Uruchom serwer Apache.

  1. Skonfiguruj serwer WWW Apache, aby uruchamiał się przy każdym uruchomieniu systemu.

  1. Sprawdź, czy httpd jest włączony.

  1. Dodaj nową regułę bezpieczeństwa ruchu przychodzącego o następujących wartościach:
  • Wpisz: HTTP
  • Protokół: TCP
  • Zakres portów: 80
  • Źródło: Custom
  1. Przetestuj serwer WWW, wpisując adres DNS w przeglądarce internetowej.
  2. W razie potrzeby ustaw niezbędne uprawnienia do plików.
  3. Przetestuj swój serwer LAMP.
  4. Zabezpiecz serwer bazy danych.

AWS Fargate

Jest to serwerowy silnik obliczeniowy dla Amazon ECS, który pozwala na uruchamianie kontenerów bez zarządzania serwerami. Amazon dba o wszystkie leżące u podstaw zarządzanie serwerami, umożliwiając skupienie się na projektowaniu i budowaniu aplikacji

Ma dwa tryby:

Typ uruchamiania Fargate: spakuj aplikację do kontenerów, określ wymagania dotyczące procesora i pamięci, zdefiniuj zasady sieciowe i IAM i uruchom aplikację.

Typ uruchomienia EC2: Umożliwia kontrolę na poziomie serwera nad obiektem, w którym działają aplikacje kontenerowe.

Korzyści z kontenerów AWS

  • Działa w dowolnym miejscu: Kontenery pakują kod wraz z plikami konfiguracyjnymi i zależnościami, które muszą być spójne w każdym środowisku.
  • Poprawa wykorzystania zasobów: kontenery zapewniają izolację procesów, która pozwala ustawić wykorzystanie procesora i pamięci w celu lepszego wykorzystania zasobów obliczeniowych.
  • Szybkie skalowanie: każdy kontener działa jako osobny proces, który dzieli zasoby podstawowego systemu operacyjnego. Umożliwia to szybkie uruchamianie i zatrzymywanie pojemników.

Jak to działa?

  1. Zbuduj obraz kontenera: spakuj kod i wszystkie jego zależności do kontenera.
  2. Zautomatyzuj testy i wdrożenie: znormalizowana jednostka kodu, kontener działa jak spójny budynek
  3. Uruchom w dowolnym miejscu: Twój kontener będzie działał konsekwentnie w każdym środowisku.
  4. Szybkie skalowanie: kontenery szybko się uruchamiają i kończą, dzięki czemu Twoja aplikacja może być skalowana w górę i w dół

Wniosek - pojemniki AWS

Amazon zapewnia szeroki zakres usług do przechowywania, zarządzania i obsługi kontenerów. Kontenery ułatwiają programistom tworzenie i wdrażanie, ponieważ Amazon zajmuje się całą infrastrukturą, w tym zarządzaniem serwerami, umożliwiając programistom skupienie się na ich rozwoju. Wybierz odpowiednią usługę AWS dla swojego obciążenia.

Polecane artykuły

To jest przewodnik po kontenerach AWS. Tutaj omawiamy wprowadzenie, typy kontenerów, które obejmują rejestrację, koordynację i obliczenia oraz zalety kontenerów AWS. Możesz także przejrzeć następujące artykuły, aby dowiedzieć się więcej -

  1. Usługi AWS
  2. AWS Kinesis
  3. Architektura AWS
  4. Co to jest AWS RedShift?
  5. Kompletny przewodnik dla konkurentów AWS
  6. Poznaj listę funkcji Amazon Web Services

Kategoria: