Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Greifen Sie privat auf Container-Anwendungen auf Amazon ECS zu, indem Sie AWS Fargate PrivateLink, AWS und einen Network Load Balancer verwenden
Erstellt von Kirankumar Chandrashekar (AWS)
Übersicht
Dieses Muster beschreibt, wie Sie eine Docker-Container-Anwendung privat in der Amazon Web Services (AWS) -Cloud hosten, indem Sie Amazon Elastic Container Service (Amazon ECS) mit einem AWS Fargate-Starttyp hinter einem Network Load Balancer verwenden und mithilfe von AWS auf die Anwendung zugreifen. PrivateLink Amazon Relational Database Service (Amazon RDS) hostet die relationale Datenbank für die Anwendung, die auf Amazon ECS mit hoher Verfügbarkeit (HA) ausgeführt wird. Sie können Amazon Elastic File System (Amazon EFS) verwenden, wenn die Anwendung persistenten Speicher benötigt.
Dieses Muster verwendet einen Fargate-Starttyp für den Amazon ECS-Service, auf dem die Docker-Anwendungen ausgeführt werden, mit einem Network Load Balancer am Frontend. Es kann dann mit einem Virtual Private Cloud (VPC) -Endpunkt für den Zugriff über AWS PrivateLink verknüpft werden. Dieser VPC-Endpunktdienst kann dann VPCs mithilfe ihrer VPC-Endpunkte mit anderen geteilt werden.
Sie können Fargate mit Amazon ECS verwenden, um Container auszuführen, ohne Server oder Cluster von Amazon Elastic Compute Cloud (Amazon EC2) -Instances verwalten zu müssen. Sie können anstelle von Fargate auch eine Amazon EC2 Auto Scaling Scaling-Gruppe verwenden. Weitere Informationen finden Sie unter Privaten Zugriff auf Containeranwendungen auf Amazon ECS mithilfe von AWS PrivateLink und einem Network Load Balancer.
Voraussetzungen und Einschränkungen
Voraussetzungen
Ein aktives AWS-Konto
AWS-Befehlszeilenschnittstelle (AWS CLI) Version 2, installiert und konfiguriert unter Linux, macOS oder Windows
Docker
, installiert und konfiguriert unter Linux, MacOS oder Windows Eine Anwendung, die auf Docker läuft
Architektur

Technologie-Stack
Amazon CloudWatch
Amazon Elastic Container Registry (Amazon ECR)
Amazon ECS
Amazon EFS
Amazon RDS
Amazon Simple Storage Service (Amazon-S3)
AWS Fargate
AWS PrivateLink
AWS Secrets Manager
Application Load Balancer
Network Load Balancer
VPC
Automatisierung und Skalierung
Sie können AWS verwenden CloudFormation, um dieses Muster mithilfe von Infrastructure as Code zu erstellen.
Tools
AWS-Services
Amazon Elastic Container Registry (Amazon ECR) ist ein verwalteter AWS-Container-Image-Registry-Service, der sicher, skalierbar und zuverlässig ist.
Amazon Elastic Container Service (Amazon ECS) ist ein hoch skalierbarer, schneller Container-Management-Service, der das Ausführen, Stoppen und Verwalten von Containern in einem Cluster vereinfacht.
Amazon Elastic File System (Amazon EFS) bietet ein einfaches, skalierbares, vollständig verwaltetes elastisches NFS-Dateisystem zur Verwendung mit AWS-Cloud-Services und lokalen Ressourcen.
AWS Fargateist eine Technologie, die Sie mit Amazon ECS verwenden können, um Container auszuführen, ohne Server oder Cluster von EC2 Amazon-Instances verwalten zu müssen.
Amazon Relational Database Service (Amazon RDS) ist ein Webservice, der die Einrichtung, den Betrieb und die Skalierung einer relationalen Datenbank in der erleichtert. AWS Cloud
Amazon Simple Storage Service (Amazon S3) ist Speicher für das Internet. Der Service ist darauf ausgelegt, Cloud Computing für Entwickler zu erleichtern.
Mit AWS Secrets Manager können Sie fest codierte Anmeldeinformationen im Code (einschließlich Passwörter) durch einen API-Aufruf an Secrets Manager ersetzen und das Geheimnis programmgesteuert abrufen.
Amazon Virtual Private Cloud (Amazon VPC) hilft Ihnen, AWS-Ressourcen in einem von Ihnen definierten virtuellen Netzwerk zu starten.
Elastic Load Balancing (ELB) verteilt eingehenden Anwendungs- oder Netzwerkverkehr auf mehrere Ziele wie EC2 Instances, Container und IP-Adressen in mehreren Availability Zones.
Andere Tools
Docker
hilft Entwicklern dabei, jede Anwendung einfach als leichten, tragbaren und autarken Container zu packen, zu versenden und auszuführen.
Epen
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie eine VPC. |
| Cloud-Administrator |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie einen Network Load Balancer. |
Hilfe zu dieser und anderen Geschichten finden Sie im Abschnitt Verwandte Ressourcen. | Cloud-Administrator |
Erstellen Sie einen Application Load Balancer. |
| Cloud-Administrator |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie ein Amazon EFS-Dateisystem. |
| Cloud-Administrator |
Mounten Sie Ziele für die Subnetze. |
| Cloud-Administrator |
Stellen Sie sicher, dass die Subnetze als Ziele bereitgestellt sind. |
| Cloud-Administrator |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie einen S3-Bucket. | Öffnen Sie die Amazon S3 S3-Konsole und erstellen Sie bei Bedarf einen S3-Bucket, um die statischen Ressourcen Ihrer Anwendung zu speichern. | Cloud-Administrator |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie einen AWS-KMS-Schlüssel, um das Secrets Manager Manager-Geheimnis zu verschlüsseln. | Öffnen Sie die AWS Key Management Service (AWS KMS) -Konsole und erstellen Sie einen KMS-Schlüssel. | Cloud-Administrator |
Erstellen Sie ein Secrets Manager Manager-Geheimnis, um das Amazon RDS-Passwort zu speichern. |
| Cloud-Administrator |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie eine DB-Subnetzgruppe. |
| Cloud-Administrator |
Erstellen Sie eine Amazon RDS-Instance. | Erstellen und konfigurieren Sie eine Amazon RDS-Instance in den privaten Subnetzen. Stellen Sie sicher, dass Multi-AZ für Hochverfügbarkeit (HA) aktiviert ist. | Cloud-Administrator |
Laden Sie Daten in die Amazon RDS-Instance. | Laden Sie die für Ihre Anwendung erforderlichen relationalen Daten in Ihre Amazon RDS-Instance. Dieser Prozess hängt von den Anforderungen Ihrer Anwendung sowie davon ab, wie Ihr Datenbankschema definiert und entworfen ist. | DBA |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie einen ECS-Cluster. |
| Cloud-Administrator |
Erstellen Sie die Docker-Images. | Erstellen Sie die Docker-Images, indem Sie den Anweisungen in der AWS Dokumentation folgen. | Cloud-Administrator |
Erstellen Sie ein Amazon-ECR-Repository. |
| Cloud-Administrator, DevOps Ingenieur |
Übertragen Sie die Docker-Images in das Amazon ECR-Repository. |
| Cloud-Administrator |
Erstellen Sie eine Amazon ECS-Aufgabendefinition. | Eine Aufgabendefinition ist erforderlich, um Docker-Container in Amazon ECS auszuführen.
WichtigHilfe beim Einrichten Ihrer Aufgabendefinition finden Sie unter „Eine Aufgabendefinition erstellen“ im Abschnitt Verwandte Ressourcen. Stellen Sie sicher, dass Sie die Docker-Images bereitstellen, die Sie an Amazon ECR übertragen haben. | Cloud-Administrator |
Erstellen Sie einen ECS-Service und wählen Sie Fargate als Starttyp. |
| Cloud-Administrator |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Richten Sie den PrivateLink AWS-Endpunkt ein. |
| Cloud-Administrator |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Erstellen Sie einen VPC-Endpunkt. | Erstellen Sie einen VPC-Endpunkt für den PrivateLink AWS-Endpunkt, den Sie zuvor erstellt haben. Der vollqualifizierte Domainname (FQDN) des VPC-Endpunkts zeigt auf den PrivateLink AWS-Endpunkt-FQDN. Dadurch wird eine elastic network interface zum VPC-Endpunktdienst erstellt, auf die die Domain Name Service-Endpunkte zugreifen können. | Cloud-Administrator |
Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
---|---|---|
Fügen Sie den Application Load Balancer als Ziel hinzu. | App-Developer |
Zugehörige Ressourcen
Erstellen Sie die Load Balancer:
Erstellen Sie ein Amazon EFS-Dateisystem:
Erstellen Sie ein Secrets Manager Manager-Geheimnis:
Erstellen Sie eine Amazon RDS-Instance:
Erstellen Sie die Amazon ECS-Komponenten
Andere Ressourcen: