Anda sedang melihat dokumentasi Apigee dan Apigee hybrid.
Lihat dokumentasi
Apigee Edge.
Apigee menyediakan berbagai jenis resource dan masing-masing memiliki tujuan yang berbeda. Ada resource tertentu yang dapat dikonfigurasi (yaitu, dibuat, diperbarui, dan/atau dihapus) hanya melalui UI Apigee, API Apigee, atau alat yang menggunakan API, dan oleh pengguna dengan peran dan izin prasyarat. Misalnya, hanya admin org yang tergabung dalam organisasi tertentu yang dapat mengonfigurasi resource ini. Artinya, resource ini tidak dapat dikonfigurasi oleh pengguna akhir melalui portal developer, atau dengan cara apa pun. Referensi ini mencakup:
- Proxy API
- Alur bersama
- Produk API
- Cache
- KVM
- Keystore dan truststore
- Host virtual
- Server target
- File resource
Meskipun resource ini memiliki akses terbatas, jika ada modifikasi yang dilakukan pada resource tersebut, bahkan oleh pengguna yang diberi otorisasi, data historis akan ditimpa dengan data baru. Hal ini disebabkan oleh fakta bahwa resource ini hanya disimpan di Apigee sesuai dengan statusnya saat ini. Pengecualian utama untuk aturan ini adalah proxy API dan alur bersama.
Proxy API dan Alur Bersama dalam Kontrol Revisi
Proxy API dan alur bersama dikelola -- dengan kata lain, dibuat, diperbarui, dan di-deploy -- melalui revisi. Revisi diberi nomor secara berurutan, yang memungkinkan Anda menambahkan perubahan baru dan menyimpannya sebagai revisi baru atau mengembalikan perubahan dengan men-deploy revisi sebelumnya dari proxy/alur bersama API. Pada waktu tertentu, hanya boleh ada satu revisi proxy API/alur bersama yang di-deploy di lingkungan, kecuali jika revisi tersebut memiliki jalur dasar yang berbeda.
Meskipun proxy API dan alur bersama dikelola melalui revisi, jika ada modifikasi yang dilakukan pada revisi yang ada, tidak ada cara untuk melakukan rollback karena perubahan lama hanya ditimpa.
Audit dan Histori
Apigee menyediakan fitur Audit yang dapat membantu dalam memecahkan masalah skenario. Fitur ini memungkinkan Anda melihat informasi seperti siapa yang melakukan operasi tertentu (membuat, membaca, memperbarui, menghapus, men-deploy, dan membatalkan deployment) dan kapan operasi dilakukan pada resource Apigee. Namun, jika operasi pembaruan atau penghapusan dilakukan pada resource Apigee, audit tidak dapat memberikan data yang lebih lama.
Antipola
Mengelola resource Apigee (tercantum di atas) secara langsung melalui UI atau API Apigee tanpa menggunakan sistem kontrol sumber
Ada kesalahpahaman bahwa Apigee akan dapat memulihkan resource ke status sebelumnya setelah diubah atau dihapus. Namun, Apigee tidak menyediakan pemulihan resource ke status sebelumnya. Oleh karena itu, pengguna bertanggung jawab untuk memastikan bahwa semua data yang terkait dengan resource Apigee dikelola melalui pengelolaan kontrol sumber, sehingga data lama dapat dipulihkan kembali dengan cepat jika terjadi penghapusan yang tidak disengaja atau situasi saat perubahan apa pun perlu di-roll back. Hal ini sangat penting untuk lingkungan produksi tempat data ini diperlukan untuk traffic runtime.
Mari kita jelaskan dengan bantuan beberapa contoh dan jenis dampak yang dapat ditimbulkan jika data tidak dikelola melalui sistem kontrol sumber dan diubah/dihapus secara sadar atau tidak sadar:
Contoh 1: Penghapusan atau perubahan proxy API
Jika proxy API dihapus, atau perubahan di-deploy pada revisi yang ada, kode sebelumnya tidak dapat dipulihkan. Jika proxy API berisi kode Java, JavaScript, atau Python yang tidak dikelola dalam sistem pengelolaan kontrol sumber (SCM) di luar Apigee, banyak pekerjaan dan upaya pengembangan dapat hilang.
Contoh 2: Penentuan proxy API menggunakan host virtual tertentu
Sertifikat di host virtual akan segera berakhir masa berlakunya dan host virtual tersebut perlu diperbarui. Mengidentifikasi proxy API mana yang menggunakan host virtual tersebut untuk tujuan pengujian mungkin sulit jika ada banyak proxy API. Jika proxy API dikelola di sistem SCM di luar Apigee, akan mudah untuk menelusuri repositori.
Contoh 3: Penghapusan keystore/truststore
Jika keystore/truststore yang digunakan oleh konfigurasi server target atau host virtual dihapus, keystore/truststore tersebut tidak dapat dipulihkan kecuali jika detail konfigurasi keystore/truststore, termasuk sertifikat dan/atau kunci pribadi, disimpan di kontrol sumber.
Dampak
- Jika salah satu resource Apigee dihapus, resource dan kontennya tidak dapat dipulihkan dari Apigee.
- Permintaan API dapat gagal dengan error yang tidak terduga yang menyebabkan pemadaman layanan hingga resource dipulihkan kembali ke status sebelumnya.
- Sulit untuk menelusuri interdependensi antara proxy API dan resource lainnya di Apigee.
Praktik Terbaik
- Gunakan SCM standar apa pun yang digabungkan dengan pipeline continuous integration dan continuous deployment (CICD) untuk mengelola proxy API dan alur bersama.
- Gunakan SCM standar untuk mengelola resource Apigee lainnya, termasuk produk API, cache, KVM, server target, host virtual, dan keystore.
- Jika ada resource Apigee yang ada, gunakan Apigee API untuk mendapatkan detail konfigurasi untuk resource tersebut sebagai payload JSON/XML dan menyimpannya dalam pengelolaan kontrol sumber.
- Kelola pembaruan baru pada resource ini di pengelolaan kontrol sumber.
- Jika perlu membuat resource Apigee baru atau memperbarui resource yang ada, gunakan payload JSON/XML yang sesuai yang disimpan dalam pengelolaan kontrol sumber dan perbarui konfigurasi di Apigee menggunakan API.
* KVM terenkripsi tidak dapat diekspor dalam teks biasa dari API. Pengguna bertanggung jawab untuk menyimpan catatan nilai yang dimasukkan ke KVM terenkripsi.
Bacaan lebih lanjut
- Kontrol Sumber untuk Pengembangan Proxy API
- Panduan untuk menerapkan CI di Apigee
- Plugin Maven Deploy untuk Proxy API
- Plugin Konfigurasi Maven untuk mengelola Resource
- Apigee API (untuk mengotomatiskan pencadangan)