Jalur Pembelajaran: Menskalakan aplikasi - Pertimbangan produksi

Dalam serangkaian tutorial ini, beberapa pertimbangan perencanaan disederhanakan sehingga Anda dapat berfokus untuk mempelajari fitur dan layanan utama edisi Google Kubernetes Engine (GKE) Enterprise. Sebelum Anda mulai membuat lingkungan edisi Google Kubernetes Engine (GKE) Enterprise yang serupa dengan yang dijelaskan dalam kumpulan tutorial ini, ada beberapa pertimbangan perencanaan tambahan yang perlu diingat. Pertimbangan ini mencakup tingkat pengelolaan cluster, jaringan, dan jenis ketersediaan.

Networking

Cluster GKE memerlukan perencanaan alamat IP yang cermat. Opsi jaringan yang Anda pilih memengaruhi arsitektur cluster GKE. Beberapa opsi ini tidak dapat diubah setelah dikonfigurasi tanpa membuat ulang cluster.

Dalam serangkaian tutorial ini, Anda menggunakan cluster mode Autopilot yang selalu menggunakan jaringan mode native VPC. Cluster VPC native menggunakan rentang alamat IP alias pada node GKE, dan diperlukan untuk membuat cluster di VPC Bersama. Cluster VPC native menskalakan lebih mudah daripada cluster berbasis rute tanpa menggunakan rute Google Cloud, sehingga lebih tidak rentan terhadap batas pemilihan rute.

Sebelum membuat lingkungan GKE Enterprise Anda sendiri dan men-deploy beban kerja, tinjau panduan jaringan berikut:

Mode cluster

Dalam serangkaian tutorial ini, Anda akan membuat cluster GKE Enterprise regional yang menggunakan mode Autopilot. Cluster autopilot telah dikonfigurasi sebelumnya dengan konfigurasi cluster yang dioptimalkan dan siap untuk beban kerja produksi. Anda juga dapat menggunakan cluster mode Standar untuk fleksibilitas konfigurasi yang lebih canggih atas infrastruktur dasar.

Untuk ringkasan yang lebih komprehensif, tinjau dokumen perencanaan yang dimulai dengan pilihan konfigurasi cluster.

Namespace

Namespace memungkinkan Anda mengatur aplikasi dan mengisolasi komponen satu sama lain. Setiap namespace memiliki kumpulan resource-nya sendiri, seperti Pod, Layanan, dan Deployment. Misalnya, Anda dapat membuat namespace untuk semua layanan frontend dan namespace untuk layanan backend Anda. Pengelompokan ini mempermudah pengelolaan layanan dan mengontrol akses ke layanan tersebut.

Dalam kumpulan tutorial ini, Anda akan men-deploy Pod dan Service untuk aplikasi contoh Cymbal Bank ke dalam satu namespace. Pendekatan ini akan mengurangi kompleksitas deployment, tetapi tidak memungkinkan Anda menggunakan namespace untuk menetapkan resource ke tim dan pengguna yang berbeda, seperti yang mungkin Anda lakukan di lingkungan produksi. Anda juga tidak dapat memanfaatkan fitur pengelolaan tim GKE Enterprise, yang membantu menyusun fleet, namespace, dan izin agar tim dapat bertindak secara independen sebagai "tenant" terpisah di fleet Anda dengan resource mereka sendiri. Untuk contoh aplikasi contoh Cymbal Bank yang lebih aman dan siap produksi yang menggunakan beberapa namespace, lihat arsitektur aplikasi Cymbal Bank.

anggaran disrupsi pod

Kebijakan Anggaran Gangguan Pod (PDB) membantu memastikan performa aplikasi dengan mencegah Pod mati pada saat yang sama saat Anda melakukan perubahan pada sistem dan membatasi jumlah Pod yang tidak tersedia secara bersamaan dalam aplikasi yang direplikasi.

Dalam kumpulan tutorial ini, Anda tidak akan mengonfigurasi dan menggunakan PDB. Setelah menyelesaikan tutorial untuk menyimulasikan kegagalan, semua Layanan dan node Anda harus merespons seperti yang diharapkan. Ketika Anda men-deploy beban kerja Anda sendiri, PDB pada node mungkin memblokir pengosongan node.

Jika Anda menggunakan PDB, tinjau konfigurasi sebelum mencoba menghubungkan dan menguras node. Jika node tidak berhasil dikosongkan, Anda mungkin mengalami masalah dengan peristiwa pemeliharaan terjadwal.

Langkah selanjutnya

Mulailah dengan menyelesaikan tutorial pertama untuk men-deploy cluster GKE tunggal yang menjalankan aplikasi berbasis microservice.