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 hanya dapat dikonfigurasi (yaitu, dibuat, diperbarui, dan/atau dihapus) melalui UI Apigee, API Apigee, atau alat yang menggunakan API, dan oleh pengguna dengan peran dan izin prasyarat. Misalnya, hanya admin org yang termasuk dalam organisasi tertentu yang dapat mengonfigurasi resource ini. Artinya, resource ini tidak dapat dikonfigurasi oleh pengguna akhir melalui portal developer, atau dengan cara lain. Referensi ini mencakup:
- Proxy API
- Alur bersama
- Produk API
- Cache
- KVM
- Keystore dan truststore
- Host virtual
- Server target
- File resource
Meskipun akses ke resource ini dibatasi, jika ada modifikasi yang dilakukan bahkan oleh pengguna yang diberi otorisasi, maka data historis akan ditimpa dengan data baru. Hal ini dikarenakan resource ini disimpan di Apigee hanya 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, sehingga Anda dapat menambahkan perubahan baru dan menyimpannya sebagai revisi baru atau mengembalikan perubahan dengan men-deploy revisi sebelumnya dari proxy API/alur bersama. Setiap saat, hanya ada satu revisi proxy API/alur bersama yang di-deploy di lingkungan, kecuali jika revisi 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 mengembalikan karena perubahan lama hanya ditimpa.
Audit dan Histori
Apigee menyediakan fitur Audit yang dapat membantu dalam skenario pemecahan masalah. Fitur ini memungkinkan Anda melihat informasi seperti siapa yang melakukan operasi tertentu (buat, baca, perbarui, hapus, deploy, dan batalkan deployment) dan kapan operasi dilakukan pada resource Apigee. Namun, jika ada operasi update atau hapus yang dilakukan pada salah satu resource Apigee, audit tidak dapat memberikan data yang lebih lama kepada Anda.
Antipola
Mengelola resource Apigee (yang 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 dimodifikasi 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 yang memerlukan data ini untuk traffic runtime.
Mari kita jelaskan hal ini dengan bantuan beberapa contoh dan jenis dampak yang dapat ditimbulkan jika data tidak dikelola melalui sistem kontrol sumber dan dimodifikasi/dihapus secara sadar atau tidak sadar:
Contoh 1: Penghapusan atau modifikasi proxy API
Saat proxy API dihapus, atau perubahan di-deploy pada revisi yang ada, kode sebelumnya tidak akan 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 yang dapat hilang.
Contoh 2: Penentuan proxy API menggunakan host virtual tertentu
Sertifikat di host virtual akan segera berakhir dan host virtual tersebut perlu diupdate. Mengidentifikasi proxy API mana yang menggunakan host virtual tersebut untuk tujuan pengujian mungkin sulit jika ada banyak proxy API. Jika proxy API dikelola dalam sistem SCM di luar Apigee, maka 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 detail konfigurasi keystore/truststore, termasuk sertifikat dan/atau kunci pribadi, disimpan dalam kontrol sumber.
Dampak
- Jika salah satu resource Apigee dihapus, resource dan isinya tidak dapat dipulihkan dari Apigee.
- Permintaan API dapat gagal dengan error yang tidak terduga yang menyebabkan gangguan hingga resource dipulihkan kembali ke status sebelumnya.
- Sulit untuk menelusuri saling ketergantungan antara proxy API dan resource lain di Apigee.
Praktik Terbaik
- Gunakan SCM standar yang dipasangkan 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 sudah ada, gunakan Apigee API untuk mendapatkan detail konfigurasinya sebagai payload JSON/XML dan simpan di pengelolaan kontrol sumber.
- Kelola setiap pembaruan baru pada resource ini di pengelolaan kontrol sumber.
- Jika ada kebutuhan untuk 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 dalam KVM terenkripsi.
Bacaan lebih lanjut
- Kontrol Versi untuk Pengembangan Proxy API
- Panduan untuk menerapkan CI di Apigee
- Plugin Deploy Maven untuk Proxy API
- Maven Config Plugin untuk mengelola Resources
- API Apigee (untuk mengotomatiskan pencadangan)