Pola arsitektur terdistribusi

Last reviewed 2023-12-14 UTC

Saat bermigrasi dari lingkungan komputasi non-hybrid atau non-multicloud ke arsitektur hybrid atau multicloud, pertimbangkan terlebih dahulu batasan aplikasi yang sudah ada dan bagaimana batasan tersebut dapat menyebabkan kegagalan aplikasi. Pertimbangan ini menjadi lebih penting saat aplikasi atau komponen aplikasi Anda beroperasi secara terdistribusi di berbagai lingkungan. Setelah mempertimbangkan kendala Anda, kembangkan rencana untuk menghindari atau mengatasinya. Pastikan untuk mempertimbangkan kemampuan unik setiap lingkungan komputasi dalam arsitektur terdistribusi.

Pertimbangan desain

Pertimbangan desain berikut berlaku untuk pola deployment terdistribusi. Bergantung pada solusi target dan tujuan bisnis, prioritas dan dampak dari setiap pertimbangan dapat bervariasi.

Latensi

Pada pola arsitektur apa pun yang mendistribusikan komponen aplikasi (frontend, backend, atau microservice) di berbagai lingkungan komputasi, latensi komunikasi dapat terjadi. Latensi ini dipengaruhi oleh konektivitas jaringan hybrid (Cloud VPN dan Cloud Interconnect) dan jarak geografis antara situs lokal dan region cloud, atau antar-region cloud dalam penyiapan multicloud. Oleh karena itu, sangat penting untuk menilai persyaratan latensi aplikasi Anda dan sensitivitasnya terhadap keterlambatan jaringan. Aplikasi yang dapat menoleransi latensi merupakan kandidat yang lebih cocok untuk deployment terdistribusi awal dalam lingkungan hybrid atau multicloud.

Arsitektur status sementara versus final

Untuk menentukan ekspektasi dan potensi implikasi biaya, skala, dan performa, penting untuk menganalisis jenis arsitektur yang Anda perlukan dan durasi yang diinginkan sebagai bagian dari tahap perencanaan. Misalnya, jika Anda berencana menggunakan arsitektur hybrid atau multicloud dalam waktu lama atau secara permanen, sebaiknya pertimbangkan untuk menggunakan Cloud Interconnect. Untuk mengurangi biaya transfer data keluar dan mengoptimalkan performa jaringan konektivitas hybrid, Cloud Interconnect memberikan diskon untuk biaya transfer data keluar yang memenuhi kondisi kecepatan transfer data berdiskon.

Keandalan

Keandalan adalah pertimbangan utama saat merancang sistem IT. Ketersediaan waktu beroperasi adalah aspek penting dari keandalan sistem. Di Google Cloud, Anda dapat meningkatkan ketahanan aplikasi dengan men-deploy komponen redundan dari aplikasi tersebut di beberapa zona dalam satu region, atau di beberapa region, dengan kemampuan peralihan. Redundansi adalah salah satu elemen utama untuk meningkatkan ketersediaan aplikasi secara keseluruhan. Untuk aplikasi dengan konfigurasi terdistribusi di lingkungan hybrid dan multicloud, penting untuk mempertahankan tingkat ketersediaan yang konsisten.

Untuk meningkatkan ketersediaan sistem di lingkungan lokal, atau di lingkungan cloud lain, pertimbangkan redundansi hardware atau software—dengan mekanisme failover—yang Anda perlukan untuk aplikasi dan komponennya. Idealnya, Anda harus mempertimbangkan ketersediaan layanan atau aplikasi di berbagai komponen dan infrastruktur pendukung (termasuk ketersediaan konektivitas hybrid) di semua lingkungan. Konsep ini juga disebut sebagai ketersediaan gabungan aplikasi atau layanan.

Berdasarkan dependensi antara komponen atau layanan, ketersediaan gabungan untuk aplikasi mungkin lebih tinggi atau lebih rendah daripada untuk masing-masing layanan atau komponen. Untuk informasi selengkapnya, lihat Ketersediaan gabungan: menghitung ketersediaan keseluruhan infrastruktur cloud.

Untuk mencapai tingkat keandalan sistem yang Anda inginkan, tentukan metrik keandalan yang jelas dan desain aplikasi untuk memulihkan sendiri dan menahan gangguan secara efektif di berbagai lingkungan. Untuk membantu Anda menentukan cara yang tepat untuk mengukur pengalaman pelanggan atas layanan, lihat Menentukan sasaran keandalan.

Konektivitas hybrid dan multicloud

Persyaratan komunikasi antara komponen aplikasi terdistribusi harus memengaruhi pilihan opsi konektivitas jaringan hibrida. Setiap opsi konektivitas memiliki kelebihan dan kekurangan, serta driver tertentu yang perlu dipertimbangkan, seperti biaya, volume traffic, keamanan, dan sebagainya. Untuk mengetahui informasi selengkapnya, lihat bagian pertimbangan desain konektivitas.

Kemudahan dikelola

Alat pengelolaan dan pemantauan yang konsisten dan terpadu sangat penting untuk penyiapan hybrid dan multicloud yang sukses (dengan atau tanpa portabilitas workload). Dalam jangka pendek, alat ini dapat menambah biaya pengembangan, pengujian, dan operasi. Secara teknis, semakin banyak penyedia cloud yang Anda gunakan, semakin kompleks pengelolaan lingkungan. Sebagian besar vendor cloud publik tidak hanya memiliki fitur yang berbeda-beda, tetapi juga memiliki beragam alat, SLA, dan API untuk mengelola layanan cloud. Oleh karena itu, pertimbangkan keuntungan strategis arsitektur yang dipilih terhadap potensi kompleksitas jangka pendek versus manfaat jangka panjang.

Biaya

Setiap penyedia layanan cloud di lingkungan multicloud memiliki metrik dan alat penagihannya sendiri. Untuk memberikan visibilitas yang lebih baik dan dasbor terpadu, pertimbangkan untuk menggunakan alat pengelolaan dan pengoptimalan biaya multicloud. Misalnya, saat membangun solusi cloud-first di beberapa lingkungan cloud, setiap produk, harga, diskon, dan alat pengelolaan penyedia dapat menciptakan inkonsistensi biaya di antara lingkungan tersebut.

Sebaiknya miliki satu metode yang terdefinisi dengan baik untuk menghitung biaya penuh resource cloud, dan untuk memberikan visibilitas biaya. Visibilitas biaya sangat penting untuk pengoptimalan biaya. Misalnya, dengan menggabungkan data penagihan dari penyedia cloud yang Anda gunakan dan menggunakan Blok Pengelolaan Biaya Cloud Looker dari Google Cloud, Anda dapat membuat tampilan terpusat biaya multicloud Anda. Tampilan ini dapat membantu memberikan tampilan pelaporan gabungan dari pembelanjaan Anda di beberapa cloud. Untuk mengetahui informasi selengkapnya, lihat Strategi untuk mengoptimalkan pengelolaan biaya penagihan cloud secara efektif.

Sebaiknya gunakan juga praktik FinOps untuk memperjelas biaya. Sebagai bagian dari praktik FinOps yang kuat, tim pusat dapat mendelegasikan pengambilan keputusan untuk pengoptimalan resource kepada tim lain yang terlibat dalam suatu project guna mendorong akuntabilitas individual. Dalam model ini, tim pusat harus menstandarkan proses, pelaporan, dan alat untuk pengoptimalan biaya. Untuk mengetahui informasi selengkapnya tentang berbagai aspek pengoptimalan biaya dan rekomendasi yang sebaiknya Anda pertimbangkan, lihat Framework Arsitektur Google Cloud: Pengoptimalan biaya.

Perpindahan data

Pergerakan data adalah pertimbangan penting untuk perencanaan arsitektur serta strategi hybrid dan multicloud, terutama untuk sistem terdistribusi. Perusahaan perlu mengidentifikasi berbagai kasus penggunaan bisnis mereka, data yang mendukung mereka, dan cara data diklasifikasikan (untuk industri yang diatur oleh hukum). Mereka juga harus mempertimbangkan bagaimana penyimpanan, berbagi, dan akses data untuk sistem terdistribusi di seluruh lingkungan dapat memengaruhi performa aplikasi dan konsistensi data. Faktor-faktor tersebut mungkin memengaruhi aplikasi dan arsitektur pipeline data. Rangkaian opsi perpindahan data yang komprehensif dari Google Cloud memungkinkan bisnis memenuhi kebutuhan spesifik mereka dan mengadopsi arsitektur hybrid dan multicloud tanpa mengorbankan kesederhanaan, efisiensi, atau performa.

Keamanan

Saat memigrasikan aplikasi ke cloud, penting untuk mempertimbangkan kemampuan keamanan cloud-first seperti konsistensi, kemampuan observasi, dan visibilitas keamanan terpadu. Setiap penyedia cloud publik memiliki pendekatan, praktik terbaik, dan kemampuan keamanannya sendiri. Penting untuk menganalisis dan menyelaraskan kemampuan ini guna membangun arsitektur keamanan standar dan fungsional. Kontrol IAM, enkripsi data, pemindaian kerentanan, dan kepatuhan terhadap peraturan industri yang kuat juga merupakan aspek penting dari keamanan cloud.

Saat merencanakan strategi migrasi, sebaiknya Anda menganalisis pertimbangan yang disebutkan sebelumnya. Elemen ini dapat membantu Anda meminimalkan peluang memperkenalkan kompleksitas pada arsitektur seiring meningkatnya volume traffic atau aplikasi. Selain itu, merancang dan membangun zona landing hampir selalu merupakan prasyarat untuk men-deploy workload perusahaan di lingkungan cloud. Zona landing membantu perusahaan Anda men-deploy, menggunakan, dan menskalakan layanan cloud dengan lebih aman di berbagai area dan mencakup berbagai elemen, seperti identitas, pengelolaan resource, keamanan, dan jaringan. Untuk mengetahui informasi selengkapnya, lihat Desain zona landing di Google Cloud.

Dokumen dalam seri ini menjelaskan pola arsitektur terdistribusi lainnya: