全部产品
Search
文档中心

API Gateway:Nacos

更新时间:Jul 06, 2025

Nacos dapat diintegrasikan dengan API Gateway untuk menyediakan fitur penemuan layanan. Integrasi ini memungkinkan API Gateway bekerja secara mulus dengan model layanan mikro, mendekopling sistem bisnis, dan membuat program aplikasi lebih mudah dikelola. API Gateway berfungsi sebagai titik masuk untuk permintaan yang diarahkan ke sistem layanan mikro, menerima, merutekan, dan meneruskan permintaan klien untuk memastikan operasi yang aman dan stabil dari aplikasi layanan mikro. Topik ini menjelaskan cara API Gateway mengakses layanan mikro backend setelah integrasi dengan Nacos serta cara membuat, mempublikasikan, dan memanggil API yang menggunakan Penemuan Layanan sebagai tipe layanan backend.

Ikhtisar

Topik ini mencakup bagian-bagian berikut:

  • Prinsip kerja

  • Membuat instance integrasi virtual private cloud (VPC)

  • Mendeploy Nacos dan mendaftarkan aplikasi layanan mikro

  • Membuat grup API

  • Membuat layanan backend

  • Membuat API

  • Membuat aplikasi dan memberikan otorisasi untuk memanggil API

  • Debug API

Prinsip Kerja

Sebagai pusat registrasi layanan, Nacos menerima permintaan pendaftaran dari instans layanan mikro dan menyimpan informasi instans tersebut dalam tabel registrasi. API Gateway menggunakan fitur penemuan layanan Nacos dengan berlangganan ke Nacos. API Gateway mendapatkan URL dan port dari instans layanan mikro melalui Nacos, lalu mendistribusikan permintaan ke instans berdasarkan URL dan port untuk mengimplementasikan perutean dinamis dan load balancing.

image.png

Gambar berikut menunjukkan proses kerja:

image.png

  1. Penyedia layanan mendaftarkan aplikasi layanan mikro dengan server Nacos.

  2. API Gateway mengirim permintaan ke Nacos untuk mendapatkan informasi tentang instans layanan mikro, termasuk alamat IP, port, dan bobotnya. API Gateway menyimpan informasi yang diterima untuk mengurangi komunikasi antar jaringan dan meningkatkan kecepatan respons.

  3. Setelah menerima permintaan klien, API Gateway mengambil informasi URL dan port dari instans layanan mikro yang tersedia dari cache. Peluang pemilihan instans berkaitan dengan bobotnya. Kemudian, API Gateway mengirim permintaan HTTP ke instans layanan mikro yang ditentukan berdasarkan informasi URL dan port, lalu mengembalikan respons yang diterima ke klien.

  4. Jika aplikasi layanan mikro backend berubah, Nacos mendorong informasi yang diperbarui ke API Gateway. API Gateway memperbarui cachenya sesuai untuk memastikan konsistensi informasi dengan Nacos. Perubahan informasi mungkin disebabkan oleh instans layanan mikro yang offline atau instans baru yang ditambahkan.

  5. API Gateway merutekan dan meneruskan permintaan baru yang dikirim dari klien berdasarkan informasi yang diperbarui.

Penting

API Gateway berinteraksi dengan Nacos dan instans layanan mikro melalui virtual private clouds (VPC). Oleh karena itu, saat Anda membuat API, Anda harus menentukan titik akhir internal sebagai titik akhir layanan Nacos. Jika tidak, API Gateway akan mengembalikan pesan kesalahan yang menunjukkan bahwa alamat Nacos tidak valid. Demikian pula, titik akhir aplikasi layanan mikro yang didaftarkan dengan Nacos juga harus berupa titik akhir internal. Jika titik akhir publik dikembalikan sebagai titik akhir aplikasi layanan mikro backend selama pemanggilan API, API Gateway gagal memproses permintaan dan mengembalikan kode kesalahan I504IA. Jika API Gateway gagal mendapatkan titik akhir apa pun dari aplikasi layanan mikro backend, kode kesalahan I504BA dikembalikan.

Langkah 1: Buat instance integrasi VPC

API Gateway berkomunikasi dengan Nacos dan aplikasi layanan mikro yang didaftarkan dengan Nacos hanya melalui VPC. Namun, instance konvensional tidak mendukung komunikasi berbasis VPC kustom. Oleh karena itu, API Gateway menyediakan instance integrasi VPC untuk memungkinkan komunikasi langsung dengan VPC pengguna melalui jaringan internal. Untuk informasi lebih lanjut tentang cara membuat instance integrasi VPC, lihat topik terkait. Saat membuat instance integrasi VPC, Anda harus mengaitkan VPC Anda dengan instance tersebut. Di halaman pembuatan instance, tentukan ID VPC, zona, vSwitch, dan grup keamanan Anda. Setelah konfigurasi selesai, API Gateway dapat mengakses sumber daya cloud menggunakan vSwitch yang ditentukan.

image.png

Langkah 2: Deploy Nacos dan daftarkan aplikasi layanan mikro

1. Mendeploy Nacos

Anda harus menerapkan Nacos di vSwitch yang ditentukan di Langkah 3. Anda dapat menerapkan layanan Nacos asli pada Instance ECS (Elastic Compute Service) yang dibuat di vSwitch yang ditentukan di Langkah 3. Dalam hal ini, Anda harus menetapkan titik akhir layanan Nacos ke format berikut: Alamat IP internal dari Instance ECS:Port yang digunakan untuk Nacos. Saat membuat Instance ECS, Anda harus menetapkan Jaringan ke VPC dan memilih VPC, zona, dan vSwitch yang sama seperti yang ada di Langkah 3.

Catatan

Untuk informasi lebih lanjut tentang cara membuat layanan Nacos asli, lihat Panduan Cepat untuk Nacos. Untuk informasi lebih lanjut tentang cara membuat Instance ECS, lihat Petunjuk Pembelian.

Anda juga dapat menggunakan Alibaba Cloud Microservices Engine (MSE) untuk membuat layanan Nacos. Saat membuat layanan Nacos, pilih VPC sebagai tipe jaringan dan pilih VPC, zona, dan vSwitch yang sama seperti yang ada di Langkah 3. Setelah layanan Nacos dibuat, Anda dapat melihat titik akhirnya di daftar instans konsol MSE.

Catatan

Untuk informasi lebih lanjut, lihat Buat mesin Nacos.

2. Mendaftarkan aplikasi layanan mikro

Aplikasi layanan mikro Anda harus diterapkan di vSwitch yang ditentukan di Langkah 3. Jika tidak, aplikasi layanan mikro Anda tidak dapat didaftarkan dengan Nacos dan diakses oleh API Gateway. Anda dapat memilih untuk menerapkan aplikasi layanan mikro pada Instance ECS. Instance ECS yang digunakan untuk menerapkan aplikasi layanan mikro harus berada di vSwitch yang ditentukan di langkah 3.

Penting

Aplikasi layanan mikro yang didaftarkan dengan Nacos harus mendukung panggilan HTTP.

Langkah 3: Buat grup API

API dikelola dalam grup API. Anda harus membuat grup API sebelum membuat API. Prosedur: Masuk ke konsol API Gateway. Di panel navigasi kiri, pilih Manage APIs > API Groups. Di sudut kanan atas halaman Grup API, klik Create Group. Di kotak dialog yang muncul, konfigurasikan informasi grup. Pilih instance integrasi VPC yang Anda buat di Langkah 3. Anda dapat menentukan nilai kustom untuk parameter Nama Grup dan Jalur Dasar. Setelah grup dibuat, Anda dapat melihat grup di halaman API Groups. Anda dapat mengklik nama grup untuk masuk ke halaman Group Details. Di halaman Detail Grup, Anda dapat melakukan operasi seperti mengikat nama domain, memodifikasi informasi dasar, dan mengubah tipe instans.

API Gateway secara otomatis menetapkan nama domain tingkat kedua publik ke grup API. Nama domain ini hanya digunakan untuk debugging dan memiliki batas 100 panggilan per hari untuk wilayah di luar Tiongkok daratan dan 1.000 panggilan per hari untuk wilayah di Tiongkok daratan. Kami sarankan Anda mengikat nama domain independen ke grup API Anda.

Langkah 4: Buat layanan backend

Masuk ke konsol API Gateway. Di panel navigasi kiri, pilih Manage APIs > Backend Services. Di sudut kanan atas halaman, klik Create Backend Service. Di kotak dialog yang muncul, konfigurasikan parameter Nama dan pilih Service discovery dari daftar drop-down Type. Setelah layanan backend dibuat, Anda dapat menemukan layanan backend yang dibuat di halaman Backend Services. Anda dapat mengklik nama layanan untuk masuk ke halaman detail layanan.

Catatan

API tipe Penemuan Layanan hanya dapat dibuat dengan menggunakan layanan backend yang ada. Oleh karena itu, untuk membuat API semacam itu, Anda harus terlebih dahulu membuat layanan backend.

Dalam contoh ini, lingkungan RELEASE dipilih. Anda harus membuat layanan backend di lingkungan sebelum Anda dapat mempublikasikan API ke lingkungan tersebut. Di sisi kanan halaman, klik Create. Halaman Definisikan Layanan Backend muncul.

image.png

Tentukan parameter untuk Nacos dan aplikasi layanan mikro Anda. Item berikut menjelaskan parameter:

  • NACOS Address: titik akhir internal layanan Nacos. Parameter ini wajib. Lihat Langkah 3 untuk mengonfigurasi parameter ini.

  • Namespace: namespace tempat aplikasi layanan mikro berada. Parameter ini wajib. Masukkan ID namespace untuk parameter ini.

  • Group: nama grup tempat aplikasi layanan mikro milik. Parameter ini wajib.

  • Service Name: Nama aplikasi layanan mikro. Parameter ini wajib diisi.

  • Authentication: metode otentikasi Nacos. Parameter ini wajib. Nilai yang valid: Tidak Ada Otentikasi, Akun dan Kata Sandi, dan Pasangan Kunci.

  • Cluster: nama cluster tempat aplikasi layanan mikro milik. Parameter ini opsional. Jika Anda ingin menentukan beberapa cluster, pisahkan nama cluster dengan koma (,).

Jika otentikasi diaktifkan untuk layanan Nacos Anda, Anda harus menentukan informasi yang harus diperoleh pemanggil API Anda untuk melewati otentikasi. Jika Anda menggunakan layanan Nacos asli dan mengaktifkan otentikasi berbasis akun dan kata sandi, Anda harus memilih Akun dan Kata Sandi untuk parameter Otentikasi dan menentukan akun dan kata sandi. Jika Anda menggunakan layanan Nacos yang dikelola oleh MSE, Anda dapat memilih Pasangan Kunci untuk parameter Otentikasi. Untuk menggunakan otentikasi berbasis pasangan kunci, Anda harus terlebih dahulu membuat Pengguna Resource Access Management (RAM) dan memberikan izin baca-saja kepada pengguna RAM pada sumber daya MSE. Kemudian, Anda harus menentukan AccessKey dan SecretKey dari pengguna RAM di halaman konfigurasi layanan backend. Jika otentikasi tidak diaktifkan untuk layanan Nacos Anda, Anda harus memilih Tidak Ada Otentikasi.

Catatan

Untuk informasi lebih lanjut tentang cara mengaktifkan dan mengonfigurasi otentikasi untuk Nacos asli, lihat Otentikasi. Untuk informasi lebih lanjut tentang cara mengaktifkan dan mengonfigurasi otentikasi Nacos di MSE, lihat Otentikasi akses oleh klien Nacos.

Penting

Jika konfigurasi layanan Nacos Anda diubah, modifikasi konfigurasi yang sesuai dari layanan backend secepat mungkin. Jika tidak, API Gateway gagal mengakses aplikasi layanan mikro Anda.

Langkah 5: Buat API

Masuk ke konsol API Gateway. Di panel navigasi kiri, pilih Manage APIs > Backend Services. Di halaman Backend Services, temukan layanan backend yang dibuat dan klik Create API di kolom Actions.

  1. Konfigurasikan informasi dasar untuk API.

Pada langkah ini, konfigurasikan informasi dasar untuk API yang ingin Anda buat, termasuk grup API tempat API milik dan nama, metode otentikasi, tipe, dan deskripsi API. Pilih grup API yang Anda buat, dan pilih Aplikasi Cloud Alibaba untuk parameter Otentikasi Keamanan dan Aktifkan Otentikasi AppCode (Header & Query) untuk parameter Otentikasi AppCode. Anda dapat menentukan nama dan deskripsi API kustom.

Catatan

Anda dapat mengonfigurasi parameter Otentikasi Keamanan dan Otentikasi AppCode berdasarkan kebutuhan Anda. Topik ini hanya memberikan contoh.

  1. Definisikan permintaan API.

Pada langkah ini, Anda dapat mendefinisikan bagaimana klien, seperti browser, aplikasi seluler, atau sistem bisnis, meminta API Anda. Parameter termasuk tipe permintaan, protokol, jalur permintaan, metode HTTP, mode permintaan parameter input, dan definisi parameter input. Anda dapat menentukan jalur permintaan dan metode HTTP berdasarkan kebutuhan bisnis Anda.

  1. Definisikan layanan backend.

Pada langkah ini, Anda dapat mendefinisikan bagaimana API Gateway memetakan dan memproses parameter permintaan setelah menerima permintaan. Anda juga dapat menentukan ke alamat backend mana API Gateway terhubung. Dalam contoh ini, Use Existing Backend Service dipilih untuk parameter Mode Konfigurasi dan Service discovery dipilih untuk parameter Tipe Layanan Backend. Anda dapat menyetel parameter lainnya berdasarkan kebutuhan bisnis Anda.

  1. Definisikan respons.

Pada langkah ini, konfigurasikan informasi respons untuk menghasilkan dokumentasi API. Dokumentasi membantu pemanggil API lebih memahami API. Anda juga dapat menentukan contoh respons sukses dan contoh respons gagal. Dalam contoh ini, langkah ini dilewati. Klik Buat.

  1. Publikasikan API.

Setelah konfigurasi sebelumnya disimpan, Anda harus mempublikasikan API. Semua konfigurasi yang Anda tetapkan untuk API hanya dapat berlaku setelah Anda mempublikasikan API ke lingkungan. Dalam contoh ini, layanan backend dikonfigurasikan hanya di lingkungan RELEASE. Oleh karena itu, Anda hanya dapat mempublikasikan API ke lingkungan RELEASE. Jika Anda ingin mempublikasikan API ke lingkungan lain, Anda harus mengonfigurasi layanan backend di lingkungan tersebut terlebih dahulu. Dalam contoh ini, klik Publikasikan di pesan yang menunjukkan pembuatan API berhasil. Di kotak dialog Publikasikan API, atur parameter Tahap ke Rilis, masukkan catatan, lalu klik Publikasikan.

Langkah 6: Buat aplikasi dan otorisasi untuk memanggil API

Aplikasi adalah identitas yang diasumsikan oleh pemanggil API untuk memanggil API. Dalam contoh ini, Aplikasi Cloud Alibaba dipilih untuk parameter Otentikasi Keamanan saat API dibuat. Oleh karena itu, setelah API dipublikasikan, Anda harus membuat aplikasi dan mengotorisasi aplikasi untuk memanggil API yang Anda buat. Untuk informasi lebih lanjut, lihat Kelola otorisasi.

Langkah 7: Debug API

API Gateway mendukung debugging online. Kami sarankan Anda menggunakan fitur ini untuk memeriksa apakah API dikonfigurasi dengan benar sebelum menyediakan API kepada klien pemanggil.

Di halaman API, klik API yang telah dibuat. Di pohon navigasi kiri halaman detail API, klik Debug API. Jika Anda telah mendefinisikan parameter permintaan untuk API, Anda dapat memasukkan nilai berbeda untuk parameter tersebut guna memeriksa apakah API bekerja sesuai harapan.

Saat men-debug API, pastikan aplikasi yang diotorisasi digunakan dan lingkungan untuk debugging adalah lingkungan di mana aplikasi diizinkan untuk memanggil API. Jika tidak, debugging akan gagal.