

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

# Rute gerbang
<a name="gateway-routes"></a>

**penting**  
Pemberitahuan akhir dukungan: Pada 30 September 2026, AWS akan menghentikan dukungan untuk. AWS App Mesh Setelah 30 September 2026, Anda tidak lagi dapat mengakses AWS App Mesh konsol atau AWS App Mesh sumber daya. Untuk informasi lebih lanjut, kunjungi posting blog ini [Migrasi dari AWS App Mesh ke Amazon ECS Service Connect](https://aws.amazon.com/blogs/containers/migrating-from-aws-app-mesh-to-amazon-ecs-service-connect). 

Rute gateway dilampirkan ke gateway virtual dan merutekan lalu lintas ke layanan virtual yang ada. Jika rute cocok dengan permintaan, ia dapat mendistribusikan lalu lintas ke layanan virtual target. Topik ini membantu Anda bekerja dengan rute gateway di mesh layanan.

## Membuat rute gateway
<a name="create-gateway-route"></a>

------
#### [ Konsol Manajemen AWS ]

**Untuk membuat rute gateway menggunakan Konsol Manajemen AWS**

1. Buka konsol App Mesh di [https://console.aws.amazon.com/appmesh/](https://console.aws.amazon.com/appmesh/). 

1. Pilih mesh di mana Anda ingin membuat rute gateway. Semua jerat yang Anda miliki dan yang telah [dibagikan](sharing.md) dengan Anda terdaftar.

1. Pilih **gateway Virtual** di navigasi kiri.

1. Pilih gateway virtual yang ingin Anda kaitkan dengan rute gateway baru. Jika tidak ada yang terdaftar, maka Anda perlu [membuat gateway virtual](virtual_gateways.md#create-virtual-gateway) terlebih dahulu. Anda hanya dapat membuat rute gateway untuk gateway virtual yang akun Anda terdaftar sebagai **pemilik Sumber Daya**.

1. Dalam tabel **rute Gateway**, pilih **Buat rute gateway**.

1. Untuk **nama rute Gateway**, tentukan nama yang akan digunakan untuk rute gateway Anda.

1. **Untuk **jenis rute Gateway** pilih **http**, **http2**, atau grpc.**

1. Pilih **nama layanan Virtual** yang ada. Jika tidak ada yang terdaftar, maka Anda perlu membuat [layanan virtual](virtual_services.md#create-virtual-service) terlebih dahulu.

1. Pilih port yang sesuai dengan target untuk **port penyedia layanan Virtual**. Port penyedia layanan virtual **diperlukan** ketika penyedia (router atau node) dari layanan virtual yang dipilih memiliki banyak pendengar.

1. (Opsional) Untuk **Prioritas**, tentukan prioritas untuk rute gateway ini.

1. Untuk konfigurasi **Match**, tentukan:
   + 

     Jika **http/http2** adalah jenis yang dipilih:
     + **(Opsional) **Metode** - Menentukan header metode yang akan dicocokkan dalam permintaan http/ **http2** masuk.**
     + (Opsional) **Pencocokan port** - Cocokkan port untuk lalu lintas masuk. Pencocokan port **diperlukan** jika gateway virtual ini memiliki banyak pendengar.
     + (Opsional) **Nama host Exact/Suffix** - Menentukan nama host yang harus dicocokkan pada permintaan masuk untuk rute ke layanan virtual target.
     + (Opsional) **Prefix/Exact/Regexjalur** - Metode pencocokan jalur URL.
       + **Pencocokan awalan** - Permintaan yang cocok oleh rute gateway ditulis ulang ke nama layanan virtual target dan awalan yang cocok ditulis ulang, secara default. `/` Bergantung pada bagaimana Anda mengkonfigurasi layanan virtual Anda, itu bisa menggunakan router virtual untuk merutekan permintaan ke node virtual yang berbeda, berdasarkan awalan atau header tertentu. 
**penting**  
Anda tidak dapat menentukan salah satu `/aws-appmesh*` atau `/aws-app-mesh*` untuk **kecocokan Awalan**. Awalan ini dicadangkan untuk penggunaan internal App Mesh di masa mendatang.
Jika beberapa rute gateway ditentukan, maka permintaan dicocokkan dengan rute dengan awalan terpanjang. Misalnya, jika ada dua rute gateway, dengan satu memiliki awalan `/chapter` dan satu memiliki awalan`/`, maka permintaan untuk `www.example.com/chapter/` akan dicocokkan dengan rute gateway dengan awalan. `/chapter`
**catatan**  
**Jika Anda mengaktifkan pencocokan berbasis **Path/ Prefix**, App Mesh mengaktifkan normalisasi jalur ([normalize\$1path dan [merge\$1slashes](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto#envoy-v3-api-field-extensions-filters-network-http-connection-manager-v3-httpconnectionmanager-merge-slashes)](https://www.envoyproxy.io/docs/envoy/latest/api-v3/extensions/filters/network/http_connection_manager/v3/http_connection_manager.proto#envoy-v3-api-field-extensions-filters-network-http-connection-manager-v3-httpconnectionmanager-normalize-path)) untuk meminimalkan kemungkinan kerentanan kebingungan jalur.**  
Kerentanan kebingungan jalur terjadi ketika pihak yang berpartisipasi dalam permintaan menggunakan representasi jalur yang berbeda.
       + **Pencocokan tepat** - Parameter yang tepat menonaktifkan pencocokan sebagian untuk rute dan memastikan bahwa itu hanya mengembalikan rute jika jalurnya **sama** dengan URL saat ini.
       + **Pencocokan Regex** - Digunakan untuk menggambarkan pola di mana beberapa URLs mungkin benar-benar mengidentifikasi satu halaman di situs web.
     + (Opsional) **Parameter kueri** - Bidang ini memungkinkan Anda untuk mencocokkan pada parameter kueri.
     + **(Opsional) **Header** - Menentukan header untuk **http** dan http2.** Itu harus sesuai dengan permintaan yang masuk untuk merutekan ke layanan virtual target..
   + 

     Jika **grpc** adalah tipe yang dipilih:
     + **Jenis pencocokan nama host** dan (opsional) **Pencocokan Exact/Suffix** - Menentukan nama host yang harus dicocokkan pada permintaan masuk untuk merutekan ke layanan virtual target. 
     + **nama layanan grpc** - Layanan **grpc** bertindak sebagai API untuk aplikasi Anda dan didefinisikan dengan. ProtoBuf
**penting**  
Anda tidak dapat menentukan `/aws.app-mesh*` atau `aws.appmesh` untuk **nama Layanan**. Nama layanan ini dicadangkan untuk penggunaan internal App Mesh di masa mendatang.
     + **(Opsional) **Metadata** - Menentukan metadata untuk grpc.** Ini harus sesuai dengan permintaan yang masuk untuk merutekan ke layanan virtual target.

1. (Opsional) Untuk konfigurasi **Tulis Ulang**:
   + 

     Jika **http/http2** adalah jenis yang dipilih:
     + 

       Jika **Awalan** adalah jenis kecocokan yang dipilih:
       + **Ganti penulisan ulang otomatis nama host** - Secara default nama host ditulis ulang ke nama layanan virtual target.
       + **Ganti penulisan ulang otomatis awalan - Saat diaktifkan, Prefix** **rewrite menentukan nilai awalan yang ditulis ulang**.
     + 

       Jika **Exact Path** adalah jenis kecocokan yang dipilih:
       + **Ganti penulisan ulang otomatis nama host** - secara default nama host ditulis ulang ke nama layanan virtual target.
       + **Path rewrite** - Menentukan nilai jalur ditulis ulang. Tidak ada jalur default.
     + 

       Jika **Regex Path** adalah jenis kecocokan yang dipilih:
       + **Ganti penulisan ulang otomatis nama host** - secara default nama host ditulis ulang ke nama layanan virtual target.
       + **Path rewrite** - Menentukan nilai jalur ditulis ulang. Tidak ada jalur default.
   + 

     Jika **grpc** adalah tipe yang dipilih:
     + **Ganti penulisan ulang otomatis nama host** - Secara default nama host ditulis ulang ke nama layanan virtual target.

1. Pilih **Buat rute gateway** untuk menyelesaikan.

------
#### [ AWS CLI ]

**Untuk membuat rute gateway menggunakan file AWS CLI.**

Buat rute gateway menggunakan perintah berikut dan masukan JSON (ganti *red* nilainya dengan milik Anda sendiri):

1. 

   ```
   aws appmesh create-virtual-gateway \ 
   --mesh-name meshName \ 
   --virtual-gateway-name virtualGatewayName \
   --gateway-route-name gatewayRouteName \ 
   --cli-input-json file://create-gateway-route.json
   ```

1. Isi **contoh** create-gateway-route .json:

   ```
   {
       "spec": {
           "httpRoute" : {
               "match" : {
                   "prefix" : "/"
               },
               "action" : {
                   "target" : {
                       "virtualService": {
                           "virtualServiceName": "serviceA.svc.cluster.local"
                       }
                   }
               }
           }
       }
   }
   ```

1. Contoh output:

   ```
   {
       "gatewayRoute": {
           "gatewayRouteName": "gatewayRouteName",
           "meshName": "meshName",
           "metadata": {
               "arn": "arn:aws:appmesh:us-west-2:210987654321:mesh/meshName/virtualGateway/virtualGatewayName/gatewayRoute/gatewayRouteName",
               "createdAt": "2022-04-06T11:05:32.100000-05:00",
               "lastUpdatedAt": "2022-04-06T11:05:32.100000-05:00",
               "meshOwner": "123456789012",
               "resourceOwner": "210987654321",
               "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
               "version": 1
           },
           "spec": {
               "httpRoute": {
                   "action": {
                       "target": {
                           "virtualService": {
                               "virtualServiceName": "serviceA.svc.cluster.local"
                           }
                       }
                   },
                   "match": {
                       "prefix": "/"
                   }
               }
           },
           "status": {
               "status": "ACTIVE"
           },
           "virtualGatewayName": "gatewayName"
       }
   }
   ```

Untuk informasi selengkapnya tentang membuat rute gateway dengan App Mesh AWS CLI for, lihat [create-gateway-route](https://docs.aws.amazon.com/cli/latest/reference/appmesh/create-gateway-route.html)perintah di AWS CLI referensi.

------

## Menghapus rute gateway
<a name="delete-gateway-route"></a>

------
#### [ Konsol Manajemen AWS ]

**Untuk menghapus rute gateway menggunakan Konsol Manajemen AWS**

1. Buka konsol App Mesh di [https://console.aws.amazon.com/appmesh/](https://console.aws.amazon.com/appmesh/). 

1. Pilih mesh dari mana Anda ingin menghapus rute gateway. Semua jerat yang Anda miliki dan yang telah [dibagikan](sharing.md) dengan Anda terdaftar.

1. Pilih **gateway Virtual** di navigasi kiri.

1. Pilih gateway virtual dari mana Anda ingin menghapus rute gateway.

1. Dalam tabel **rute Gateway**, pilih rute gateway yang ingin Anda hapus dan pilih **Hapus**. Anda hanya dapat menghapus rute gateway jika akun Anda terdaftar sebagai **pemilik Sumber Daya**.

1. Di kotak konfirmasi, ketik **delete** dan kemudian klik **Hapus**.

------
#### [ AWS CLI ]

**Untuk menghapus rute gateway menggunakan AWS CLI**

1. Gunakan perintah berikut untuk menghapus rute gateway Anda (ganti *red* nilainya dengan milik Anda sendiri):

   ```
   aws appmesh delete-gateway-route \
        --mesh-name meshName \
        --virtual-gateway-name virtualGatewayName \
        --gateway-route-name gatewayRouteName
   ```

1. Contoh output:

   ```
   {
       "gatewayRoute": {
           "gatewayRouteName": "gatewayRouteName",
           "meshName": "meshName",
           "metadata": {
               "arn": "arn:aws:appmesh:us-west-2:210987654321:mesh/meshName/virtualGateway/virtualGatewayName/gatewayRoute/gatewayRouteName",
               "createdAt": "2022-04-06T11:05:32.100000-05:00",
               "lastUpdatedAt": "2022-04-07T10:36:33.191000-05:00",
               "meshOwner": "123456789012",
               "resourceOwner": "210987654321",
               "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
               "version": 2
           },
           "spec": {
               "httpRoute": {
                   "action": {
                       "target": {
                           "virtualService": {
                               "virtualServiceName": "serviceA.svc.cluster.local"
                           }
                       }
                   },
                   "match": {
                       "prefix": "/"
                   }
               }
           },
           "status": {
               "status": "DELETED"
           },
           "virtualGatewayName": "virtualGatewayName"
       }
   }
   ```

Untuk informasi selengkapnya tentang menghapus rute gateway dengan App Mesh AWS CLI for, lihat [delete-gateway-route](https://docs.aws.amazon.com/cli/latest/reference/appmesh/delete-gateway-route.html)perintah di AWS CLI referensi.

------