

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.

# Erstellen Sie das VPC-Netzwerk
<a name="vpc-create"></a>

Amazon Managed Workflows for Apache Airflow erfordert eine Amazon VPC und spezifische Netzwerkkomponenten zur Unterstützung einer Umgebung. In diesem Handbuch werden die verschiedenen Optionen zum Erstellen des Amazon VPC-Netzwerks für eine Amazon Managed Workflows for Apache Airflow Airflow-Umgebung beschrieben.

**Anmerkung**  
Apache Airflow funktioniert am besten in einer Netzwerkumgebung mit niedriger Latenz. Wenn Sie eine bestehende Amazon VPC verwenden, die den Datenverkehr in eine andere Region oder in eine lokale Umgebung weiterleitet, empfehlen wir, AWS PrivateLink Endpunkte für Amazon SQS CloudWatch, Amazon S3 und hinzuzufügen. AWS KMS Weitere Informationen zur Konfiguration AWS PrivateLink für Amazon MWAA finden Sie unter [Erstellen eines Amazon VPC-Netzwerks ohne Internetzugang](#vpc-create-template-private-only).

**Contents**
+ [Voraussetzungen](#vpc-create-prereqs)
+ [Bevor Sie beginnen](#vpc-create-how-networking)
+ [Optionen zum Erstellen des Amazon VPC-Netzwerks](#vpc-create-options)
  + [Option eins: Erstellen des VPC-Netzwerks auf der Amazon MWAA-Konsole](#vpc-create-mwaa-console)
  + [Option zwei: Erstellen eines Amazon VPC-Netzwerks *mit* Internetzugang](#vpc-create-template-private-or-public)
  + [Option drei: Erstellen eines Amazon VPC-Netzwerks *ohne* Internetzugang](#vpc-create-template-private-only)
+ [Als nächstes](#create-vpc-next-up)

## Voraussetzungen
<a name="vpc-create-prereqs"></a>

Das AWS Command Line Interface (AWS CLI) ist ein Open-Source-Tool, mit dem Sie mithilfe von Befehlen in Ihrer AWS Befehlszeilen-Shell mit Diensten interagieren können. Um die Schritte auf dieser Seite abzuschließen, benötigen Sie Folgendes:
+ [AWS CLI — Installieren Sie Version 2.](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html)
+ [AWS CLI — Schnelle Konfiguration mit `aws configure`](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html).

## Bevor Sie beginnen
<a name="vpc-create-how-networking"></a>
+ Das [VPC-Netzwerk](#vpc-create), das Sie für Ihre Umgebung angeben, kann nach der Erstellung der Umgebung nicht geändert werden.
+ Sie können privates oder öffentliches Routing für Ihre Amazon VPC- und Apache Airflow Airflow-Webserver verwenden. Eine Liste mit Optionen finden Sie unter. [Beispielanwendungsfälle für eine Amazon VPC und den Apache Airflow Airflow-Zugriffsmodus](networking-about.md#networking-about-network-usecase)

## Optionen zum Erstellen des Amazon VPC-Netzwerks
<a name="vpc-create-options"></a>

Im folgenden Abschnitt werden die verfügbaren Optionen beschrieben, um das Amazon VPC-Netzwerk für eine Umgebung zu erstellen.

**Anmerkung**  
Amazon MWAA unterstützt die Verwendung der `use1-az3` Availability Zone (AZ) in der Region USA Ost (Nord-Virginia) nicht. Wenn Sie die VPC für Amazon MWAA in der Region USA Ost (Nord-Virginia) erstellen, müssen Sie die `AvailabilityZone` in der Vorlage CloudFormation (CFN) explizit zuweisen. Der zugewiesene Name der Verfügbarkeitszone darf nicht zugeordnet sein. `use1-az3` Sie können die detaillierte Zuordnung der AZ-Namen zu ihrer entsprechenden AZ abrufen, IDs indem Sie den folgenden Befehl ausführen:  

```
aws ec2 describe-availability-zones --region us-east-1
```

### Option eins: Erstellen des VPC-Netzwerks auf der Amazon MWAA-Konsole
<a name="vpc-create-mwaa-console"></a>

Im folgenden Abschnitt wird erklärt, wie Sie ein Amazon VPC-Netzwerk auf der Amazon MWAA-Konsole erstellen. Diese Option verwendet. [Öffentliches Routing über das Internet](networking-about.md#networking-about-overview-public) Es kann für einen Apache Airflow Airflow-Webserver mit den Zugriffsmodi **Privates Netzwerk** oder **Öffentliches Netzwerk** verwendet werden.

Die folgende Abbildung zeigt, wo Sie die Schaltfläche **MWAA-VPC erstellen auf der Amazon MWAA-Konsole** finden.

![\[Dieses Bild zeigt, wo Sie die Create MWAA VPC auf der Amazon MWAA-Konsole finden.\]](http://docs.aws.amazon.com/de_de/mwaa/latest/userguide/images/mwaa-console-create-vpc.png)


### Option zwei: Erstellen eines Amazon VPC-Netzwerks *mit* Internetzugang
<a name="vpc-create-template-private-or-public"></a>

Die folgende CloudFormation Vorlage erstellt standardmäßig AWS-Region ein Amazon VPC-Netzwerk mit Internetzugang. Diese Option verwendet[Öffentliches Routing über das Internet](networking-about.md#networking-about-overview-public). Diese Vorlage kann für einen Apache Airflow Airflow-Webserver mit den Zugriffsmodi **Privates Netzwerk** oder **Öffentliches Netzwerk** verwendet werden.

1. Kopieren Sie den Inhalt der folgenden Vorlage und speichern Sie ihn lokal unter. `cfn-vpc-public-private.yaml` Sie können [die Vorlage auch herunterladen](./samples/cfn-vpc-public-private.zip).

   ```
   Description:  This template deploys a VPC, with a pair of public and private subnets spread
     across two Availability Zones. It deploys an internet gateway, with a default
     route on the public subnets. It deploys a pair of NAT gateways (one in each AZ),
     and default routes for them in the private subnets.
   
   Parameters:
     EnvironmentName:
       Description: An environment name that is prefixed to resource names
       Type: String
       Default: mwaa-
   
     VpcCIDR:
       Description: Please enter the IP range (CIDR notation) for this VPC
       Type: String
       Default: 10.192.0.0/16
   
     PublicSubnet1CIDR:
       Description: Please enter the IP range (CIDR notation) for the public subnet in the first Availability Zone
       Type: String
       Default: 10.192.10.0/24
   
     PublicSubnet2CIDR:
       Description: Please enter the IP range (CIDR notation) for the public subnet in the second Availability Zone
       Type: String
       Default: 10.192.11.0/24
   
     PrivateSubnet1CIDR:
       Description: Please enter the IP range (CIDR notation) for the private subnet in the first Availability Zone
       Type: String
       Default: 10.192.20.0/24
   
     PrivateSubnet2CIDR:
       Description: Please enter the IP range (CIDR notation) for the private subnet in the second Availability Zone
       Type: String
       Default: 10.192.21.0/24
   
   Resources:
     VPC:
       Type: AWS::EC2::VPC
       Properties:
         CidrBlock: !Ref VpcCIDR
         EnableDnsSupport: true
         EnableDnsHostnames: true
         Tags:
           - Key: Name
             Value: !Ref EnvironmentName
   
     InternetGateway:
       Type: AWS::EC2::InternetGateway
       Properties:
         Tags:
           - Key: Name
             Value: !Ref EnvironmentName
   
     InternetGatewayAttachment:
       Type: AWS::EC2::VPCGatewayAttachment
       Properties:
         InternetGatewayId: !Ref InternetGateway
         VpcId: !Ref VPC
   
     PublicSubnet1:
       Type: AWS::EC2::Subnet
       Properties:
         VpcId: !Ref VPC
         AvailabilityZone: !Select [ 0, !GetAZs '' ]
         CidrBlock: !Ref PublicSubnet1CIDR
         MapPublicIpOnLaunch: true
         Tags:
           - Key: Name
             Value: !Sub ${EnvironmentName} Public Subnet (AZ1)
   
     PublicSubnet2:
       Type: AWS::EC2::Subnet
       Properties:
         VpcId: !Ref VPC
         AvailabilityZone: !Select [ 1, !GetAZs  '' ]
         CidrBlock: !Ref PublicSubnet2CIDR
         MapPublicIpOnLaunch: true
         Tags:
           - Key: Name
             Value: !Sub ${EnvironmentName} Public Subnet (AZ2)
   
     PrivateSubnet1:
       Type: AWS::EC2::Subnet
       Properties:
         VpcId: !Ref VPC
         AvailabilityZone: !Select [ 0, !GetAZs  '' ]
         CidrBlock: !Ref PrivateSubnet1CIDR
         MapPublicIpOnLaunch: false
         Tags:
           - Key: Name
             Value: !Sub ${EnvironmentName} Private Subnet (AZ1)
   
     PrivateSubnet2:
       Type: AWS::EC2::Subnet
       Properties:
         VpcId: !Ref VPC
         AvailabilityZone: !Select [ 1, !GetAZs  '' ]
         CidrBlock: !Ref PrivateSubnet2CIDR
         MapPublicIpOnLaunch: false
         Tags:
           - Key: Name
             Value: !Sub ${EnvironmentName} Private Subnet (AZ2)
   
     NatGateway1EIP:
       Type: AWS::EC2::EIP
       DependsOn: InternetGatewayAttachment
       Properties:
         Domain: vpc
   
     NatGateway2EIP:
       Type: AWS::EC2::EIP
       DependsOn: InternetGatewayAttachment
       Properties:
         Domain: vpc
   
     NatGateway1:
       Type: AWS::EC2::NatGateway
       Properties:
         AllocationId: !GetAtt NatGateway1EIP.AllocationId
         SubnetId: !Ref PublicSubnet1
   
     NatGateway2:
       Type: AWS::EC2::NatGateway
       Properties:
         AllocationId: !GetAtt NatGateway2EIP.AllocationId
         SubnetId: !Ref PublicSubnet2
   
     PublicRouteTable:
       Type: AWS::EC2::RouteTable
       Properties:
         VpcId: !Ref VPC
         Tags:
           - Key: Name
             Value: !Sub ${EnvironmentName} Public Routes
   
     DefaultPublicRoute:
       Type: AWS::EC2::Route
       DependsOn: InternetGatewayAttachment
       Properties:
         RouteTableId: !Ref PublicRouteTable
         DestinationCidrBlock: 0.0.0.0/0
         GatewayId: !Ref InternetGateway
   
     PublicSubnet1RouteTableAssociation:
       Type: AWS::EC2::SubnetRouteTableAssociation
       Properties:
         RouteTableId: !Ref PublicRouteTable
         SubnetId: !Ref PublicSubnet1
   
     PublicSubnet2RouteTableAssociation:
       Type: AWS::EC2::SubnetRouteTableAssociation
       Properties:
         RouteTableId: !Ref PublicRouteTable
         SubnetId: !Ref PublicSubnet2
   
   
     PrivateRouteTable1:
       Type: AWS::EC2::RouteTable
       Properties:
         VpcId: !Ref VPC
         Tags:
           - Key: Name
             Value: !Sub ${EnvironmentName} Private Routes (AZ1)
   
     DefaultPrivateRoute1:
       Type: AWS::EC2::Route
       Properties:
         RouteTableId: !Ref PrivateRouteTable1
         DestinationCidrBlock: 0.0.0.0/0
         NatGatewayId: !Ref NatGateway1
   
     PrivateSubnet1RouteTableAssociation:
       Type: AWS::EC2::SubnetRouteTableAssociation
       Properties:
         RouteTableId: !Ref PrivateRouteTable1
         SubnetId: !Ref PrivateSubnet1
   
     PrivateRouteTable2:
       Type: AWS::EC2::RouteTable
       Properties:
         VpcId: !Ref VPC
         Tags:
           - Key: Name
             Value: !Sub ${EnvironmentName} Private Routes (AZ2)
   
     DefaultPrivateRoute2:
       Type: AWS::EC2::Route
       Properties:
         RouteTableId: !Ref PrivateRouteTable2
         DestinationCidrBlock: 0.0.0.0/0
         NatGatewayId: !Ref NatGateway2
   
     PrivateSubnet2RouteTableAssociation:
       Type: AWS::EC2::SubnetRouteTableAssociation
       Properties:
         RouteTableId: !Ref PrivateRouteTable2
         SubnetId: !Ref PrivateSubnet2
   
     SecurityGroup:
       Type: AWS::EC2::SecurityGroup
       Properties:
         GroupName: "mwaa-security-group"
         GroupDescription: "Security group with a self-referencing inbound rule."
         VpcId: !Ref VPC
   
     SecurityGroupIngress:
       Type: AWS::EC2::SecurityGroupIngress
       Properties:
         GroupId: !Ref SecurityGroup
         IpProtocol: "-1"
         SourceSecurityGroupId: !Ref SecurityGroup
   
   Outputs:
     VPC:
       Description: A reference to the created VPC
       Value: !Ref VPC
   
     PublicSubnets:
       Description: A list of the public subnets
       Value: !Join [ ",", [ !Ref PublicSubnet1, !Ref PublicSubnet2 ]]
   
     PrivateSubnets:
       Description: A list of the private subnets
       Value: !Join [ ",", [ !Ref PrivateSubnet1, !Ref PrivateSubnet2 ]]
   
     PublicSubnet1:
       Description: A reference to the public subnet in the 1st Availability Zone
       Value: !Ref PublicSubnet1
   
     PublicSubnet2:
       Description: A reference to the public subnet in the 2nd Availability Zone
       Value: !Ref PublicSubnet2
   
     PrivateSubnet1:
       Description: A reference to the private subnet in the 1st Availability Zone
       Value: !Ref PrivateSubnet1
   
     PrivateSubnet2:
       Description: A reference to the private subnet in the 2nd Availability Zone
       Value: !Ref PrivateSubnet2
   
     SecurityGroupIngress:
       Description: Security group with self-referencing inbound rule
       Value: !Ref SecurityGroupIngress
   ```

1. Navigieren Sie in der Befehlszeile zu dem Verzeichnis, in dem `cfn-vpc-public-private.yaml` es gespeichert ist. Zum Beispiel:

   ```
   cd mwaaproject
   ```

1. Verwenden Sie den [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-stack.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-stack.html)Befehl, um den Stack mit dem zu erstellen AWS CLI.

   ```
   aws cloudformation create-stack --stack-name mwaa-environment --template-body file://cfn-vpc-public-private.yaml
   ```
**Anmerkung**  
Die Erstellung der Amazon VPC-Infrastruktur dauert etwa 30 Minuten.

### Option drei: Erstellen eines Amazon VPC-Netzwerks *ohne* Internetzugang
<a name="vpc-create-template-private-only"></a>

Die folgende CloudFormation Vorlage erstellt standardmäßig AWS-Region ein Amazon VPC-Netzwerk *ohne Internetzugang*.

Diese Option verwendet[Privates Routing ohne Internetzugang](networking-about.md#networking-about-overview-private). Diese Vorlage kann nur für einen Apache Airflow Airflow-Webserver mit dem **privaten Netzwerkzugriffsmodus** verwendet werden. Es erstellt die erforderlichen [VPC-Endpunkte für die von einer AWS Umgebung verwendeten Dienste](vpc-vpe-create-access.md#vpc-vpe-create-view-endpoints-attach-services).

1. Kopieren Sie den Inhalt der folgenden Vorlage und speichern Sie ihn lokal unter. `cfn-vpc-private.yaml` Sie können [die Vorlage auch herunterladen](./samples/cfn-vpc-private-no-ops.zip).

   ```
   AWSTemplateFormatVersion: "2010-09-09"
        
   Parameters:
      VpcCIDR:
        Description: The IP range (CIDR notation) for this VPC
        Type: String
        Default: 10.192.0.0/16
        
      PrivateSubnet1CIDR:
        Description: The IP range (CIDR notation) for the private subnet in the first Availability Zone
        Type: String
        Default: 10.192.10.0/24
        
      PrivateSubnet2CIDR:
        Description: The IP range (CIDR notation) for the private subnet in the second Availability Zone
        Type: String
        Default: 10.192.11.0/24
        
   Resources:
      VPC:
        Type: AWS::EC2::VPC
        Properties:
          CidrBlock: !Ref VpcCIDR
          EnableDnsSupport: true
          EnableDnsHostnames: true
          Tags:
           - Key: Name
             Value: !Ref AWS::StackName
        
      RouteTable:
        Type: AWS::EC2::RouteTable
        Properties:
          VpcId: !Ref VPC
          Tags:
           - Key: Name
             Value: !Sub "${AWS::StackName}-route-table"
        
      PrivateSubnet1:
        Type: AWS::EC2::Subnet
        Properties:
          VpcId: !Ref VPC
          AvailabilityZone: !Select [ 0, !GetAZs  '' ]
          CidrBlock: !Ref PrivateSubnet1CIDR
          MapPublicIpOnLaunch: false
          Tags:
           - Key: Name
             Value: !Sub "${AWS::StackName} Private Subnet (AZ1)"
        
      PrivateSubnet2:
        Type: AWS::EC2::Subnet
        Properties:
          VpcId: !Ref VPC
          AvailabilityZone: !Select [ 1, !GetAZs  '' ]
          CidrBlock: !Ref PrivateSubnet2CIDR
          MapPublicIpOnLaunch: false
          Tags:
           - Key: Name
             Value: !Sub "${AWS::StackName} Private Subnet (AZ2)"
        
      PrivateSubnet1RouteTableAssociation:
        Type: AWS::EC2::SubnetRouteTableAssociation
        Properties:
          RouteTableId: !Ref RouteTable
          SubnetId: !Ref PrivateSubnet1
        
      PrivateSubnet2RouteTableAssociation:
        Type: AWS::EC2::SubnetRouteTableAssociation
        Properties:
          RouteTableId: !Ref RouteTable
          SubnetId: !Ref PrivateSubnet2
        
      S3VpcEndoint:
        Type: AWS::EC2::VPCEndpoint
        Properties:
          ServiceName: !Sub "com.amazonaws.${AWS::Region}.s3"
          VpcEndpointType: Gateway
          VpcId: !Ref VPC
          RouteTableIds:
           - !Ref RouteTable
        
      SecurityGroup:
        Type: AWS::EC2::SecurityGroup
        Properties:
          VpcId: !Ref VPC
          GroupDescription: Security Group for Amazon MWAA Environments to access VPC endpoints
          GroupName: !Sub "${AWS::StackName}-mwaa-vpc-endpoints"
      
      SecurityGroupIngress:
        Type: AWS::EC2::SecurityGroupIngress
        Properties:
          GroupId: !Ref SecurityGroup
          IpProtocol: "-1"
          SourceSecurityGroupId: !Ref SecurityGroup
      
      SqsVpcEndoint:
        Type: AWS::EC2::VPCEndpoint
        Properties:
          ServiceName: !Sub "com.amazonaws.${AWS::Region}.sqs"
          VpcEndpointType: Interface
          VpcId: !Ref VPC
          PrivateDnsEnabled: true
          SubnetIds:
           - !Ref PrivateSubnet1
           - !Ref PrivateSubnet2
          SecurityGroupIds:
           - !Ref SecurityGroup
        
      CloudWatchLogsVpcEndoint:
        Type: AWS::EC2::VPCEndpoint
        Properties:
          ServiceName: !Sub "com.amazonaws.${AWS::Region}.logs"
          VpcEndpointType: Interface
          VpcId: !Ref VPC
          PrivateDnsEnabled: true
          SubnetIds:
           - !Ref PrivateSubnet1
           - !Ref PrivateSubnet2
          SecurityGroupIds:
           - !Ref SecurityGroup
        
      CloudWatchMonitoringVpcEndoint:
        Type: AWS::EC2::VPCEndpoint
        Properties:
          ServiceName: !Sub "com.amazonaws.${AWS::Region}.monitoring"
          VpcEndpointType: Interface
          VpcId: !Ref VPC
          PrivateDnsEnabled: true
          SubnetIds:
           - !Ref PrivateSubnet1
           - !Ref PrivateSubnet2
          SecurityGroupIds:
           - !Ref SecurityGroup
        
      KmsVpcEndoint:
        Type: AWS::EC2::VPCEndpoint
        Properties:
          ServiceName: !Sub "com.amazonaws.${AWS::Region}.kms"
          VpcEndpointType: Interface
          VpcId: !Ref VPC
          PrivateDnsEnabled: true
          SubnetIds:
           - !Ref PrivateSubnet1
           - !Ref PrivateSubnet2
          SecurityGroupIds:
           - !Ref SecurityGroup
   
   
   Outputs:
      VPC:
        Description: A reference to the created VPC
        Value: !Ref VPC
        
      MwaaSecurityGroupId:
        Description: Associates the Security Group to the environment to allow access to the VPC endpoints 
        Value: !Ref SecurityGroup
        
      PrivateSubnets:
        Description: A list of the private subnets
        Value: !Join [ ",", [ !Ref PrivateSubnet1, !Ref PrivateSubnet2 ]]
        
      PrivateSubnet1:
        Description: A reference to the private subnet in the 1st Availability Zone
        Value: !Ref PrivateSubnet1
        
      PrivateSubnet2:
        Description: A reference to the private subnet in the 2nd Availability Zone
        Value: !Ref PrivateSubnet2
   ```

1. Navigieren Sie in der Befehlszeile zu dem Verzeichnis, in dem `cfn-vpc-private.yml` es gespeichert ist. Zum Beispiel:

   ```
   cd mwaaproject
   ```

1. Verwenden Sie den [https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-stack.html](https://docs.aws.amazon.com/cli/latest/reference/cloudformation/create-stack.html)Befehl, um den Stack mit dem zu erstellen AWS CLI.

   ```
   aws cloudformation create-stack --stack-name mwaa-private-environment --template-body file://cfn-vpc-private.yml
   ```
**Anmerkung**  
Die Erstellung der Amazon VPC-Infrastruktur dauert etwa 30 Minuten.

1. Sie müssen einen Mechanismus erstellen, um von Ihrem Computer aus auf diese VPC-Endpunkte zuzugreifen. Weitere Informationen finden Sie unter. [Verwaltung des Zugriffs auf servicespezifische Amazon VPC-Endpunkte auf Amazon MWAA](vpc-vpe-access.md)

**Anmerkung**  
Sie können den ausgehenden Zugriff im CIDR Ihrer Amazon MWAA-Sicherheitsgruppe weiter einschränken. Sie können sich beispielsweise auf sich selbst beschränken, indem Sie eine selbstreferenzierende ausgehende Regel, die [Präfixliste](https://docs.aws.amazon.com/vpc/latest/privatelink/vpce-gateway.html) für Amazon S3 und die CIDR Ihrer Amazon VPC hinzufügen.

## Als nächstes
<a name="create-vpc-next-up"></a>
+ Erfahren Sie in, wie Sie eine Amazon MWAA-Umgebung erstellen. [Erstellen Sie eine Amazon MWAA-Umgebung](create-environment.md)
+ Erfahren Sie, wie Sie einen VPN-Tunnel von Ihrem Computer zu Ihrer Amazon VPC mit privatem Routing einrichten. [Tutorial: Konfiguration des privaten Netzwerkzugriffs mit einem AWS Client VPN](tutorials-private-network-vpn-client.md)