Apa itu AWS App Mesh? - AWS App Mesh

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

Apa itu AWS App Mesh?

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.

AWS App Mesh adalah mesh layanan yang memudahkan untuk memantau dan mengontrol layanan. Service mesh adalah lapisan infrastruktur yang didedikasikan untuk menangani service-to-service komunikasi, biasanya melalui array proxy jaringan ringan yang digunakan bersama kode aplikasi. App Mesh menstandarisasi cara layanan Anda berkomunikasi, memberi Anda end-to-end visibilitas dan membantu memastikan ketersediaan tinggi untuk aplikasi Anda. App Mesh memberikan visibilitas yang konsisten dan kontrol lalu lintas jaringan untuk setiap layanan dalam aplikasi.

Menambahkan App Mesh ke aplikasi contoh

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.

Pertimbangkan contoh aplikasi sederhana berikut yang tidak menggunakan App Mesh. Kedua layanan tersebut dapat dijalankan AWS Fargate, Amazon Elastic Container Service (AmazonECS), Amazon Elastic Kubernetes Service (Amazon), Kubernetes di EKS Amazon Elastic Compute Cloud (Amazon) instans, atau di instans EC2 Amazon dengan Docker. EC2

Diagram showing client service connecting to servicea.apps.local, which connects to serviceb.apps.local.

Dalam ilustrasi ini, keduanya serviceA dan dapat serviceB ditemukan melalui namespace. apps.local Katakanlah, misalnya, Anda memutuskan untuk menggunakan versi baru serviceb.apps.local bernamaservicebv2.apps.local. Selanjutnya, Anda ingin mengarahkan persentase lalu lintas dari servicea.apps.local ke serviceb.apps.local dan persentase keservicebv2.apps.local. Ketika Anda yakin servicebv2 itu berkinerja baik, Anda ingin mengirim 100 persen lalu lintas ke sana.

App Mesh dapat membantu Anda melakukan ini tanpa mengubah kode aplikasi atau nama layanan terdaftar. Jika Anda menggunakan App Mesh dengan aplikasi contoh ini, maka mesh Anda mungkin terlihat seperti ilustrasi berikut.

Diagram showing App Mesh architecture with virtual services, nodes, and router in a mesh network.

Dalam konfigurasi ini, layanan tidak lagi berkomunikasi satu sama lain secara langsung. Sebaliknya, mereka berkomunikasi satu sama lain melalui proxy. Proxy yang digunakan dengan servicea.apps.local layanan membaca konfigurasi App Mesh dan mengirimkan lalu lintas ke serviceb.apps.local atau servicebv2.apps.local berdasarkan konfigurasi.

Komponen App Mesh

App Mesh terdiri dari komponen-komponen berikut, diilustrasikan dalam contoh sebelumnya:

  • Service mesh — Service mesh adalah batas logis untuk lalu lintas jaringan antara layanan yang berada di dalamnya. Dalam contoh, mesh diberi namaapps, dan berisi semua sumber daya lain untuk mesh. Untuk informasi selengkapnya, lihat Jala Layanan.

  • Layanan virtual — Layanan virtual adalah abstraksi dari layanan aktual yang disediakan oleh node virtual, secara langsung atau tidak langsung, melalui router virtual. Dalam ilustrasi, dua layanan virtual mewakili dua layanan aktual. Nama-nama layanan virtual adalah nama yang dapat ditemukan dari layanan yang sebenarnya. Ketika layanan virtual dan layanan aktual memiliki nama yang sama, beberapa layanan dapat berkomunikasi satu sama lain menggunakan nama yang sama yang mereka gunakan sebelum App Mesh diimplementasikan. Untuk informasi selengkapnya, lihat Layanan virtual.

  • Node virtual — Node virtual bertindak sebagai pointer logis ke layanan yang dapat ditemukan, seperti layanan Amazon ECS atau Kubernetes. Untuk setiap layanan virtual, Anda akan memiliki setidaknya satu node virtual. Dalam ilustrasi, layanan servicea.apps.local virtual mendapatkan informasi konfigurasi untuk node virtual bernamaserviceA. Node serviceA virtual dikonfigurasi dengan servicea.apps.local nama untuk penemuan layanan. Layanan serviceb.apps.local virtual dikonfigurasi untuk mengarahkan lalu lintas ke node serviceBv2 virtual serviceB dan virtual melalui router virtual bernamaserviceB. Untuk informasi selengkapnya, lihat Node virtual.

  • Router dan rute virtual — Router virtual menangani lalu lintas untuk satu atau lebih layanan virtual dalam mesh Anda. Rute dikaitkan dengan router virtual. Rute ini digunakan untuk mencocokkan permintaan untuk router virtual dan untuk mendistribusikan lalu lintas ke node virtual yang terkait. Dalam ilustrasi sebelumnya, router serviceB virtual memiliki rute yang mengarahkan persentase lalu lintas ke node serviceB virtual, dan persentase lalu lintas ke node serviceBv2 virtual. Anda dapat mengatur persentase lalu lintas yang diarahkan ke node virtual tertentu dan mengubahnya dari waktu ke waktu. Anda dapat merutekan lalu lintas berdasarkan kriteria seperti HTTP header, URL jalur, atau nama RPC layanan dan metode g. Anda dapat mengonfigurasi kebijakan coba lagi untuk mencoba kembali koneksi jika ada kesalahan dalam respons. Misalnya, dalam ilustrasi, kebijakan coba lagi untuk rute dapat menentukan bahwa koneksi ke serviceb.apps.local dicoba ulang lima kali, dengan sepuluh detik antara upaya coba lagi, jika serviceb.apps.local mengembalikan jenis kesalahan tertentu. Untuk informasi selengkapnya, silakan lihat Router virtual dan Rute.

  • Proxy — Anda mengonfigurasi layanan Anda untuk menggunakan proxy setelah Anda membuat mesh dan sumber dayanya. Proxy membaca konfigurasi App Mesh dan mengarahkan lalu lintas dengan tepat. Dalam ilustrasi, semua komunikasi dari servicea.apps.local hingga serviceb.apps.local melewati proxy yang digunakan dengan setiap layanan. Layanan berkomunikasi satu sama lain menggunakan nama penemuan layanan yang sama yang mereka gunakan sebelum memperkenalkan App Mesh. Karena proxy membaca konfigurasi App Mesh, Anda dapat mengontrol cara kedua layanan berkomunikasi satu sama lain. Bila ingin mengubah konfigurasi App Mesh, Anda tidak perlu mengubah atau menerapkan ulang layanan itu sendiri atau proxy. Untuk informasi selengkapnya, lihat Gambar utusan.

Cara memulai

Untuk menggunakan App Mesh, Anda harus memiliki layanan yang sudah berjalan di AWS Fargate, Amazon, Amazon ECSEKS, Kubernetes di Amazon, EC2 atau Amazon EC2 dengan Docker.

Untuk memulai App Mesh, lihat salah satu panduan berikut:

Mengakses App Mesh

Anda dapat bekerja dengan App Mesh dengan cara berikut:

AWS Management Console

Konsol adalah antarmuka berbasis browser yang dapat Anda gunakan untuk mengelola sumber daya App Mesh. Anda dapat membuka konsol App Mesh di https://console.aws.amazon.com/appmesh/.

AWS CLI

Menyediakan perintah untuk serangkaian AWS produk yang luas, dan didukung di Windows, Mac, dan Linux. Untuk mulai, lihat Panduan Pengguna AWS Command Line Interface. Untuk informasi selengkapnya tentang perintah untuk App Mesh, lihat appmesh di Referensi AWS CLI Perintah.

AWS Tools for Windows PowerShell

Memberikan perintah untuk serangkaian AWS produk yang luas bagi mereka yang membuat skrip di PowerShell lingkungan. Untuk memulai, lihat Panduan Pengguna AWS Tools for Windows PowerShell. Untuk informasi selengkapnya tentang cmdlet untuk App Mesh, lihat App Mesh di AWS Alat untuk Referensi PowerShell Cmdlet.

AWS CloudFormation

Memungkinkan Anda membuat template yang menjelaskan semua sumber AWS daya yang Anda inginkan. Menggunakan template, AWS CloudFormation ketentuan dan mengkonfigurasi sumber daya untuk Anda. Untuk mulai, lihat Panduan Pengguna AWS CloudFormation. Untuk informasi selengkapnya tentang jenis resource App Mesh, lihat Referensi Jenis Sumber Daya App Mesh di Referensi AWS CloudFormation Template.

AWS SDKs

Kami juga menyediakan SDKs yang memungkinkan Anda mengakses App Mesh dari berbagai bahasa pemrograman. SDKsSecara otomatis mengurus tugas-tugas seperti:

  • Secara kriptografi menandatangani permintaan layanan Anda

  • Mencoba kembali permintaan

  • Menangani respons kesalahan

Untuk informasi selengkapnya tentang tersediaSDKs, lihat Alat untuk Amazon Web Services.

Untuk informasi selengkapnya tentang App MeshAPIs, lihat AWS App Mesh APIReferensi.