

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Mengelola titik akhir Amazon VPC Anda sendiri di Amazon MWAA
<a name="vpc-endpoint-management"></a>

Amazon MWAA menggunakan titik akhir Amazon VPC untuk berintegrasi dengan berbagai AWS layanan yang diperlukan untuk menyiapkan lingkungan Apache Airflow. Pengelolaan titik akhir Anda sendiri memiliki dua kasus penggunaan utama:

1. Ini berarti Anda dapat membuat lingkungan Apache Airflow di Amazon VPC bersama saat Anda menggunakan [AWS Organizations](https://aws.amazon.com/organizations/) untuk mengelola banyak Akun AWS dan berbagi sumber daya.

1. Ini memungkinkan Anda menggunakan kebijakan akses yang lebih ketat dengan mempersempit izin Anda ke sumber daya tertentu yang menggunakan titik akhir Anda.

Jika Anda memilih untuk mengelola titik akhir VPC Anda sendiri, Anda bertanggung jawab untuk membuat titik akhir Anda sendiri untuk lingkungan RDS untuk database PostgreSQL dan untuk server web lingkungan.

Untuk informasi selengkapnya tentang cara Amazon MWAA menerapkan Apache Airflow di cloud, lihat diagram arsitektur [ Amazon MWAA. ](what-is-mwaa.md#architecture-mwaa)

**penting**  
Amazon MWAA tidak memvalidasi pemilihan tipe alamat IP (`AddressType`) untuk titik akhir yang dikelola pelanggan, jadi pastikan Anda menentukan dengan benar `AddressType` (opsi yang valid adalah IPv4 atau IPv6).



## Membuat lingkungan di Amazon VPC bersama
<a name="configure-shared-vpc"></a>

Jika digunakan [AWS Organizations](https://aws.amazon.com/organizations/) untuk mengelola beberapa sumber daya Akun AWS yang berbagi, Anda dapat menggunakan titik akhir VPC yang dikelola pelanggan dengan Amazon MWAA untuk berbagi sumber daya lingkungan dengan akun lain di organisasi Anda.

Saat Anda mengonfigurasi akses VPC bersama, akun yang memiliki VPC Amazon utama (*pemilik*) berbagi dua subnet pribadi yang diperlukan oleh Amazon MWAA dengan akun lain (*peserta*) milik organisasi yang sama. Akun peserta yang berbagi subnet tersebut dapat melihat, membuat, memodifikasi, dan menghapus lingkungan di Amazon VPC bersama.

Asumsikan Anda memiliki akun`Owner`,, yang bertindak sebagai `Root` akun di organisasi dan memiliki sumber daya Amazon VPC, dan akun peserta,`Participant`, anggota organisasi yang sama. Saat `Participant` membuat Amazon MWAA baru di Amazon VPC yang dibagikan dengannya`Owner`, Amazon MWAA pertama-tama akan membuat sumber daya VPC layanan, kemudian memasukkan status hingga [`PENDING`](https://docs.aws.amazon.com/mwaa/latest/API/API_Environment.html#mwaa-Type-Environment-Status) 72 jam.

Setelah status lingkungan berubah dari `CREATING` menjadi`PENDING`, prinsipal yang bertindak atas nama membuat `Owner` titik akhir yang diperlukan. Untuk melakukan ini, Amazon MWAA mencantumkan database dan titik akhir server web di konsol Amazon MWAA. Anda juga dapat memanggil tindakan [`GetEnvironment`]() API untuk mendapatkan titik akhir layanan.

**catatan**  
Jika Amazon VPC yang Anda gunakan untuk berbagi sumber daya adalah VPC Amazon pribadi, Anda masih harus menyelesaikan langkah-langkah yang dijelaskan di. [Mengelola akses ke titik akhir Amazon VPC khusus layanan di Amazon MWAA](vpc-vpe-access.md) Topik ini mencakup pengaturan set titik akhir Amazon VPC yang berbeda terkait dengan AWS layanan lain yang AWS terintegrasi dengan, seperti Amazon ECR, Amazon ECS, dan Amazon SQS. Layanan ini sangat penting dalam mengoperasikan, dan mengelola, lingkungan Apache Airflow Anda di cloud.

### Prasyarat
<a name="configure-shared-vpc-prerequisites"></a>

Sebelum membuat lingkungan Amazon MWAA di VPC bersama, Anda memerlukan sumber daya berikut:
+ An Akun AWS, `Owner` untuk digunakan sebagai akun yang memiliki Amazon VPC.
+ Unit [AWS Organizations](https://aws.amazon.com/organizations/) organisasi, `MyOrganization` dibuat sebagai * root*.
+ Yang kedua Akun AWS,`Participant`, di bawah `MyOrganization` untuk melayani akun peserta yang menciptakan lingkungan baru.

Selain itu, kami menyarankan Anda membiasakan diri dengan [ tanggung jawab dan izin untuk pemilik dan peserta ](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-sharing.html#vpc-share-limitations) saat berbagi sumber daya di Amazon VPC.

### Buat Amazon VPC
<a name="configure-shared-vpc-create-vpc"></a>

Pertama, buat Amazon VPC baru yang akan dibagikan pemilik dan akun peserta:

1. Masuk ke konsol menggunakan`Owner`, lalu, buka CloudFormation konsol. Gunakan template berikut untuk membuat tumpukan. Tumpukan ini menyediakan sejumlah sumber daya jaringan termasuk Amazon VPC, dan subnet yang akan dibagi kedua akun dalam skenario ini.

   ```
   AWSTemplateFormatVersion: "2010-09-09"
   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. Setelah sumber daya Amazon VPC baru telah disediakan, navigasikan ke AWS Resource Access Manager konsol, lalu pilih ** Buat berbagi sumber daya. **

1. Pilih subnet yang Anda buat pada langkah pertama dari daftar subnet yang tersedia yang dapat Anda bagikan. `Participant`

### Buat lingkungan
<a name="configure-shared-vpc-create-mwaa"></a>

Selesaikan langkah-langkah berikut untuk membuat lingkungan Amazon MWAA dengan titik akhir Amazon VPC yang dikelola pelanggan.

1. Masuk menggunakan`Participant`, dan buka konsol Amazon MWAA. Selesaikan ** Langkah satu: Tentukan detail ** untuk menentukan bucket Amazon S3, folder DAG, dan dependensi untuk lingkungan baru Anda. Untuk informasi selengkapnya, lihat [ Memulai](create-environment.md#create-environment-start-details).

1. Pada ** halaman ** Konfigurasi pengaturan lanjutan, di bawah ** Jaringan**, pilih subnet dari Amazon VPC bersama.

1. Di bawah manajemen ** Endpoint ** pilih ** CUST ** OMER dari daftar dropdown.

1. Pertahankan default untuk opsi yang tersisa di halaman, lalu pilih ** Buat lingkungan ** di Tinj ** auan dan buat ** halaman.

Lingkungan dimulai dalam suatu `CREATING` keadaan, kemudian berubah menjadi`PENDING`. Ketika lingkungan ada`PENDING`, tuliskan nama layanan titik akhir ** Database ** dan nama layanan endpoint ** server web ** (jika Anda mengatur server web pribadi) menggunakan konsol.

Saat Anda membuat lingkungan baru menggunakan konsol Amazon MWAA. Amazon MWAA membuat grup keamanan baru dengan aturan masuk dan keluar yang diperlukan. Tuliskan ID grup keamanan.

Pada bagian selanjutnya, `Owner` akan menggunakan titik akhir layanan dan ID grup keamanan untuk membuat titik akhir Amazon VPC baru di Amazon VPC bersama.

### Buat titik akhir Amazon VPC
<a name="configure-shared-vpc-create-endpoints"></a>

Selesaikan langkah-langkah berikut untuk membuat titik akhir Amazon VPC yang diperlukan untuk lingkungan Anda.

1. Masuk ke Konsol Manajemen AWS penggunaan`Owner`, yang terbuka [ https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. Pilih Grup ** keamanan ** dari panel navigasi kiri, lalu buat grup keamanan baru di Amazon VPC bersama menggunakan aturan masuk dan keluar berikut:    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/mwaa/latest/userguide/vpc-endpoint-management.html)
**Awas**  
`Owner`Akun harus menyiapkan grup keamanan di `Owner` akun untuk mengizinkan lalu lintas dari lingkungan baru ke Amazon VPC bersama. Anda dapat melakukan ini dengan membuat grup keamanan baru di`Owner`, atau mengedit yang sudah ada.

1. Pilih T ** itik Akhir**, lalu pilih ** Buat titik akhir. ** Di bawah ** Pengaturan titik akhir**, pilih ** Layanan titik akhir yang menggunakan NLB dan GW ** LB. Di ** bidang Nama ** layanan, masukkan nama layanan titik akhir database yang Anda catat dari konsol Amazon MWAA, lalu pilih ** Verifikasi layanan**. Pilih Amazon VPC bersama, pilih subnet yang Anda gunakan untuk lingkungan, dan pilih grup keamanan yang Anda buat pada langkah sebelumnya. Pilih **Buat titik akhir**. Jika lingkungan Anda menggunakan server web pribadi, ulangi langkah-langkah ini menggunakan nama layanan endpoint server web.

**catatan**  
Jika Anda membuat titik akhir VPC menggunakan infrastruktur sebagai kode, setel tipe titik akhir menjadi eksplisit. `Interface` Jenis titik akhir default di keduanya AWS CloudFormation dan Terraform adalah`Gateway`, yang tidak kompatibel dengan layanan titik akhir Amazon MWAA.

Jika berhasil, lingkungan akan berubah dari `PENDING` belakang ke`CREATING`, lalu akhirnya menjadi`AVAILABLE`. Jika sudah`AVAILABLE`, Anda dapat masuk ke konsol Apache Airflow.

### Pemecahan Masalah Amazon VPC Bersama
<a name="configure-shared-vpc-troubleshooting"></a>

Gunakan referensi berikut untuk menyelesaikan masalah yang Anda temui saat membuat lingkungan di Amazon VPC bersama.

**Lingkungan dalam `PENDING` status `CREATE_FAILED` setelah**  
+ Verifikasi `Owner` bahwa berbagi subnet dengan `Participant` menggunakan [AWS Resource Access Manager](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html).
+ Verifikasi bahwa titik akhir Amazon VPC untuk database dan server web dibuat di subnet yang sama terkait dengan lingkungan.
+ Pastikan grup keamanan yang digunakan dengan titik akhir Anda mengizinkan lalu lintas dari grup keamanan yang digunakan untuk lingkungan. Akun `Owner` membuat aturan yang mereferensikan grup keamanan `Participant` sebagai`{{123456789012}}/{{security-group-id}}`:.    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/id_id/mwaa/latest/userguide/vpc-endpoint-management.html)

  Untuk informasi selengkapnya, lihat Tang [ gung jawab dan izin untuk pemilik dan peserta ](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-sharing.html#vpc-share-limitations)

**Lingkungan terjebak dalam `PENDING` status**  
Verifikasi setiap status titik akhir VPC untuk memastikannya`Available`. Jika Anda mengkonfigurasi lingkungan dengan server web pribadi, Anda juga harus membuat titik akhir untuk server web. Jika lingkungan macet`PENDING`, ini mungkin menunjukkan bahwa titik akhir server web pribadi hilang.

**Kes `The Vpc Endpoint Service '{{vpce-service-name}}' does not exist` alahan yang diterima**  
Jika Anda merujuk pada kesalahan berikut, verifikasi bahwa akun membuat titik akhir di `Owner` akun yang memiliki VPC bersama:  

```
ClientError: An error occurred (InvalidServiceName) when calling the CreateVpcEndpoint operation: 
							
The Vpc Endpoint Service '{{vpce-service-name}}' does not exist
```