

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

# Layanan virtual
<a name="virtual_services"></a>

**penting**  
Pemberitahuan akhir dukungan: Pada 30 September 2026, AWS akan menghentikan dukungan untuk. AWS App Mesh Setelah 30 September 2026, Anda tidak akan 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). 

Layanan virtual adalah abstraksi dari layanan sebenarnya yang disediakan oleh simpul virtual secara langsung atau tidak langsung berdasarkan alat router virtual. Layanan dependen memanggil layanan virtual Anda berdasarkan `virtualServiceName`-nya, dan permintaan tersebut dirutekan ke simpul virtual atau router virtual yang ditentukan sebagai penyedia layanan virtual.

## Membuat layanan virtual
<a name="create-virtual-service"></a>

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

**Untuk membuat layanan virtual 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 layanan virtual. Semua jerat yang Anda miliki dan yang telah [dibagikan](sharing.md) dengan Anda terdaftar.

1. Pilih **Layanan virtual** di navigasi kiri.

1. Pilih **Buat layanan virtual**.

1. Untuk **nama layanan Virtual**, pilih nama untuk layanan virtual Anda. Anda dapat memilih nama apa saja, tetapi nama penemuan layanan dari layanan nyata yang Anda targetkan, seperti`my-service.default.svc.cluster.local`, disarankan untuk mempermudah menghubungkan layanan virtual Anda dengan layanan nyata. Dengan cara ini Anda tidak perlu mengubah kode Anda untuk mereferensikan nama yang berbeda dari referensi kode Anda saat ini. Nama yang Anda tentukan harus diselesaikan ke alamat IP non-loopback karena wadah aplikasi harus berhasil menyelesaikan nama sebelum permintaan dikirim ke proxy Envoy. Anda dapat menggunakan alamat IP non-loopback karena aplikasi atau wadah proxy tidak berkomunikasi dengan alamat IP ini. Proxy berkomunikasi dengan layanan virtual lainnya melalui nama yang telah Anda konfigurasikan untuk mereka di App Mesh, bukan melalui alamat IP yang diselesaikan nama.

1. Untuk **Provider**, pilih jenis penyedia untuk layanan virtual Anda:
   + Jika Anda ingin layanan virtual menyebarkan lalu lintas di beberapa node virtual, pilih **Router virtual** dan kemudian pilih router virtual yang akan digunakan dari menu drop-down.
   + Jika Anda ingin layanan virtual mencapai node virtual secara langsung tanpa router virtual, pilih **Virtual node** dan kemudian pilih node virtual yang akan digunakan dari menu drop-down.
**catatan**  
App Mesh dapat secara otomatis membuat kebijakan coba ulang rute Utusan default untuk setiap penyedia node virtual yang Anda tentukan pada atau setelah 29 Juli 2020, meskipun Anda tidak dapat menentukan kebijakan tersebut melalui App Mesh API. Untuk informasi selengkapnya, lihat [Kebijakan coba lagi rute default](envoy-defaults.md#default-retry-policy).
   + Jika Anda tidak ingin layanan virtual merutekan lalu lintas saat ini (misalnya, jika node virtual atau router virtual Anda belum ada), pilih **None**. Anda dapat memperbarui penyedia untuk layanan virtual ini nanti.

1. Pilih **Buat layanan virtual** untuk menyelesaikan.

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

**Untuk membuat layanan virtual menggunakan AWS CLI.**

Buat layanan virtual dengan penyedia node virtual menggunakan perintah berikut dan file JSON masukan (ganti *red* nilainya dengan milik Anda sendiri):

1. 

   ```
   aws appmesh create-virtual-service \ 
   --cli-input-json file://create-virtual-service-virtual-node.json
   ```

1. Isi **contoh** create-virtual-service-virtual -node.json:

   ```
   {
       "meshName": "meshName",
       "spec": {
           "provider": {
               "virtualNode": {
                   "virtualNodeName": "nodeName"
               }
           }
       },
       "virtualServiceName": "serviceA.svc.cluster.local"
   }
   ```

1. Contoh output:

   ```
   {
       "virtualService": {
           "meshName": "meshName",
           "metadata": {
               "arn": "arn:aws:appmesh:us-west-2:210987654321:mesh/meshName/virtualService/serviceA.svc.cluster.local",
               "createdAt": "2022-04-06T09:45:35.890000-05:00",
               "lastUpdatedAt": "2022-04-06T09:45:35.890000-05:00",
               "meshOwner": "123456789012",
               "resourceOwner": "210987654321",
               "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
               "version": 1
           },
           "spec": {
               "provider": {
                   "virtualNode": {
                       "virtualNodeName": "nodeName"
                   }
               }
           },
           "status": {
               "status": "ACTIVE"
           },
           "virtualServiceName": "serviceA.svc.cluster.local"
       }
   }
   ```

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

------

## Menghapus layanan virtual
<a name="delete-virtual-service"></a>

**catatan**  
Anda tidak dapat menghapus layanan virtual yang direferensikan oleh rute gateway. Anda harus menghapus rute gateway terlebih dahulu. 

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

**Untuk menghapus layanan virtual 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 layanan virtual. Semua jerat yang Anda miliki dan yang telah [dibagikan](sharing.md) dengan Anda terdaftar.

1. Pilih **Layanan virtual** di navigasi kiri.

1. Pilih layanan virtual yang ingin Anda hapus dan klik **Hapus** di sudut kanan atas. Anda hanya dapat menghapus gateway virtual di mana akun Anda terdaftar sebagai **pemilik Sumber Daya**.

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

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

**Untuk menghapus layanan virtual menggunakan AWS CLI**

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

   ```
   aws appmesh delete-virtual-service \
        --mesh-name meshName \
        --virtual-service-name serviceA.svc.cluster.local
   ```

1. Contoh output:

   ```
   {
       "virtualService": {
           "meshName": "meshName",
           "metadata": {
               "arn": "arn:aws:appmesh:us-west-2:210987654321:mesh/meshName/virtualService/serviceA.svc.cluster.local",
               "createdAt": "2022-04-06T09:45:35.890000-05:00",
               "lastUpdatedAt": "2022-04-07T10:39:42.772000-05:00",
               "meshOwner": "123456789012",
               "resourceOwner": "210987654321",
               "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE",
               "version": 2
           },
           "spec": {
               "provider": {
                   "virtualNode": {
                       "virtualNodeName": "nodeName"
                   }
               }
           },
           "status": {
               "status": "DELETED"
           },
           "virtualServiceName": "serviceA.svc.cluster.local"
       }
   }
   ```

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

------