Apa itu Apigee Hybrid?

Gambar deployment ilustratif

Apigee Hybrid memungkinkan Anda mengelola API di infrastruktur lokal, di Google Cloud, atau kombinasi keduanya:

Mengelola semua API Anda di satu tempat

Apigee Hybrid membantu Anda mengelola API internal dan eksternal dengan Google Cloud.

Dengan pengelolaan API terpadu, Anda dapat memberikan pengalaman program API yang konsisten kepada developer, partner, dan pelanggan Anda.

Mengatasi masalah keamanan dan kepatuhan

Jika pertimbangan kepatuhan dan keamanan membuat deployment lokal suatu keharusan untuk aplikasi Anda, dengan gateway hybrid tingkat perusahaan, Anda dapat menghosting dan mengelola bidang runtime hybrid Apigee di infrastruktur lokal Anda.

Anda mengelola dan mengontrol runtime, sehingga Anda dapat memanfaatkan kepatuhan, tata kelola, dan infrastruktur keamanan yang sudah ada.

Mendukung strategi multi-cloud Anda

Menyeimbangkan biaya dan performa dapat mengarahkan Anda pada strategi campuran.

Platform pengelolaan API akan memberikan fleksibilitas yang Anda butuhkan, baik jika Anda hanya menjelajahi berbagai penyedia cloud atau sudah memilih strategi hybrid. Hosting dan kelola gateway hybrid tingkat perusahaan di seluruh pusat data Anda, Google Cloud, atau keduanya.

 

Jika Anda ingin mempelajari hybrid lebih lanjut:

Terus Membaca

 

 

Jika Anda siap menginstal hybrid:

Mulai dari Sini

 

Program API di dunia hybrid

Apigee Hybrid terdiri dari bidang pengelolaan yang dikelola oleh Google dan bidang runtime yang Anda instal ke Kubernetes lokal atau di Google Cloud. Kedua pesawat menggunakan layanan Google Cloud Platform, seperti yang ditunjukkan gambar berikut:

Tampilan tingkat tinggi dari platform hybrid, termasuk bidang pengelolaan, bidang runtime, dan layanan Google Cloud

Seperti yang dapat dilihat, hybrid terdiri dari komponen utama berikut:

  • Bidang pengelolaan yang dijalankan Apigee: Kumpulan layanan yang dihosting di cloud dan dikelola oleh Google. Layanan ini mencakup UI, API pengelolaan, dan analisis.
  • Bidang runtime yang dikelola pelanggan: Kumpulan layanan runtime dalam container yang Anda siapkan dan pertahankan di cluster Kubernetes Anda sendiri. Semua traffic API akan melewati dan diproses dalam bidang runtime.

    Anda dapat mengelola runtime dalam container di cluster Kubernetes untuk ketangkasan yang lebih baik dengan peluncuran bertahap, penskalaan otomatis, dan manfaat operasional container lainnya.

  • Google Cloud: Rangkaian layanan Cloud yang dihosting oleh Google.

Satu hal penting yang perlu diketahui tentang hybrid adalah semua traffic API diproses dalam batas-batas jaringan Anda dan di bawah kendali Anda, sedangkan layanan pengelolaan seperti analisis UI dan API berjalan di cloud dan dikelola oleh Google. Untuk informasi selengkapnya, lihat Di mana data Anda disimpan?

Video berikut memberikan penjelasan mendalam tentang arsitektur hybrid:

Tentang bidang runtime

Bidang runtime adalah sekumpulan layanan runtime dalam container yang Anda siapkan dan kelola di cluster Kubernetes Anda sendiri. Semua traffic API akan melewati dan diproses dalam bidang runtime. Bidang runtime mencakup komponen utama berikut:

Bidang runtime berjalan di cluster Kubernetes yang Anda miliki dan pertahankan.

Gambar berikut menunjukkan layanan utama yang dijalankan di bidang runtime:

Layanan utama yang dijalankan di bidang runtime hybrid

Untuk informasi umum tentang komponen runtime, lihat bagian berikut ini. Selain itu, lihat Ringkasan konfigurasi layanan runtime.

Bagian berikut menjelaskan setiap layanan bidang runtime utama ini secara lebih mendetail.

Message Processor

Hybrid Message Processor (MP) menyediakan pemrosesan permintaan API dan eksekusi kebijakan di bidang runtime. MP memuat semua proxy, resource, server target, sertifikat, dan keystore yang di-deploy dari penyimpanan lokal. Anda mengonfigurasi pengontrol Istio Ingress untuk mengekspos MP ke permintaan yang berasal dari luar cluster.

Penyinkron

Menyinkronkan akan mengambil data konfigurasi tentang lingkungan API dari bidang pengelolaan dan menyebarkannya ke seluruh bidang runtime. Data yang didownload ini juga disebut kontrak dan disimpan di sistem file lokal.

Sinkronisasi secara berkala memeriksa server Pengelolaan untuk mengetahui perubahan dan mendownload konfigurasi baru setiap kali perubahan terdeteksi. Data konfigurasi diambil dan disimpan secara lokal sebagai file JSON di sistem file lokal, tempat Pemroses Pesan dapat mengaksesnya.

Data konfigurasi yang didownload memungkinkan bidang runtime untuk berfungsi secara independen dari bidang pengelolaan. Dengan kontrak tersebut, Pemroses Pesan pada bidang runtime menggunakan data yang disimpan secara lokal sebagai konfigurasinya. Jika koneksi antara bidang pengelolaan dan runtime terputus, layanan pada bidang runtime akan terus berfungsi.

Data konfigurasi yang didownload oleh Synchronizer mencakup:

  • Paket proxy dan deployment alur bersama
  • Flow hook
  • Informasi lingkungan
  • Resource API bersama
  • Definisi server target
  • Setelan TLS
  • Nama Peta Nilai Kunci (KVM)
  • Data mask

Datastore Cassandra

Apache Cassandra adalah datastore runtime yang menyediakan persistensi data untuk bidang runtime.

Cassandra adalah sistem data terdistribusi yang menyediakan persistensi data di bidang runtime. Anda men-deploy database Cassandra sebagai kumpulan node StatefulSet di cluster Kubernetes. Menemukan entity ini di dekat layanan pemrosesan runtime akan membantu mendukung persyaratan untuk keamanan dan skalabilitas yang tinggi.

Database Cassandra menyimpan informasi tentang entitas berikut:

  • Sistem pengelolaan kunci (KMS)
  • Peta Nilai Kunci (KVM)
  • Cache respons
  • OAuth
  • Kuota

Management API untuk data Runtime (MART)

Data milik organisasi Anda dan yang diakses selama panggilan API runtime akan disimpan oleh Cassandra di bidang runtime.

Data ini mencakup:

  • Konfigurasi aplikasi
  • Data Sistem Manajemen Kunci (KMS)
  • Cache
  • Peta Nilai Kunci (KVM)
  • Produk API
  • Aplikasi developer

Untuk mengakses dan memperbarui data tersebut—misalnya, untuk menambahkan KVM baru atau menghapus lingkungan—Anda dapat menggunakan UI hybrid Apigee atau Apigee API. Server MART (Management API untuk data Runtime) memproses panggilan API terhadap datastore runtime.

Bagian ini menjelaskan peran yang dimainkan MART saat Anda memanggil Apigee API untuk mengakses datastore runtime.

 
Apa yang dimaksud dengan MART

Untuk memanggil Apigee API, kirim permintaan terautentikasi ke Management Server (MS) di bidang pengelolaan. MS mengautentikasi dan memberikan otorisasi permintaan, lalu meneruskan permintaan tersebut ke MART pada bidang runtime. Terlampir pada permintaan tersebut adalah token yang dihasilkan oleh MS menggunakan akun layanan yang telah dikonfigurasi sebelumnya.

MART menerima permintaan, mengautentikasi, dan memberikan otorisasi, lalu melakukan validasi bisnis pada permintaan tersebut. (Misalnya, jika aplikasi merupakan bagian dari produk API, MART akan memastikan itu adalah permintaan yang valid.) Setelah menentukan bahwa permintaan valid, MART akan memprosesnya.

Cassandra menyimpan data runtime yang diproses MART (artinya datastore runtime). MART mungkin membaca data dari Cassandra atau mungkin memperbarui data tersebut, bergantung pada jenis permintaan.

Seperti kebanyakan layanan hybrid, MART bersifat stateless: ia tidak mempertahankan statusnya sendiri saat runtime.

Yang bukan MART

Meskipun MART mengekspos port ke cloud publik, Anda tidak memanggil MART secara langsung. (Port harus diekspos sehingga MART dapat menerima panggilan dari MS melalui akun layanan.)

Selain itu, MART tidak menerima panggilan runtime dari pelanggan Anda ke proxy API mereka; panggilan tersebut ditangani oleh pengontrol ingress dan dirutekan ke Pemroses Pesan cluster Anda.

 

Perlu diperhatikan bahwa MART dan Pemroses Pesan memiliki akses ke datastore runtime (Cassandra) yang sama, yang merupakan cara berbagi data seperti KMS, KVM, dan cache.

Gambar berikut menunjukkan alur panggilan API Apigee:

Alur panggilan API dalam hybrid

UDCA

Agen Pengumpulan Data Universal (UDCA) adalah layanan yang berjalan di dalam pod pengumpulan data di bidang runtime yang mengekstrak data analisis, debug, dan status deployment, lalu mengirimkannya ke UAP.

Untuk mengetahui informasi selengkapnya, lihat Pengumpulan data status debug, analisis, dan deployment.

Tentang bidang pengelolaan

Bidang pengelolaan berjalan di Google Cloud. Hal ini mencakup layanan administratif seperti:

  • UI Apigee Hybrid: Menyediakan UI bagi developer untuk membuat dan men-deploy proxy API, mengonfigurasi kebijakan, membuat produk API, dan membuat aplikasi developer. Administrator dapat menggunakan UI hybrid Apigee untuk memantau status deployment.
  • Apigee API: Menyediakan antarmuka terprogram untuk mengelola organisasi dan lingkungan Anda.
  • Unified Analytics Platform (UAP): Menerima dan memproses data analisis dan status deployment dari bidang runtime.

Gambar berikut menunjukkan layanan utama yang dijalankan di bidang pengelolaan:

Layanan yang dijalankan di bidang pengelolaan hybrid Apigee

Tentang layanan Google Cloud

Tabel berikut menjelaskan beberapa layanan utama Google Cloud yang memanfaatkan hybrid:

Layanan Google Cloud Deskripsi
Identitas Autentikasi akun pengguna menggunakan akun Google Cloud. Otorisasi menggunakan akun layanan Google Cloud.
Peran Pengelolaan akses untuk sistem hybrid menggunakan mesin peran Google, IAM, dan mendukung peran Apigee default.
Hierarki Resource Resource diatur dalam project Google Cloud (ditautkan ke organisasi Apigee).
Stackdriver Menyediakan logging dan analisis data metrik.
 

Jenis pengguna

Apigee telah mengidentifikasi jenis utama pengguna hybrid berikut:

Peran Tanggung jawab/tugas umum Area minat
Administrator/operator sistem
  • Menginstal dan mengonfigurasi layanan di bidang runtime hybrid
  • Menyiapkan akun Google Cloud, Apigee, dan layanan
  • Membuat layanan dan project Google Cloud
  • Mengelola cluster Kubernetes
  • Mempertahankan semua hal di atas
  • Memecahkan masalah proxy API
Developer
  • Membangun proxy API menggunakan UI hybrid Apigee atau Apigee API
  • Men-deploy proxy API ke bidang runtime
  • Memecahkan masalah proxy API
  • Menguji proxy API
 

Kelebihan

Apigee Hybrid memiliki keuntungan berikut:

Peningkatan ketangkasan
Karena sistem hybrid dikirimkan dan dijalankan dalam container, Anda dapat mencapai peluncuran bertahap, penskalaan otomatis, dan manfaat operasional lainnya dari sistem dalam container.
Mengurangi latensi
Semua komunikasi dengan bidang pengelolaan hybrid bersifat asinkron dan tidak terjadi sebagai bagian dari pemrosesan permintaan API klien.
Peningkatan adopsi API
Meskipun pemrosesan API internal dapat dilakukan menggunakan Apigee, pengurangan latensi dan efisiensi yang dapat Anda capai dengan hybrid membuat pemrosesan API internal dengan hybrid menjadi opsi yang menarik. Sebagian dari efisiensi ini tercapai karena gateway API Anda berjalan di infrastruktur lokal dan dekat dengan layanan backend. Selain itu, jika menggunakan Apigee, Anda dapat meningkatkan adopsi Apigee dengan memproses API internal melalui sistem hybrid.
Kontrol yang lebih besar
Banyak perusahaan memulai strategi hybrid. Kemampuan untuk mengelola runtime API yang di-deploy di pusat data pribadi merupakan persyaratan utama bagi perusahaan besar. Saat ini, bidang runtime hybrid dapat di-deploy ke Google Cloud atau di pusat data Anda sendiri.

Langkah berikutnya

Lihat The Big Picture—ringkasan tentang proses penginstalan hybrid.