Inleiding tot AWS-containers

Containers zijn gestandaardiseerde software-ontwikkelingseenheden waarmee u de code, configuraties en afhankelijkheden van uw toepassing in één object kunt bundelen. Containers zijn afgeleid van de principes van virtualisatie op OS-niveau. Hiermee kunt u de applicatie en zijn afhankelijkheden uitvoeren in op bronnen geïsoleerde processen, wat zorgt voor snelle, betrouwbare en consistente implementaties in elke omgeving.

Soorten containers

Hulpprogramma's voor containerbeheer kunnen worden onderverdeeld in drie typen: register, orkestratie en berekening. Registerservices helpen u om uw containerafbeeldingen veilig op te slaan en te beheren. Orchestration beheert wanneer en waar uw containers worden uitgevoerd. En Compute-motoren voeden uw containers. Alle onderliggende infrastructuren worden verzorgd door AWS. Containers maken ontwikkelingen en implementaties eenvoudig en efficiënt.

1. Register

Amazon Elastic Container Registry (ECR)

Het is een zeer schaalbaar, zeer beschikbaar, zeer veilig en volledig beheerd Docker-containerregister. Het helpt de ontwikkelaars om Docker-containerafbeeldingen efficiënt op te slaan, te beheren en in te zetten. Amazon ECR is geïntegreerd met Amazon Elastic Container Service (ECS), wat de implementatie vereenvoudigt. Amazon ECR is alleen betaalbaar voor de hoeveelheid gegevens die u in uw opslagplaatsen opslaat en gegevens die via internet worden overgedragen.

Voorbeeld van het maken van Docker-afbeeldingen van een eenvoudige webtoepassing en deze naar Amazon ECR duwen:

  1. Maak een bestand, Dockerfile.

  1. Bewerk het Docker-bestand.

  1. Bouw een Docker-afbeelding.

  1. Controleer de Docker-afbeelding door deze uit te voeren.

Output:

  1. Voer de nieuw gebouwde afbeelding uit.

  1. Wijs uw browser naar http://locallhost.com/en de uitvoer is:

  1. Stop de Docker-container door Ctrl + c te typen.
  2. Push je afbeelding naar Amazon ECR. Maak een Amazon ECR-repository om de afbeelding op te slaan.

Output:

  1. Tag de ecr-voorbeeldafbeelding met Uri-waarde.

  1. Voer de Docker-login-authenticatieopdracht uit voor uw register.

  1. Voer de Docker-inlogopdracht uit.
  2. Push de afbeelding naar Amazon ECR met de repository Uri

2. Bezetting

Amazon Elastic Container Service (ECS)

Het is een volledig beheerde, zeer schaalbare en krachtige containerbeheerservice. Het ondersteunt Docker-containers en laat gebruikers de toepassing efficiënt uitvoeren op een beheerd cluster van EC2-exemplaren. De installaties en operaties van container orkestratie worden beheerd door AWS.

Voorbeeld van het inzetten van Docker-containers op Amazon ECS:

  1. Amazon ECS - First Run Set-Up : hiermee kunt u clusters maken en voorbeeldwebtoepassingen starten. U gaat naar de Amazon ECS-console en start de wizard. U kunt Amazon ECR ook gebruiken om een ​​afbeeldingsrepository te maken en de afbeelding er naartoe te duwen.

Selecteer de optie en selecteer Doorgaan.

  1. Taakdefinitie maken: het is de blauwdruk van uw toepassing. Controleer de standaardwaarden en selecteer de volgende stap.

  1. Serviceconfiguratie: de service start en onderhoudt kopieën van de taakdefinitie in uw cluster.
  • Servicenaam: AWS biedt standaard een voorbeeld van een webgebaseerde "Hello World" -applicatie voorbeeld-web-app.
  • Gewenst aantal taken: standaardwaarde is 1, voor AWS vrije laag.
  • Elastische taakverdeling: u kunt een taakverdeler gebruiken voor uw service.
  • Containernaam: Hostpoort: selecteer Simple-app : 80 en standaard de resterende velden.

Selecteer Service IAM-rol als u dit al in de vervolgkeuzelijst hebt of Amazon ECS maakt standaard een ECS-servicerol aan.

Controleer uw invoer en selecteer de volgende stap.

  1. Clusterconfiguratie
  • Clusternaam: standaardnaam is voorbeeldcluster .
  • EC2- exemplaartype : standaardtype is t2.micro voor AWS free tier.
  • A Aantal instanties: standaardwaarde is 1, voor AWS vrije laag.
  • Sleutelpaar: u kunt doorgaan door er een te selecteren - Kan SSH niet uitvoeren .
  • Beveiligingsgroep: standaard overal. Het geeft toegang vanaf het hele internet.
  • Containerinstantie IAM-rol: selecteer er een als u al in de vervolgkeuzelijst of

Amazon ECS maakt er standaard een aan.

Selecteer Controleren en starten.

  1. Hulpbronnen starten en bekijken

U kunt uw taakdefinitie, taakconfiguratie en clusterconfiguraties bekijken voordat u start.

Selecteer Exemplaar starten en service uitvoeren.

Nadat de lancering is voltooid, selecteert u View-service.

  1. Open de voorbeeldtoepassing: u kunt uw voorbeeldtoepassing verifiëren en uitvoeren door uw browser te richten op de DNS-naam van de load balancer.

Open de voorbeeldwebapp-pagina en selecteer de naam van uw load balancer.

Kopieer de ELB DNS-naam en plak deze in een nieuwe browser en druk op Enter op uw toetsenbord.

U kunt uw voorbeeldapplicatie bekijken.

U kunt ook uw bronnen op elk gewenst moment opschonen om onnodige kosten te voorkomen.

Amazon Elastic Kubernetes Service (EKS)

Hiermee kunt u eenvoudig containertoepassingen beheren, implementeren en schalen met Kubernetes op AWS. Het voert Kubernetes-service uit over meerdere AWS-zones om een ​​enkel foutpunt te elimineren. Amazon EKS is een gecertificeerde Kubernetes-integratie, u kunt eenvoudig toepassingen migreren die draaien op elke standaard Kubernetes-omgeving naar AWS EKS.

3. Berekenen

Amazon Elastic Compute Cloud (Amazon EC2)

Het is een veilige en aanpasbare rekencapaciteit in de cloud die containers op virtuele machine-infrastructuren draait met volledige controle over schaal en configuratie. Het geeft u volledige controle over uw computerbronnen. Het vermindert de tijd die nodig is om nieuwe serverinstanties te verkrijgen en op te starten tot slechts enkele minuten. Amazon EC2 biedt ontwikkelaars de tools voor het bouwen van foutbestendige toepassingen.

Voorbeeld: Installeer een LAMP-webserver met de Amazon Linux AMI.

Dit voorbeeld helpt u bij het installeren van een Apache-webserver met PHP en MySQL-ondersteuning op uw Amazon Linux-exemplaar (ook wel LAMP-webserver genoemd).

  1. Maak verbinding met Linux-instantie.
  2. Werk eventuele softwarepakketten bij.

  1. Installeer de Apache-webserver-, MySQL- en PHP-softwarepakketten met de opdracht yum install.

  1. Start de Apache-webserver.

  1. Configureer de Apache-webserver om bij elke systeemstart te starten.

  1. Controleer of httpd is ingeschakeld.

  1. Voeg een nieuwe inkomende beveiligingsregel toe met de volgende waarden:
  • Type: HTTP
  • Protocol: TCP
  • Poortbereik: 80
  • Bron: Custom
  1. Test de webserver door het DNS-adres in een webbrowser te typen.
  2. Stel indien nodig de benodigde bestandsrechten in.
  3. Test uw LAMP-server.
  4. Beveilig de databaseserver.

AWS Fargate

Het is een serverloze rekenmachine voor Amazon ECS waarmee u containers kunt uitvoeren zonder servers te beheren. Amazon zorgt voor alle onderliggende serverbeheer zodat u zich kunt concentreren op het ontwerpen en bouwen van uw applicaties

Het heeft twee modi:

Fargate Launch Type: Verpak uw applicatie in containers, specificeer de CPU- en geheugenvereisten, definieer netwerk- en IAM-beleid en start de applicatie.

EC2 Launch Type: hiermee kunt u op serverniveau controle uitoefenen over een faciliteit die uw containertoepassingen uitvoert.

Voordelen van AWS-containers

  • Werkt overal: Containers verpakken uw code met de configuratiebestanden en afhankelijkheden die het nodig heeft om consistent in elke omgeving te worden uitgevoerd.
  • Resourcebenutting verbeteren: Containers bieden procesisolatie waarmee u CPU- en geheugengebruik kunt instellen voor een beter gebruik van computerresources.
  • Snel schalen: elke container wordt uitgevoerd als een afzonderlijk proces dat de middelen van het onderliggende besturingssysteem deelt. Hierdoor kunnen containers snel starten en stoppen.

Hoe werkt het?

  1. Bouw een containerafbeelding: verpak uw code en al zijn afhankelijkheden in een container.
  2. Automatiseer test en implementatie: gestandaardiseerde code-eenheid, de container fungeert als een consistent gebouw
  3. Overal uitvoeren: uw container werkt consistent in elke omgeving.
  4. Snel schalen: containers beginnen en eindigen snel, zodat uw toepassing op en neer kan schalen

Conclusie - AWS-containers

Amazon biedt een breed scala aan services voor het opslaan, beheren en uitvoeren van containers. Containers maken ontwikkelingen en implementaties eenvoudiger voor ontwikkelaars omdat alle onderliggende infrastructuren inclusief serverbeheer door Amazon worden verzorgd, waardoor ontwikkelaars zich op hun ontwikkeling kunnen concentreren. Kies de juiste AWS-service voor uw werklast.

Aanbevolen artikelen

Dit is een handleiding voor AWS-containers. Hier bespreken we de introductie, typen containers die Registry, Orchestration en Compute bevatten, samen met de voordelen van AWS-containers. U kunt ook de volgende artikelen bekijken voor meer informatie–

  1. AWS Services
  2. AWS Kinesis
  3. AWS-architectuur
  4. Wat is AWS RedShift?
  5. Volledige gids voor AWS-concurrenten
  6. Leer de lijst met functies van Amazon Web Services

Categorie: