Apigee mengumumkan ketersediaan umum APIM Extension Processor

15 APRIL 2025
Ishita Saxena Strategic Cloud Engineer
Sanjay Pujare Software Engineer

Kami sangat senang dapat mengumumkan Ketersediaan Umum (GA) Apigee Extension Processor (versi 1.0)! Kemampuan baru yang kuat ini secara signifikan memperluas jangkauan dan fleksibilitas Apigee, membuatnya semakin mudah untuk mengelola dan mengamankan lebih banyak layanan backend dan arsitektur aplikasi modern.

Untuk developer yang menggunakan model deployment modern, Extension Processor menawarkan integrasi tanpa batas dengan Cloud Run, yang memungkinkan Anda menerapkan kebijakan Apigee pada aplikasi dalam container skalabel.

Extension Processor juga membuka pola komunikasi baru yang kuat. Sekarang Anda bisa dengan mudah mengelola interaksi real-time tingkat lanjut dengan streaming dua arah gRPC, memungkinkan aplikasi yang sangat interaktif dan memiliki latensi rendah. Selain itu, untuk arsitektur yang dipicu oleh peristiwa, Extension Processor menyediakan jalur untuk mengelola dan mengamankan Server-Sent Events (SSE), memfasilitasi aliran data yang efisien ke klien.

Namun, manfaatnya tidak hanya sebatas deployment aplikasi dan protokol komunikasi. Apigee Extension Processor, dipadukan dengan kebijakan Google Token Injection, secara dramatis menyederhanakan akses aman ke infrastruktur Google Cloud Anda. Anda bisa terhubung dengan mulus dan mengontrol akses ke layanan data yang kuat seperti Bigtable, dan memanfaatkan kecerdasan Vertex AI untuk beban kerja machine learning Anda, semuanya sembari mempertahankan framework keamanan yang konsisten dari Apigee.

Terakhir, dengan mengintegrasikan kemampuan manajemen traffic cerdas dari Google Cloud Load Balancing, Extension Processor menawarkan fleksibilitas yang tak tertandingi dalam pemilihan rute dan mengelola arus traffic yang beragam. Kombinasi yang kuat ini membuka kemungkinan yang tak terhitung jumlahnya untuk mengelola lanskap API yang paling kompleks sekalipun.

Blog ini menjelaskan solusi ampuh untuk menghadapi tantangan utama dalam lanskap aplikasi berkinerja tinggi dan real-time saat ini: mengelola streaming gRPC di dalam Apigee. Meskipun gRPC merupakan pilar microservice yang efisien, sifat streaming-nya menghadirkan tantangan bagi organisasi yang memanfaatkan Apigee Google Cloud sebagai proxy inline (mode tradisional). Kami akan mengeksplorasi bagaimana Apigee Extension Processor memungkinkan paket data Apigee untuk menerapkan kebijakan pada traffic streaming gRPC saat melewati Load Balancer Aplikasi (ALB). Ini dicapai melalui Service Extension (ekstensi traffic), yang memungkinkan manajemen dan pemilihan rute secara efektif tanpa aliran data gRPC yang secara langsung melintasi gateway Apigee.

Baca terus artikel ini sambil kita mempelajari elemen utama dari solusi ini, menyoroti manfaatnya, dan memberikan ringkasan tingkat tinggi tentang kasus penggunaan dunia nyata yang melibatkan backend Cloud Run.


Memahami Apigee Extension Processor

Apigee Extension Processor adalah ekstensi traffic yang kuat (tipe ekstensi layanan) yang memungkinkan Anda memanfaatkan Cloud Load Balancing untuk mengirimkan panggilan ke Apigee sebagai bagian dari manajemen API. Ini memungkinkan Apigee untuk menerapkan kebijakan manajemen API ke permintaan sebelum ALB meneruskannya ke layanan backend yang dikelola pengguna, yang secara efektif memperluas kemampuan manajemen API Apigee yang kuat ke beban kerja yang dikendalikan oleh Cloud Load Balancing.


Infrastruktur dan Aliran Data

Diagram ini menjelaskan komponen yang diperlukan dari konfigurasi Apigee Extension Processor:

Konfigurasi Apigee Extension Processor melibatkan beberapa komponen utama. Komponen tersebut meliputi ALB, instance Apigee dengan Extension Processor diaktifkan, dan Service Extension. Untuk penjelasan terperinci tentang komponen ini, silakan lihat ringkasan Apigee Extension Processor.

Data flow diagram for Apigee Services extensions

Langkah-langkah bernomor berikut ini sesuai dengan panah bernomor pada diagram alir, yang mengilustrasikan urutan peristiwa:

1: Klien mengirimkan permintaan ke ALB

2: ALB bertindak sebagai Policy Enforcement Point (PEP), memproses traffic. Sebagai bagian dari pemrosesan ini, ia memanggil Apigee melalui Service Extension (ekstensi traffic) yang telah dikonfigurasi.

3: Apigee Extension Processor, bertindak sebagai Policy Decision Point (PDP), menerima panggilan, menerapkan kebijakan manajemen API yang relevan untuk permintaan tersebut, dan mengembalikan permintaan yang telah diproses ke ALB (PEP).

4: ALB menyelesaikan pemrosesan dan meneruskan permintaan ke layanan backend.

Layanan backend memulai respons, yang diterima oleh ALB. ALB mungkin memanggil Apigee lagi melalui Service Extension untuk menerapkan kebijakan atas respons tersebut sebelum meneruskannya ke klien.


Menjembatani kesenjangan: Mengaktifkan pass-through streaming gRPC

Banyak aplikasi modern yang membutuhkan dan menggunakan kekuatan streaming gRPC, tetapi Apigee - yang digunakan sebagai proxy inline - saat ini tidak mendukung streaming. Di sinilah Apigee Extension Processor menjadi sangat berharga - dengan mengizinkan ALB untuk memproses traffic streaming gRPC dan bertindak sebagai PEP (policy enforcement point) sementara runtime Apigee bertindak sebagai PDP (policy decision point).


Elemen utama yang diperlukan untuk mengaktifkan pass-through streaming gRPC dengan Apigee

Untuk mengaktifkan pass-through streaming gRPC menggunakan Apigee Extension Processor, dibutuhkan elemen utama berikut ini. Untuk petunjuk konfigurasi terperinci, silakan lihat Memulai dengan Apigee Extension Processor.

  • Layanan backend streaming gRPC: Layanan gRPC yang mengimplementasikan kemampuan streaming yang diperlukan (server, klien, atau dua arah).

  • Load Balancer Aplikasi (ALB): Titik masuk untuk permintaan klien, dikonfigurasi untuk merutekan traffic dan memanggil Apigee Service Extension.

  • Instance Apigee dengan Extension Processor diaktifkan:Instance dan lingkungan Apigee yang dikonfigurasi dengan fitur Extension Processor menggunakan proxy API tanpa target untuk pemrosesan traffic ext-proc dari Service Extension.

  • Konfigurasi Service Extension: Ekstensi traffic (tipe Service Extension) yang bertindak sebagai jembatan antara ALB dan runtime Apigee (idealnya menggunakan Private Service Connect (PSC)).

  • Konektivitas jaringan: Pengaturan jaringan yang tepat memungkinkan komunikasi antara semua komponen (klien ke ALB, ALB ke Apigee, ALB ke backend).

Kasus Penggunaan: Mengamankan dan mengelola layanan streaming gRPC di Cloud Run dengan Apigee

Pertimbangkan skenario saat pelanggan mengembangkan layanan backend berkinerja tinggi dengan kemampuan streaming gRPC, seperti menyediakan log aplikasi secara real-time. Untuk skalabilitas dan kemudahan pengelolaan, aplikasi backend ini diterapkan di Google Cloud Run dalam project Google Cloud utama mereka. Sekarang, pelanggan ingin mengekspos layanan streaming gRPC ini kepada klien mereka melalui gateway API yang dikelola dengan baik dan aman. Mereka memilih Apigee untuk tujuan ini, dengan memanfaatkan fitur manajemen API yang kuat, seperti autentikasi, otorisasi, pembatasan kapasitas, dan kebijakan lainnya.


Tantangan

Seperti yang telah disebutkan sebelumnya, Apigee tidak mendukung streaming gRPC secara native ketika digunakan dalam mode proxy inline. Eksposur langsung dari layanan gRPC Cloud Run melalui konfigurasi Apigee standar tidak akan mendukung setiap kasus penggunaan streaming: klien, server, atau streaming dua arah.


Solusi

Apigee Extension Processor menyediakan jembatan yang diperlukan untuk mengelola traffic streaming gRPC yang ditujukan untuk aplikasi backend yang diterapkan di Cloud Run dalam project Google Cloud yang sama.

Berikut adalah alur sederhananya:


1: Inisiasi klien

  • Aplikasi klien menginisiasi permintaan streaming gRPC.

  • Permintaan ini ditujukan ke alamat IP publik atau nama DNS ALB yang berfungsi sebagai titik masuk.


2:
Pemrosesan Load Balancer Aplikasi dan panggilan Service Extension

  • ALB menerima permintaan streaming gRPC yang masuk.

  • ALB dikonfigurasi dengan layanan backend yang menggunakan Network Endpoint Group (NEG) tanpa server yang mengarah ke backend di Cloud Run.

  • ALB juga dikonfigurasi dengan Service Extension (ekstensi Traffic) yang memiliki konfigurasi backend runtime Apigee tertentu.

  • ALB pertama kali memanggil Service Extension ini untuk traffic yang relevan.


3: Pemrosesan proxy Apigee

  • Permintaan gRPC diteruskan ke proxy API Apigee yang ditunjuk melalui Service Extension.

  • Di dalam proxy Apigee X ini, berbagai kebijakan manajemen API dieksekusi. Ini bisa mencakup autentikasi, otorisasi, dan pembatasan kapasitas.

Catatan: Proxy Apigee dalam skenario ini adalah proxy tanpa target, artinya, ia tidak memiliki konfigurasi Target Endpoint. Proxy ini mengandalkan ALB untuk pemilihan rute akhir.


4: Kembali ke ALB

  • Karena proxy Apigee tidak memiliki target, setelah pemrosesan kebijakan, kontrol kembali ke ALB melalui respons Service Extension.


5: Pemilihan Rute ke Backend di Cloud Run oleh Load Balancer

  • ALB, berdasarkan konfigurasi layanan backend-nya, meneruskan permintaan streaming gRPC ke layanan backend yang sesuai yang dipetakan ke NEG tanpa server di mana layanan Cloud Run berada.

  • ALB menangani pemilihan rute yang mendasarinya ke instance Cloud Run.


6: Penanganan respons

Penanganan respons mengikuti pola yang mirip dengan alur permintaan. Backend memulai respons, yang kemudian ditangani oleh ALB. ALB mungkin memanggil Apigee melalui Service Extension (ekstensi traffic) untuk penerapan kebijakan sebelum meneruskan respons ke klien.


Kasus penggunaan yang disederhanakan ini menunjukkan bagaimana Apigee Extension Processor bisa digunakan untuk menerapkan kebijakan manajemen API pada traffic streaming gRPC yang ditujukan untuk aplikasi yang diterapkan di Cloud Run dalam project Google Cloud yang sama. ALB terutama menangani pemilihan rute ke layanan Cloud Run berdasarkan konfigurasi NEG-nya.


Keuntungan Memanfaatkan Apigee Extension Processor untuk Streaming gRPC

Memanfaatkan Apigee Extension Processor untuk mengelola layanan streaming gRPC di backend menawarkan beberapa keuntungan utama, memperluas kekuatan inti Apigee ke aplikasi baru pada platform ini:

  • Memperluas jangkauan Apigee

Pendekatan ini berhasil memperluas kemampuan manajemen API Apigee yang kuat ke streaming gRPC, pola komunikasi streaming yang tidak didukung secara native oleh proxy inti platform Apigee.

  • Memanfaatkan investasi yang ada

Untuk organisasi yang sudah menggunakan Apigee untuk RESTful API, solusi ini memungkinkan mereka mengelola layanan streaming gRPC di dalam Apigee. Meskipun membutuhkan penggunaan Extension Processor, ini memanfaatkan konsep manajemen API yang familier dan mengurangi penggunaan alat terpisah.

  • Manajemen kebijakan terpusat

Apigee menyediakan platform terpusat untuk mendefinisikan dan menerapkan kebijakan manajemen API. Dengan mengintegrasikan streaming gRPC melalui Extension Processor, Anda bisa mempertahankan tata kelola dan keamanan yang konsisten di semua endpoint API Anda.

  • Potensi monetisasi

Jika Anda mengekspos layanan streaming gRPC sebagai produk, fitur Monetisasi Apigee bisa dimanfaatkan. Anda dapat menghasilkan pendapatan setiap kali API streaming gRPC digunakan dengan menambahkan paket tarif ke produk API khusus yang Anda buat di dalam Apigee.

  • Peningkatan kemampuan observasi dan keterlacakan

Meskipun analisis tingkat protokol gRPC yang mendetail mungkin terbatas dalam skenario pass-through, Apigee tetap memberikan insight yang berharga mengenai traffic yang mengalir ke layanan streaming Anda, termasuk percobaan koneksi, tingkat error, dan pola penggunaan secara keseluruhan. Kemampuan observasi ini sangatlah penting untuk pemantauan dan pemecahan masalah.

Sistem pelacakan terdistribusi Apigee bisa membantu Anda melacak permintaan dalam sistem terdistribusi yang melibatkan layanan streaming gRPC Anda, memberikan visibilitas secara menyeluruh di berbagai aplikasi, layanan, dan database.

  • Business intelligence

Analytics API Apigee mengumpulkan banyak informasi yang mengalir melalui load balancer Anda, menyediakan visualisasi data di UI atau kemampuan untuk mendownload data guna analisis offline. Data ini bisa sangat berharga untuk memahami pola penggunaan, mengidentifikasi bottleneck performa, dan membuat keputusan bisnis yang tepat.

Dengan mempertimbangkan manfaat ini, jelaslah bahwa Apigee Extension Processor menawarkan cara praktis dan berharga untuk menghadirkan kemampuan manajemen API yang esensial ke layanan streaming gRPC di Google Cloud.


Memandang ke Depan

Apigee Extension Processor merepresentasikan lompatan signifikan dalam memperluas kemampuan Apigee. Kami membayangkan masa depan di mana gateway apa pun, di mana pun, bisa memanfaatkan kekuatan kemampuan penerapan kebijakan Apigee. Ini akan melibatkan pemanfaatan protokol ext-proc dan pengintegrasian dengan berbagai load balancer dan gateway berbasis Envoy, yang memungkinkan mereka bertindak sebagai Policy Enforcement Points (PEP) dengan runtime Apigee yang berfungsi sebagai Policy Decision Point (PDP). Evolusi ini akan semakin memampukan organisasi untuk secara konsisten mengelola dan mengamankan aset digital mereka di lingkungan yang semakin terdistribusi dan heterogen.