Dokumen ini memberikan arsitektur referensi untuk aplikasi multi-tingkat yang berjalan di VM Compute Engine dalam satu zona di Google Cloud. Anda dapat menggunakan arsitektur referensi ini untuk secara efisien menghosting ulang (lift and shift) aplikasi lokal ke cloud dengan perubahan minimal pada aplikasi. Dokumen ini juga menjelaskan faktor desain yang harus Anda pertimbangkan saat membangun arsitektur zonal untuk aplikasi cloud Anda. Audiens yang dituju untuk dokumen ini adalah arsitek cloud.
Arsitektur
Diagram berikut menunjukkan arsitektur untuk aplikasi yang berjalan di satu zona. Google Cloud Arsitektur ini selaras dengan Google Cloud arketipe deployment zonal.
Arsitektur ini didasarkan pada model cloud infrastructure as a service (IaaS). Anda menyediakan resource infrastruktur yang diperlukan (komputasi, jaringan, dan penyimpanan) di Google Cloud. Anda tetap memiliki kontrol penuh atas infrastruktur dan bertanggung jawab atas sistem operasi, middleware, dan lapisan yang lebih tinggi dari stack aplikasi. Untuk mempelajari lebih lanjut IaaS dan model cloud lainnya, lihat PaaS vs. IaaS vs. SaaS vs. CaaS: How are they different?
Diagram sebelumnya mencakup komponen berikut:
Komponen | Tujuan |
---|---|
Load balancer eksternal regional |
Load balancer eksternal regional menerima dan mendistribusikan permintaan pengguna ke VM tingkat web. |
Grup instance terkelola (MIG) zona untuk tingkat web | Tingkat web aplikasi di-deploy di VM Compute Engine yang merupakan bagian dari MIG zonal. MIG adalah backend untuk load balancer eksternal regional. Setiap VM dalam MIG menghosting instance independen dari tingkat web aplikasi. |
Load balancer internal regional |
Load balancer internal regional mendistribusikan traffic dari VM tingkat web ke VM tingkat aplikasi. |
MIG zona untuk tingkat aplikasi | Tingkat aplikasi di-deploy di VM Compute Engine yang merupakan bagian dari MIG zonal, yang merupakan backend untuk load balancer internal. Setiap VM di MIG menghosting instance independen dari tingkat aplikasi. |
Database pihak ketiga yang di-deploy di VM Compute Engine |
Arsitektur dalam dokumen ini menunjukkan database pihak ketiga (seperti PostgreSQL) yang di-deploy di VM Compute Engine. Anda dapat men-deploy database standby di zona lain. Kemampuan replikasi dan failover database bergantung pada database yang Anda gunakan. Menginstal dan mengelola database pihak ketiga memerlukan upaya tambahan dan biaya operasional untuk menerapkan update, memantau, dan memastikan ketersediaan. Anda dapat menghindari overhead penginstalan dan pengelolaan database pihak ketiga serta memanfaatkan fitur ketersediaan tinggi (HA) bawaan dengan menggunakan layanan database terkelola sepenuhnya seperti Cloud SQL atau AlloyDB untuk PostgreSQL. Untuk mengetahui informasi selengkapnya tentang opsi database terkelola, lihat Layanan database. |
Jaringan Virtual Private Cloud dan subnet |
Semua Google Cloud resource dalam arsitektur menggunakan satu jaringan dan subnet VPC. Bergantung pada persyaratan, Anda dapat memilih untuk membangun arsitektur yang menggunakan beberapa jaringan VPC atau beberapa subnet. Untuk mengetahui informasi selengkapnya, lihat Menentukan apakah akan membuat beberapa jaringan VPC atau tidak |
Bucket regional Cloud Storage |
Cadangan aplikasi dan database disimpan di bucket Cloud Storage regional. Jika terjadi pemadaman zona, aplikasi dan data Anda tidak akan hilang. Atau, Anda dapat menggunakan Layanan Pencadangan dan DR untuk membuat, menyimpan, dan mengelola pencadangan database. |
Produk yang digunakan
Arsitektur referensi ini menggunakan produk Google Cloud berikut:
- Compute Engine: Layanan komputasi yang aman dan dapat disesuaikan yang memungkinkan Anda membuat dan menjalankan VM di infrastruktur Google.
- Cloud Load Balancing: Portofolio load balancer global dan regional yang berperforma tinggi dan skalabel.
- Cloud Storage: Penyimpanan objek berbiaya rendah dan tanpa batas untuk beragam jenis data. Data dapat diakses dari dalam dan luar Google Cloud, serta direplikasi di berbagai lokasi untuk redundansi.
- Virtual Private Cloud (VPC): Sistem virtual yang menyediakan fungsionalitas jaringan global yang skalabel untuk workload Google Cloud Anda. VPC mencakup Peering Jaringan VPC, Private Service Connect, akses layanan pribadi, dan Shared VPC.
Kasus penggunaan
Bagian ini menjelaskan kasus penggunaan yang membuat deployment zona tunggal di Compute Engine menjadi pilihan yang tepat.
- Pengembangan dan pengujian cloud: Anda dapat menggunakan arsitektur deployment zona tunggal untuk membangun lingkungan cloud berbiaya rendah untuk pengembangan dan pengujian.
- Aplikasi yang tidak memerlukan HA: Arsitektur zona tunggal mungkin cukup untuk aplikasi yang dapat mentoleransi periode nonaktif karena pemadaman layanan infrastruktur.
- Jaringan latensi rendah dan berbiaya rendah antar-komponen aplikasi: Arsitektur zona tunggal mungkin sangat cocok untuk aplikasi seperti komputasi batch yang memerlukan koneksi jaringan latensi rendah dan bandwidth tinggi di antara node komputasi. Dengan deployment zona tunggal, tidak ada traffic jaringan lintas zona, dan Anda tidak dikenai biaya untuk traffic dalam zona.
- Migrasi workload komoditas: Arsitektur deployment per zona menyediakan jalur migrasi cloud untuk aplikasi komoditas lokal yang kode atau arsitekturnya tidak dapat Anda kontrol dan tidak dapat mendukung arsitektur di luar topologi aktif-pasif dasar.
- Menjalankan software yang dibatasi lisensinya: Arsitektur zona tunggal mungkin cocok untuk sistem yang dibatasi lisensinya, yang menjalankan lebih dari satu instance sekaligus terlalu mahal atau tidak diizinkan.
Pertimbangan desain
Bagian ini memberikan panduan untuk membantu Anda menggunakan arsitektur referensi ini guna mengembangkan arsitektur yang memenuhi persyaratan spesifik Anda untuk desain sistem, keamanan, keandalan, efisiensi operasional, biaya, dan performa.
Saat membangun arsitektur untuk workload Anda, pertimbangkan praktik terbaik dan rekomendasi dalam Google Cloud Well-Architected Framework.
Desain sistem
Bagian ini memberikan panduan untuk membantu Anda memilih Google Cloud region dan zona untuk deployment zonal Anda serta memilih layanan Google Cloud yang sesuai.
Pemilihan wilayah
Saat Anda memilih Google Cloud region tempat aplikasi Anda harus di-deploy, pertimbangkan faktor dan persyaratan berikut:
- Ketersediaan layanan Google Cloud di setiap region. Untuk mengetahui informasi selengkapnya, lihat Produk yang tersedia berdasarkan lokasi.
- Ketersediaan jenis mesin Compute Engine di setiap region. Untuk mengetahui informasi selengkapnya, lihat Region dan zona.
- Persyaratan latensi pengguna akhir.
- Biaya Google Cloud sumber daya.
- Biaya transfer data lintas region.
- Persyaratan peraturan.
Beberapa faktor dan persyaratan ini mungkin melibatkan kompromi. Misalnya, wilayah yang paling hemat biaya mungkin tidak memiliki jejak karbon terendah. Untuk mengetahui informasi selengkapnya, lihat Praktik terbaik untuk pemilihan region Compute Engine.
Infrastruktur komputasi
Arsitektur referensi dalam dokumen ini menggunakan VM Compute Engine untuk tingkat tertentu dari aplikasi. Bergantung pada persyaratan aplikasi, Anda dapat memilih dari layanan komputasi Google Cloud lainnya:
- Container: Anda dapat menjalankan aplikasi dalam container di cluster Google Kubernetes Engine (GKE). GKE adalah mesin orkestrasi container yang mengotomatiskan deployment, penskalaan, dan pengelolaan aplikasi dalam container.
- Serverless: jika Anda lebih suka memfokuskan upaya IT pada data dan aplikasi, bukan menyiapkan dan mengoperasikan resource infrastruktur, Anda dapat menggunakan layanan serverless seperti Cloud Run.
Keputusan apakah akan menggunakan VM, container, atau layanan serverless melibatkan kompromi antara fleksibilitas konfigurasi dan upaya pengelolaan. VM dan penampung memberikan fleksibilitas konfigurasi yang lebih besar, tetapi Anda bertanggung jawab untuk mengelola resource. Dalam arsitektur serverless, Anda men-deploy workload ke platform yang telah dikonfigurasi sebelumnya dan hanya memerlukan sedikit upaya pengelolaan. Untuk mengetahui informasi selengkapnya tentang memilih layanan komputasi yang sesuai untuk workload Anda diGoogle Cloud, lihat Menghosting Aplikasi di Google Cloud.
Layanan penyimpanan
Arsitektur yang ditampilkan dalam dokumen ini menggunakan volume Persistent Disk zonal untuk semua tingkat. Untuk penyimpanan persisten yang lebih andal, Anda dapat menggunakan volume Persistent Disk regional, yang menyediakan replikasi data sinkron di dua zona dalam satu region.
Untuk penyimpanan berbiaya rendah yang redundan di seluruh zona dalam suatu region, Anda dapat menggunakan bucket regional Cloud Storage.
Untuk menyimpan data yang dibagikan di beberapa VM dalam satu region, seperti di semua VM di tingkat web atau tingkat aplikasi, Anda dapat menggunakan instance regional Filestore. Data yang Anda simpan di instance regional Filestore direplikasi secara sinkron di tiga zona dalam region tersebut. Replikasi ini memastikan ketersediaan tinggi dan ketahanan terhadap pemadaman layanan zona. Anda dapat menyimpan file konfigurasi bersama, alat dan utilitas umum, serta log terpusat di instance Filestore, dan memasang instance tersebut di beberapa VM.
Jika database Anda adalah Microsoft SQL Server, sebaiknya gunakan Cloud SQL untuk SQL Server. Dalam skenario saat Cloud SQL tidak mendukung persyaratan konfigurasi Anda, atau jika Anda memerlukan akses ke sistem operasi, Anda dapat men-deploy instance cluster failover (FCI). Dalam skenario ini, Anda dapat menggunakan Google Cloud NetApp Volumes yang terkelola sepenuhnya untuk menyediakan penyimpanan SMB dengan ketersediaan berkelanjutan (CA) untuk database.
Saat Anda mendesain penyimpanan untuk workload, pertimbangkan karakteristik fungsional, persyaratan ketahanan, ekspektasi performa, dan target biaya. Untuk mengetahui informasi selengkapnya, lihat Mendesain strategi penyimpanan yang optimal untuk workload cloud Anda.
Layanan database
Arsitektur referensi dalam dokumen ini menggunakan database pihak ketiga yang di-deploy di VM Compute Engine. Menginstal dan mengelola database pihak ketiga memerlukan upaya dan biaya untuk operasi seperti menerapkan update, memantau dan memastikan ketersediaan, melakukan pencadangan, dan memulihkan dari kegagalan.
Anda dapat menghindari upaya dan biaya untuk menginstal dan mengelola database pihak ketiga dengan menggunakan layanan database yang terkelola sepenuhnya seperti Cloud SQL, AlloyDB untuk PostgreSQL, Bigtable, Spanner, atau Firestore. Layanan database Google Cloud ini menyediakan perjanjian tingkat layanan (SLA) waktu aktif, dan mencakup kemampuan default untuk skalabilitas dan kemampuan pengamatan.
Jika beban kerja Anda memerlukan database Oracle, Anda dapat men-deploy database di VM Compute Engine atau menggunakan Oracle Database@Google Cloud. Untuk mengetahui informasi selengkapnya, lihat Workload Oracle di Google Cloud.
Keamanan, privasi, dan kepatuhan
Bagian ini menjelaskan faktor-faktor yang harus Anda pertimbangkan saat menggunakan arsitektur referensi ini untuk mendesain dan membangun topologi zonal di Google Cloud yang memenuhi persyaratan keamanan dan kepatuhan beban kerja Anda.
Perlindungan terhadap ancaman eksternal
Untuk melindungi aplikasi Anda dari ancaman seperti serangan distributed denial of service (DDoS) dan pembuatan skrip lintas situs (XSS), Anda dapat menggunakan kebijakan keamanan Google Cloud Armor. Setiap kebijakan adalah serangkaian aturan yang menentukan kondisi tertentu yang harus dievaluasi dan tindakan yang harus diambil jika kondisi tersebut terpenuhi. Misalnya, aturan dapat menentukan bahwa jika alamat IP sumber traffic masuk cocok dengan alamat IP atau rentang CIDR tertentu, maka traffic harus ditolak. Anda juga dapat menerapkan aturan firewall aplikasi web (WAF) yang telah dikonfigurasi sebelumnya. Untuk mengetahui informasi selengkapnya, lihat Ringkasan kebijakan keamanan.
Akses eksternal untuk VM
Dalam arsitektur referensi yang dijelaskan dalam dokumen ini, VM Compute Engine tidak memerlukan akses masuk dari internet. Jangan tetapkan alamat IP eksternal ke VM. Google Cloud Resource yang hanya memiliki alamat IP internal pribadi masih dapat mengakses API dan layanan Google tertentu menggunakan Private Service Connect atau Akses Google Pribadi. Untuk informasi selengkapnya, lihat Opsi akses pribadi untuk layanan.
Untuk mengaktifkan koneksi keluar yang aman dari resource Google Cloud yang hanya memiliki alamat IP pribadi, seperti VM Compute Engine dalam arsitektur referensi ini, Anda dapat menggunakan Secure Web Proxy atau Cloud NAT.
Hak istimewa akun layanan
Untuk VM Compute Engine dalam arsitektur, daripada menggunakan akun layanan default, sebaiknya buat akun layanan khusus dan tentukan resource yang dapat diakses oleh akun layanan tersebut. Akun layanan default mencakup berbagai izin yang tidak diperlukan dalam instance ini, sedangkan Anda dapat menyesuaikan akun layanan khusus agar hanya memiliki izin yang diperlukan. Untuk mengetahui informasi selengkapnya, lihat Membatasi hak istimewa akun layanan.
Keamanan SSH
Untuk meningkatkan keamanan koneksi SSH ke VM Compute Engine dalam arsitektur ini, terapkan penerusan Identity-Aware Proxy (IAP) dengan Cloud OS Login API. Dengan IAP, Anda dapat mengontrol akses jaringan berdasarkan identitas pengguna dan kebijakan Identity and Access Management (IAM). Cloud OS Login API memungkinkan Anda mengontrol akses SSH Linux berdasarkan identitas pengguna dan kebijakan IAM. Untuk mengetahui informasi selengkapnya tentang cara mengelola akses jaringan, lihat Praktik terbaik untuk mengontrol akses login SSH.
Keamanan jaringan
Untuk mengontrol traffic jaringan antara resource dalam arsitektur, Anda harus mengonfigurasi kebijakan Cloud Firewall Generasi Berikutnya (NGFW) yang sesuai.
Setiap aturan firewall memungkinkan Anda mengontrol traffic berdasarkan parameter seperti protokol, alamat IP, dan port. Misalnya, Anda dapat mengonfigurasi aturan firewall untuk mengizinkan traffic TCP dari VM server web ke port tertentu pada VM database, dan memblokir semua traffic lainnya.
Pertimbangan keamanan lainnya
Saat membangun arsitektur untuk workload Anda, pertimbangkan praktik terbaik dan rekomendasi keamanan tingkat platform yang disediakan dalam Blueprint fondasi perusahaan dan Google Cloud Framework yang Dirancang dengan Baik: Keamanan, privasi, dan kepatuhan.
Keandalan
Bagian ini menjelaskan faktor desain yang harus Anda pertimbangkan saat menggunakan arsitektur referensi ini untuk membangun dan mengoperasikan infrastruktur yang andal untuk deployment zonal Anda di Google Cloud.
Ketahanan terhadap gangguan infrastruktur
Dalam arsitektur deployment zona tunggal, jika ada komponen dalam stack infrastruktur yang gagal, aplikasi dapat memproses permintaan jika setiap tingkat berisi setidaknya satu komponen yang berfungsi dengan kapasitas yang memadai. Misalnya, jika instance server web gagal, load balancer akan meneruskan permintaan pengguna ke instance server web lain yang tersedia. Jika VM yang menghosting server web atau instance server aplikasi tidak berfungsi, MIG akan membuat ulang VM secara otomatis. Jika database tidak berfungsi, Anda harus mengaktifkan database kedua secara manual dan memperbarui instance server aplikasi agar dapat terhubung ke database.
Pemadaman layanan zona atau pemadaman layanan region akan memengaruhi semua VM Compute Engine dalam deployment zona tunggal. Pemadaman layanan zona tidak memengaruhi load balancer dalam arsitektur ini karena merupakan resource regional. Namun, load balancer tidak dapat mendistribusikan traffic karena tidak ada backend yang tersedia. Jika terjadi pemadaman layanan zona atau region, Anda harus menunggu hingga Google menyelesaikan pemadaman layanan tersebut, lalu pastikan bahwa aplikasi berfungsi seperti yang diharapkan.
Anda dapat mengurangi periode nonaktif yang disebabkan oleh pemadaman layanan zona atau region dengan mempertahankan replika pasif (failover) stack infrastruktur diGoogle Cloud zona atau region lain. Jika terjadi pemadaman layanan di zona utama, Anda dapat mengaktifkan stack di zona atau region failover, dan menggunakan kebijakan perutean DNS untuk merutekan traffic ke load balancer di zona atau region failover.
Untuk aplikasi yang memerlukan ketahanan terhadap pemadaman layanan zona atau region, pertimbangkan untuk menggunakan arsitektur regional atau multi-regional. Lihat arsitektur referensi berikut:
Penskalaan otomatis MIG
Kemampuan penskalaan otomatis MIG stateless memungkinkan Anda mempertahankan ketersediaan dan performa aplikasi pada tingkat yang dapat diprediksi.
Untuk mengontrol perilaku penskalaan otomatis MIG stateless, Anda dapat menentukan metrik pemakaian target, seperti pemakaian CPU rata-rata. Anda juga dapat mengonfigurasi penskalaan otomatis berbasis jadwal untuk MIG stateless. MIG stateful tidak dapat diskalakan otomatis. Untuk informasi selengkapnya, lihat Penskalaan otomatis grup instance.
Batas ukuran MIG
Saat Anda memutuskan ukuran MIG, pertimbangkan batas default dan maksimum pada jumlah VM yang dapat dibuat dalam MIG. Untuk mengetahui informasi selengkapnya, lihat Menambahkan dan menghapus VM dari MIG.
Autohealing VM
Terkadang VM yang menghosting aplikasi Anda mungkin berjalan dan tersedia, tetapi mungkin ada masalah dengan aplikasi itu sendiri. Aplikasi mungkin berhenti berfungsi, error, atau tidak memiliki memori yang cukup. Untuk memverifikasi apakah aplikasi merespons seperti yang diharapkan, Anda dapat mengonfigurasi health check berbasis aplikasi sebagai bagian dari kebijakan autohealing MIG. Jika aplikasi pada VM tertentu tidak merespons, MIG akan melakukan pemulihan otomatis (perbaikan) pada VM tersebut. Untuk mengetahui informasi selengkapnya tentang mengonfigurasi penyembuhan otomatis, lihat Tentang memperbaiki VM untuk ketersediaan tinggi.
Penempatan VM
Dalam arsitektur yang dijelaskan dalam dokumen ini, tingkat aplikasi dan tingkat web berjalan di VM Compute Engine dalam satu zona.
Untuk meningkatkan keandalan arsitektur, Anda dapat membuat kebijakan penempatan spread dan menerapkannya ke template MIG. Saat membuat VM, MIG akan menempatkan VM dalam setiap zona di server fisik yang berbeda (disebut host), sehingga VM Anda tahan terhadap kegagalan host individual. Untuk mengetahui informasi selengkapnya, lihat Membuat dan menerapkan kebijakan penempatan spread ke VM.
Perencanaan kapasitas VM
Untuk memastikan kapasitas VM Compute Engine tersedia saat VM perlu disediakan, Anda dapat membuat pemesanan. Reservasi memberikan kapasitas yang pasti di zona tertentu untuk jumlah VM yang ditentukan dari jenis mesin yang Anda pilih. Reservasi dapat bersifat khusus untuk satu project, atau dibagikan di beberapa project. Untuk mengetahui informasi selengkapnya tentang reservasi, lihat Memilih jenis reservasi.
Penyimpanan berstatus
Praktik terbaik dalam desain aplikasi adalah menghindari kebutuhan akan disk lokal stateful. Namun, jika persyaratan tersebut ada, Anda dapat mengonfigurasi persistent disk agar bersifat stateful untuk memastikan data dipertahankan saat VM diperbaiki atau dibuat ulang. Namun, sebaiknya Anda menjaga boot disk tetap stateless, sehingga Anda dapat mengupdatenya ke image terbaru dengan versi baru dan patch keamanan. Untuk mengetahui informasi selengkapnya, lihat Mengonfigurasi persistent disk stateful di MIG.
Ketahanan data
Anda dapat menggunakan Backup and DR untuk membuat, menyimpan, dan mengelola cadangan VM Compute Engine. Backup and DR menyimpan data cadangan dalam format aslinya yang dapat dibaca aplikasi. Jika diperlukan, Anda dapat memulihkan workload ke produksi dengan menggunakan data langsung dari penyimpanan cadangan jangka panjang dan tidak perlu menyiapkan atau memindahkan data.
Compute Engine menyediakan opsi berikut untuk membantu Anda memastikan durabilitas data yang disimpan dalam volume Persistent Disk:
- Anda dapat menggunakan snapshot untuk merekam status volume Persistent Disk pada waktu tertentu. Snapshot disimpan secara redundan di beberapa region, dengan checksum otomatis untuk memastikan integritas data Anda. Snapshot bersifat inkremental secara default, sehingga menggunakan lebih sedikit ruang penyimpanan dan Anda dapat menghemat uang. Snapshot disimpan di lokasi Cloud Storage yang dapat Anda konfigurasi. Untuk rekomendasi selengkapnya tentang penggunaan dan pengelolaan snapshot, lihat Praktik terbaik untuk snapshot disk Compute Engine.
- Untuk memastikan data di Persistent Disk tetap tersedia jika terjadi pemadaman zona, Anda dapat menggunakan Regional Persistent Disk atau Hyperdisk Balanced High Availability. Data dalam jenis disk ini direplikasi secara sinkron antara dua zona di region yang sama. Untuk mengetahui informasi selengkapnya, lihat Tentang replikasi disk sinkron.
Ketersediaan database
Jika Anda menggunakan layanan database terkelola seperti Cloud SQL dalam konfigurasi HA, maka jika terjadi kegagalan database utama, Cloud SQL akan otomatis melakukan failover ke database standby. Anda tidak perlu mengubah alamat IP untuk endpoint database. Jika Anda menggunakan database pihak ketiga yang dikelola sendiri yang di-deploy di VM Compute Engine, Anda harus menggunakan load balancer internal atau mekanisme lain untuk memastikan aplikasi dapat terhubung ke database lain jika database utama tidak tersedia.
Untuk menerapkan failover lintas zona bagi database yang di-deploy di VM Compute Engine, Anda memerlukan mekanisme untuk mengidentifikasi kegagalan database utama dan proses untuk melakukan failover ke database standby. Detail mekanisme failover bergantung pada database yang Anda gunakan. Anda dapat menyiapkan instance pengamat untuk mendeteksi kegagalan database utama dan mengatur failover. Anda harus mengonfigurasi aturan failover dengan tepat untuk menghindari situasi split-brain dan mencegah failover yang tidak perlu. Untuk contoh arsitektur yang dapat Anda gunakan untuk menerapkan failover database PostgreSQL, lihat Arsitektur untuk ketersediaan tinggi cluster PostgreSQL di Compute Engine.
Pertimbangan keandalan lainnya
Saat membangun arsitektur cloud untuk workload Anda, tinjau praktik terbaik dan rekomendasi terkait keandalan yang diberikan dalam dokumentasi berikut:
- Google Cloud panduan keandalan infrastruktur
- Pola untuk aplikasi yang skalabel dan tangguh
- Merancang sistem yang tangguh
- Google Cloud Well-Architected Framework: Keandalan
Pengoptimalan biaya
Bagian ini memberikan panduan untuk mengoptimalkan biaya penyiapan dan pengoperasian topologi Google Cloud zonal yang Anda bangun menggunakan arsitektur referensi ini.
Jenis mesin VM
Untuk membantu mengoptimalkan penggunaan resource pada instance VM Anda, Compute Engine memberikan rekomendasi jenis mesin. Gunakan rekomendasi untuk memilih jenis mesin yang sesuai dengan persyaratan komputasi workload Anda. Untuk workload dengan persyaratan resource yang dapat diprediksi, Anda dapat menyesuaikan jenis mesin dengan kebutuhan Anda dan menghemat uang dengan menggunakan jenis mesin kustom.
Model penyediaan VM
Jika aplikasi Anda fault-tolerant, Spot VM dapat membantu mengurangi biaya Compute Engine untuk VM di tingkat aplikasi dan web. Biaya Spot VM jauh lebih rendah daripada VM reguler. Namun, Compute Engine dapat menghentikan atau menghapus Spot VM secara preemptif untuk mengklaim kembali kapasitas.
Spot VM cocok untuk tugas batch yang dapat mentoleransi penghentian dan tidak memiliki persyaratan ketersediaan tinggi. Spot VM menawarkan jenis, opsi, dan performa mesin yang sama dengan VM reguler. Namun, saat kapasitas resource di zona terbatas, MIG mungkin tidak dapat melakukan penskalaan (yaitu, membuat VM) secara otomatis ke ukuran target yang ditentukan hingga kapasitas yang diperlukan tersedia kembali.
Penggunaan resource VM
Kemampuan penskalaan otomatis MIG stateless memungkinkan aplikasi Anda menangani peningkatan traffic dengan baik, dan membantu Anda mengurangi biaya saat kebutuhan resource rendah. MIG stateful tidak dapat diskalakan otomatis.
Pemberian lisensi pihak ketiga
Saat memigrasikan workload pihak ketiga ke Google Cloud, Anda mungkin dapat mengurangi biaya dengan menggunakan bring your own license (BYOL). Misalnya, untuk men-deploy VM Microsoft Windows Server, daripada menggunakan image premium yang menimbulkan biaya tambahan untuk lisensi pihak ketiga, Anda dapat membuat dan menggunakan image BYOL Windows kustom. Kemudian, Anda hanya membayar infrastruktur VM yang digunakan di Google Cloud. Strategi ini membantu Anda terus merealisasikan nilai dari investasi yang ada dalam lisensi pihak ketiga. Jika Anda memutuskan untuk menggunakan pendekatan BYOL, rekomendasi berikut dapat membantu mengurangi biaya:
- Sediakan jumlah core CPU komputasi yang diperlukan secara terpisah dari memori dengan menggunakan jenis mesin kustom. Dengan melakukannya, Anda membatasi biaya lisensi pihak ketiga untuk jumlah core CPU yang Anda butuhkan.
- Kurangi jumlah vCPU per inti dari 2 menjadi 1 dengan menonaktifkan multithreading simultan (SMT).
Jika Anda men-deploy database pihak ketiga seperti Microsoft SQL Server di VM Compute Engine, Anda harus mempertimbangkan biaya lisensi untuk software pihak ketiga tersebut. Saat Anda menggunakan layanan database terkelola seperti Cloud SQL, biaya lisensi database disertakan dalam biaya untuk layanan tersebut.
Pertimbangan biaya lainnya
Saat membangun arsitektur untuk workload Anda, pertimbangkan juga praktik terbaik dan rekomendasi umum yang diberikan dalam Google Cloud Well-Architected Framework: Pengoptimalan biaya.
Efisiensi operasional
Bagian ini menjelaskan faktor-faktor yang harus Anda pertimbangkan saat menggunakan arsitektur referensi ini untuk mendesain dan membangun topologi Google Cloud zonal yang dapat Anda operasikan secara efisien.
Pembaruan konfigurasi VM
Untuk memperbarui konfigurasi VM di MIG (seperti jenis mesin atau image boot disk), Anda membuat template instance baru dengan konfigurasi yang diperlukan, lalu menerapkan template baru ke MIG. MIG mengupdate VM menggunakan metode update yang Anda pilih: otomatis atau selektif. Pilih metode yang sesuai berdasarkan persyaratan Anda terkait ketersediaan dan efisiensi operasional. Untuk mengetahui informasi selengkapnya tentang metode update MIG ini, lihat Menerapkan konfigurasi VM baru di MIG.
Image VM
Untuk VM Anda, daripada menggunakan image publik yang disediakan Google, sebaiknya buat dan gunakan image OS kustom yang berisi konfigurasi dan software yang diperlukan aplikasi Anda. Anda dapat mengelompokkan image kustom ke dalam kelompok image kustom. Kelompok image selalu mengarah ke image terbaru dalam kelompok tersebut, sehingga template dan skrip instance dapat menggunakan image tersebut tanpa Anda harus memperbarui referensi ke versi image tertentu. Anda harus memperbarui image kustom secara rutin untuk menyertakan update dan patch keamanan yang disediakan oleh vendor OS.
Template instance deterministik
Jika template instance yang Anda gunakan untuk MIG menyertakan skrip startup untuk menginstal software pihak ketiga, pastikan skrip tersebut secara eksplisit menentukan parameter penginstalan software seperti versi software. Jika tidak, saat MIG membuat VM, software yang diinstal di VM mungkin tidak konsisten. Misalnya, jika template instance Anda menyertakan skrip startup untuk menginstal Apache HTTP Server 2.0 (paket apache2
), pastikan skrip tersebut menentukan versi apache2
yang tepat yang harus diinstal, seperti versi 2.4.53
. Untuk mengetahui informasi selengkapnya, lihat
Template instance deterministik.
Pertimbangan operasional lainnya
Saat membangun arsitektur untuk workload Anda, pertimbangkan praktik terbaik dan rekomendasi umum untuk efisiensi operasional yang dijelaskan dalam Google Cloud Framework yang Dirancang dengan Baik: Keunggulan operasional.
Pengoptimalan performa
Bagian ini menjelaskan faktor-faktor yang harus Anda pertimbangkan saat menggunakan arsitektur referensi ini untuk mendesain dan membangun topologi zonal di Google Cloud yang memenuhi persyaratan performa beban kerja Anda.
Performa compute
Compute Engine menawarkan berbagai jenis mesin yang telah ditetapkan dan dapat disesuaikan untuk workload yang Anda jalankan di VM. Pilih jenis mesin yang sesuai berdasarkan persyaratan performa Anda. Untuk mengetahui informasi selengkapnya, lihat Panduan perbandingan dan resource kelompok mesin.
Multithreading VM
Setiap CPU virtual (vCPU) yang Anda alokasikan ke VM Compute Engine diimplementasikan sebagai hardware multithread tunggal. Secara default, dua vCPU berbagi core CPU fisik. Untuk aplikasi yang melibatkan operasi paralel tingkat tinggi atau yang melakukan penghitungan floating point (seperti analisis urutan genetik, dan pemodelan risiko keuangan), Anda dapat meningkatkan performa dengan mengurangi jumlah thread yang berjalan pada setiap inti CPU fisik. Untuk informasi selengkapnya, lihat Menetapkan jumlah thread per core.
Multithreading VM mungkin memiliki implikasi pemberian lisensi untuk beberapa software pihak ketiga, seperti database. Untuk mengetahui informasi selengkapnya, baca dokumentasi pemberian lisensi untuk software pihak ketiga.
Network Service Tiers
Dengan Network Service Tiers, Anda dapat mengoptimalkan biaya jaringan dan performa workload. Anda dapat memilih Paket Premium atau Paket Standar. Paket Premium mengirimkan traffic di backbone global Google untuk meminimalkan kehilangan paket dan latensi rendah. Tingkat Standar mengirimkan traffic menggunakan peering, penyedia layanan internet (ISP), atau jaringan transit di titik kehadiran (PoP) edge yang terdekat dengan region tempat workload Anda berjalan. Google Cloud Untuk mengoptimalkan performa, sebaiknya gunakan Paket Premium. Untuk mengoptimalkan biaya, sebaiknya gunakan Paket Standar.
Performa jaringan
Untuk workload yang memerlukan latensi jaringan antar-VM yang rendah dalam tingkat aplikasi dan web, Anda dapat membuat kebijakan penempatan yang ringkas dan menerapkannya ke template MIG yang digunakan untuk tingkat tersebut. Saat membuat VM, MIG akan menempatkan VM di server fisik yang berdekatan satu sama lain. Meskipun kebijakan penempatan rapat membantu meningkatkan performa jaringan antar-VM, kebijakan penempatan spread dapat membantu meningkatkan ketersediaan VM seperti yang dijelaskan sebelumnya. Untuk mencapai keseimbangan yang optimal antara performa dan ketersediaan jaringan, saat membuat kebijakan penempatan yang ringkas, Anda dapat menentukan seberapa jauh VM harus ditempatkan. Untuk mengetahui informasi selengkapnya, lihat Ringkasan kebijakan penempatan.
Compute Engine memiliki batas per VM untuk bandwidth jaringan traffic keluar. Batas ini bergantung pada jenis mesin VM dan apakah traffic dirutekan melalui jaringan VPC yang sama dengan VM sumber. Untuk VM dengan jenis mesin tertentu, guna meningkatkan performa jaringan, Anda bisa mendapatkan bandwidth keluar maksimum yang lebih tinggi dengan mengaktifkan jaringan Tier_1.
Pertimbangan performa lainnya
Saat membangun arsitektur untuk workload Anda, pertimbangkan praktik terbaik dan rekomendasi umum yang diberikan dalam Google Cloud Framework yang Dirancang dengan Baik: Pengoptimalan performa.
Langkah berikutnya
- Pelajari lebih lanjut produk Google Cloud yang digunakan dalam arsitektur referensi ini:
- Mulai memigrasikan workload Anda ke Google Cloud.
- Jelajahi dan evaluasi arketipe deployment yang dapat Anda pilih untuk membangun arsitektur bagi workload cloud Anda.
- Tinjau opsi arsitektur untuk mendesain infrastruktur yang andal untuk workload Anda di Google Cloud.
- Untuk mengetahui lebih banyak tentang arsitektur referensi, diagram, dan praktik terbaik lainnya, jelajahi Pusat Arsitektur Cloud.
Kontributor
Penulis:
- Kumar Dhanagopal | Cross-Product Solution Developer
- Samantha He | Technical Writer
Kontributor lainnya:
- Ben Good | Solutions Architect
- Carl Franklin | Director, PSO Enterprise Architecture
- Daniel Lees | Cloud Security Architect
- Gleb Otochkin | Cloud Advocate, Databases
- Mark Schlagenhauf | Technical Writer, Networking
- Pawel Wenda | Group Product Manager
- Sean Derrington | Group Outbound Product Manager, Storage
- Sekou Page | Outbound Product Manager
- Simon Bennett | Group Product Manager
- Steve McGhee | Reliability Advocate
- Victor Moreno | Product Manager, Cloud Networking