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.

Menangani keamanan dan kepatuhan

Jika pertimbangan kepatuhan dan keamanan Anda membuat deployment lokal wajib 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 ada.

Mendukung strategi multi-cloud Anda

Menyeimbangkan biaya dan performa dapat mengantar Anda pada strategi campuran.

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

 

Jika Anda ingin mempelajari lebih lanjut sistem hybrid:

Terus Baca

 

 

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 platform hybrid, termasuk bidang pengelolaan, bidang runtime, dan layanan Google Cloud

Seperti yang dapat Anda lihat, campuran terdiri dari komponen utama berikut:

  • Apigee-run bidang pengelolaan: 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 kelola di cluster Kubernetes Anda sendiri. Semua traffic API akan melewati dan diproses dalam bidang runtime.

    Anda mengelola runtime dalam container di cluster Kubernetes untuk mendapatkan 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, sementara 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 pembahasan mendalam tentang arsitektur campuran:

Tentang bidang runtime

Bidang runtime adalah kumpulan 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 kelola.

Gambar berikut menampilkan layanan utama yang dijalankan pada 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. Anggota Parlemen 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.

Penyelaras

Sinkronisasi 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 perubahan Server Pengelolaan dan mendownload konfigurasi baru setiap kali perubahan terdeteksi. Data konfigurasi diambil dan disimpan secara lokal sebagai file JSON di sistem file lokal, tempat Prosesor Pesan dapat mengaksesnya.

Data konfigurasi yang didownload memungkinkan bidang runtime untuk berfungsi secara independen dari bidang pengelolaan. Dengan kontrak, 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 diunduh oleh Sinkronisasir 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

{i>Datastore Cassandra<i}

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 keamanan dan skalabilitas tinggi.

Database Cassandra menyimpan informasi tentang entity berikut:

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

API Pengelolaan untuk data Runtime (MART)

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

Data ini mencakup:

  • Konfigurasi aplikasi
  • Data Sistem Pengelolaan 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 hibrid 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 itu MART

Untuk memanggil Apigee API, Anda harus mengirim permintaan yang diautentikasi ke Server Pengelolaan (MS) di bidang pengelolaan. MS mengautentikasi dan memberikan otorisasi permintaan, lalu meneruskan permintaan tersebut ke MART pada bidang runtime. Dalam permintaan tersebut, kami melampirkan token yang dihasilkan 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 adalah bagian dari produk API, MART akan memastikan itu adalah permintaan yang valid.) Setelah menentukan bahwa permintaan valid, MART kemudian memprosesnya.

Cassandra menyimpan data runtime yang diproses MART (sebenarnya, ini adalah datastore runtime). MART dapat membaca data dari Cassandra atau mungkin memperbarui data tersebut, bergantung pada jenis permintaannya.

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

MART yang tidak

Meskipun MART mengekspos port ke cloud publik, Anda tidak memanggil MART secara langsung. (Port harus terlihat agar 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 dialihkan ke Pemroses Pesan cluster Anda.

 

Perlu diperhatikan bahwa MART dan Prosesor 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

Universal Data Collection Agent (UDCA) adalah layanan yang berjalan 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. Pengelolaan ini mencakup layanan administratif seperti:

  • UI hybrid Apigee: 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.
  • Platform Analytics Terpadu (UAP): Menerima dan memproses data analisis dan status deployment dari bidang runtime.

Gambar berikut menampilkan layanan utama yang dijalankan di bidang pengelolaan:

Layanan yang dijalankan di bidang pengelolaan hybrid Apigee

Tentang layanan Google Cloud

Tabel berikut menjelaskan 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 hybrid menggunakan mesin peran Google, IAM, dan mendukung peran Apigee default.
Hierarki Resource Resource diatur dalam project Google Cloud (tertaut dengan organisasi Apigee).
Stackdriver Menyediakan analisis data logging dan 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 pada bidang runtime hybrid
  • Menyiapkan akun Google Cloud, Apigee, dan layanan
  • Membuat layanan dan project Google Cloud
  • Mengelola cluster Kubernetes
  • Mempertahankan semua yang 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 hybrid dikirim 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 memungkinkan untuk memproses API internal 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 secara lokal, yang dekat dengan layanan backend Anda. Selain itu, jika menggunakan Apigee, Anda dapat meningkatkan penggunaan Apigee dengan memproses API internal melalui hybrid.
Kontrol yang lebih besar
Banyak perusahaan mulai menggunakan strategi hybrid. Kemampuan untuk mengelola runtime API yang di-deploy di pusat data pribadi adalah 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 Gambaran Umum—ringkasan tentang proses penginstalan hybrid.