Seiring perusahaan beralih ke pengembangan dan deployment aplikasi berbasis container, mereka harus mempelajari cara mengelola tim terdistribusi dengan alur kerja engineering yang terpisah. Untuk membantu perusahaan besar menyelesaikan peralihan ke aplikasi berbasis penampung, kami membuat cetak biru aplikasi perusahaan. Cetak biru ini men-deploy platform developer internal yang memungkinkan tim platform cloud menyediakan platform terkelola untuk pengembangan dan penyediaan software yang dapat digunakan oleh grup pengembangan aplikasi organisasi mereka.
Cetak biru aplikasi perusahaan mencakup hal berikut:
- Repositori GitHub yang berisi kumpulan konfigurasi dan skrip Terraform. Konfigurasi Terraform menyiapkan platform developer di Google Cloud yang mendukung beberapa tim pengembangan.
- Panduan untuk arsitektur, desain, kontrol keamanan, dan proses operasional yang akan Anda terapkan menggunakan cetak biru ini (dokumen ini).
Blueprint aplikasi perusahaan dirancang agar kompatibel dengan blueprint dasar-dasar perusahaan. Blueprint dasar-dasar perusahaan menyediakan sejumlah layanan tingkat dasar yang menjadi dasar blueprint aplikasi perusahaan, seperti Cloud Identity. Anda dapat men-deploy blueprint aplikasi perusahaan tanpa men-deploy blueprint dasar-dasar perusahaan jika lingkungan Google Cloud Anda menyediakan fungsi yang diperlukan untuk mendukung blueprint aplikasi perusahaan.
Dokumen ini ditujukan untuk arsitek cloud dan mengasumsikan bahwa Anda menggunakan cetak biru aplikasi perusahaan untuk men-deploy aplikasi perusahaan baru diGoogle Cloud. Namun, jika sudah memiliki aplikasi perusahaan yang di-container di Google Cloud, Anda dapat menerapkan arsitektur referensi ini secara bertahap.
Dokumen ini juga mengasumsikan bahwa Anda memahami komponen Kubernetes, termasuk layanan, namespace, dan cluster. Untuk informasi latar belakang tentang Kubernetes dan penerapannya di Google Cloud, lihat ringkasan teknis Google Kubernetes Engine.
Ringkasan blueprint aplikasi perusahaan
Di sebagian besar perusahaan, platform developer mengelola infrastruktur bersama yang digunakan oleh semua developer. Platform developer membuat pipeline build, pipeline deployment, dan lingkungan runtime untuk setiap komponen aplikasi sesuai permintaan. Tim developer dan operator aplikasi hanya memiliki akses ke komponen aplikasi yang menjadi tanggung jawab mereka. Platform ini dirancang untuk mendukung deployment aplikasi yang sangat tersedia dan aman.
Blueprint ini men-deploy platform developer di atas blueprint dasar-dasar perusahaan (atau yang setara). Platform developer mencakup resource seperti cluster Google Kubernetes Engine (GKE), fleet GKE, pabrik aplikasi, pipeline infrastruktur, pemantauan platform, dan logging platform. Selain itu, platform developer menyiapkan pengguna (administrator platform developer dan developer aplikasi) yang mengelola solusi.
Cetak biru ini memungkinkan organisasi memberikan akses ke platform kepada berbagai tim pengembangan aplikasi (yang disebut tenant). Tenant adalah grup pengguna dengan kepemilikan umum atas serangkaian resource. Tenant memiliki satu atau beberapa aplikasi yang berjalan di platform sebagai layanan berbasis container. Aplikasi di platform developer adalah kumpulan kode sumber dan konfigurasi. Setiap aplikasi dibangun dan di-deploy oleh pipeline CI/CD khusus. Tenant dan aplikasi diisolasi satu sama lain saat runtime dan di pipeline CI/CD. Bagian blueprint yang menyediakan otomatisasi digunakan oleh semua tenant, dan disebut multi-tenant.
Untuk menggambarkan cara penggunaan platform developer, cetak biru ini mencakup aplikasi contoh, yang disebut Cymbal Bank. Cymbal Bank adalah aplikasi microservice yang dirancang untuk berjalan di GKE. Aplikasi ini dimaksudkan untuk menyimulasikan aplikasi dengan ketersediaan tinggi yang di-deploy dalam konfigurasi aktif-aktif untuk mengaktifkan pemulihan dari bencana. Cymbal Bank mengasumsikan bahwa aplikasi dikembangkan dan dioperasikan oleh beberapa tim developer independen.
Langkah berikutnya
- Baca tentang arsitektur (dokumen berikutnya dalam rangkaian ini).