Mengoptimalkan workload AI dan ML dengan Cloud Storage FUSE

Last reviewed 2025-04-09 UTC

Dokumen ini menyediakan arsitektur referensi yang menunjukkan cara menggunakan Cloud Storage FUSE untuk mengoptimalkan performa workload AI dan ML di Google Kubernetes Engine (GKE).

Audiens yang dituju untuk dokumen ini mencakup arsitek dan praktisi teknis yang mendesain, menyediakan, dan mengelola penyimpanan untuk workload AI dan ML mereka di Google Cloud. Dokumen ini mengasumsikan bahwa Anda telah memahami siklus proses, proses, dan kemampuan ML.

Cloud Storage FUSE adalah adaptor FUSE open source yang memungkinkan Anda memasang bucket Cloud Storage sebagai sistem file lokal. Konfigurasi ini memungkinkan aplikasi berinteraksi dengan lancar dengan bucket penyimpanan berbasis cloud menggunakan semantik sistem seperti file standar. Cloud Storage FUSE memungkinkan Anda memanfaatkan skalabilitas dan efisiensi biaya Cloud Storage.

Arsitektur

Bergantung pada persyaratan Anda terkait performa, ketersediaan, dan pemulihan dari bencana (DR), Anda dapat memilih salah satu Google Cloud arketipe deployment berikut untuk menjalankan beban kerja AI dan ML Anda di Google Cloud:

  • Regional: aplikasi Anda berjalan secara independen dalam satu Google Cloud region. Kami merekomendasikan arketipe deployment ini untuk aplikasi yang tidak kritis, tetapi harus tangguh terhadap pemadaman zona.
  • Multi-regional: aplikasi Anda berjalan secara independen di dua atau lebih Google Cloud region, dalam mode aktif-aktif atau aktif-pasif. Arketipe deployment ini ideal untuk mendukung skenario DR. Kami merekomendasikan arketipe deployment ini untuk aplikasi penting yang memerlukan ketahanan terhadap pemadaman layanan dan bencana di level region. Deployment regional ganda atau multi-regional dapat mengurangi latensi dan meningkatkan throughput melalui kedekatan resource yang lebih baik.

Arketipe deployment yang Anda pilih akan menentukan produk dan fitur yang Anda butuhkan untuk arsitektur Anda. Google Cloud Arsitektur multi-regional menggunakan Anywhere Cache. Untuk menilai apakah Anywhere Cache cocok untuk workload Anda, gunakan pemberi rekomendasi Anywhere Cache untuk menganalisis penggunaan dan penyimpanan data Anda.

Tab berikut menyediakan arsitektur referensi untuk arketipe deployment regional dan multi-regional:

Regional

Diagram berikut menunjukkan contoh arsitektur regional yang menggunakan Cloud Storage FUSE untuk mengoptimalkan performa alur kerja pelatihan model dan penyajian model:

Arsitektur regional yang menggunakan Cloud Storage FUSE untuk mengoptimalkan workload AI dan ML.

Arsitektur ini mencakup komponen berikut:

  • Cluster GKE: GKE mengelola node komputasi tempat proses pelatihan dan penayangan model AI dan ML Anda berjalan. GKE mengelola infrastruktur pokok cluster Kubernetes, termasuk bidang kontrol, node, dan semua komponen sistem.
  • Scheduler Kubernetes: bidang kontrol GKE menjadwalkan workload dan mengelola siklus proses, penskalaan, dan upgrade-nya. Agen node Kubernetes (kubelet), yang tidak ditampilkan dalam diagram, berkomunikasi dengan bidang kontrol. Agen kubelet bertanggung jawab untuk memulai dan menjalankan container yang dijadwalkan di node GKE. Untuk mengetahui informasi selengkapnya tentang penjadwal, lihat Orkestrasi AI/ML di GKE.
  • Jaringan Virtual Private Cloud (VPC): semua Google Cloud resource dalam arsitektur menggunakan satu jaringan VPC. Bergantung pada persyaratan, Anda dapat memilih untuk membangun arsitektur yang menggunakan beberapa jaringan. Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi jaringan VPC untuk Cloud Storage FUSE, lihat Menentukan apakah akan membuat beberapa jaringan VPC atau tidak.
  • Cloud Load Balancing: dalam arsitektur ini, Cloud Load Balancing secara efisien mendistribusikan permintaan inferensi masuk dari pengguna aplikasi ke penampung penayangan di cluster GKE. Untuk mengetahui informasi selengkapnya, lihat Memahami load balancing GKE.
  • Unit Pemrosesan Grafis (GPU) atau Tensor Processing Unit (TPU): GPU dan TPU adalah akselerator machine learning khusus yang meningkatkan performa workload AI dan ML Anda. Untuk mengetahui informasi tentang cara memilih jenis prosesor yang sesuai, lihat Opsi akselerator di bagian selanjutnya dalam dokumen ini.
  • Cloud Storage: Cloud Storage menyediakan penyimpanan yang persisten, skalabel, dan hemat biaya untuk beban kerja AI dan ML Anda. Cloud Storage berfungsi sebagai repositori pusat untuk set data pelatihan mentah, titik pemeriksaan model, dan model terlatih akhir Anda.
  • Cloud Storage FUSE dengan cache file diaktifkan: Cloud Storage FUSE memungkinkan Anda memasang bucket Cloud Storage sebagai sistem file lokal. Cache file di Cloud Storage FUSE adalah direktori di komputer lokal yang menyimpan file yang sering diakses dari bucket Cloud Storage Anda. Driver CSI Cloud Storage FUSE mengelola integrasi Cloud Storage FUSE dengan Kubernetes API untuk menggunakan bucket Cloud Storage sebagai volume.

Bagian berikut menjelaskan alur kerja dalam workload pelatihan dan penayangan arsitektur.

Multi-regional

Diagram berikut menunjukkan contoh arsitektur multi-regional yang menggunakan Cloud Storage FUSE dan Anywhere Cache untuk mengoptimalkan performa alur kerja pelatihan model dan penayangan model:

Arsitektur multi-regional yang menggunakan Cloud Storage FUSE untuk mengoptimalkan workload AI dan ML.

Arsitektur ini mencakup komponen berikut:

  • Cluster GKE: GKE mengelola node komputasi tempat proses pelatihan dan penayangan model AI dan ML Anda berjalan. GKE mengelola infrastruktur pokok cluster Kubernetes, termasuk bidang kontrol, node, dan semua komponen sistem.
  • Scheduler Kubernetes: bidang kontrol GKE menjadwalkan workload dan mengelola siklus proses, penskalaan, dan upgrade-nya. Agen node Kubernetes (kubelet), yang tidak ditampilkan dalam diagram, berkomunikasi dengan bidang kontrol. Agen kubelet bertanggung jawab untuk memulai dan menjalankan container yang dijadwalkan di node GKE. Untuk mengetahui informasi selengkapnya tentang penjadwal, lihat Orkestrasi AI/ML di GKE.
  • Jaringan Virtual Private Cloud (VPC): semua Google Cloud resource dalam arsitektur menggunakan satu jaringan VPC. Bergantung pada persyaratan, Anda dapat memilih untuk membangun arsitektur yang menggunakan beberapa jaringan. Untuk mengetahui informasi selengkapnya tentang cara mengonfigurasi jaringan VPC untuk Cloud Storage FUSE, lihat Menentukan apakah akan membuat beberapa jaringan VPC atau tidak.
  • Cloud DNS: dalam arsitektur multiregional, Cloud DNS mengarahkan traffic ke load balancer untuk memastikan performa dan ketersediaan yang optimal melalui perutean anycast. Permintaan otomatis dirutekan ke lokasi terdekat, yang mengurangi latensi dan meningkatkan performa pencarian nama resmi untuk pengguna Anda. Untuk mengetahui informasi tentang prinsip umum dan praktik terbaik, lihat Praktik terbaik untuk Cloud DNS.
  • Cloud Load Balancing: dalam arsitektur ini, Cloud Load Balancing secara efisien mendistribusikan permintaan inferensi masuk dari pengguna aplikasi ke container penayangan di cluster GKE. Untuk mengetahui informasi selengkapnya, lihat Memahami load balancing GKE.
  • Unit Pemrosesan Grafis (GPU) atau Tensor Processing Unit (TPU): GPU dan TPU adalah akselerator machine learning khusus yang meningkatkan performa workload AI dan ML Anda. Untuk mengetahui informasi tentang cara memilih jenis prosesor yang sesuai, lihat Opsi akselerator di bagian selanjutnya dalam dokumen ini.
  • Cloud Storage: Cloud Storage menyediakan penyimpanan yang persisten, skalabel, dan hemat biaya untuk beban kerja AI dan ML Anda. Cloud Storage berfungsi sebagai repositori pusat untuk set data pelatihan mentah, titik pemeriksaan model, dan model terlatih akhir Anda.
  • Cloud Storage FUSE: Dengan Cloud Storage FUSE, Anda dapat memasang bucket Cloud Storage sebagai sistem file lokal. Driver CSI Cloud Storage FUSE, yang tidak ditampilkan dalam diagram, mengelola integrasi Cloud Storage FUSE dengan Kubernetes API untuk menggunakan bucket Cloud Storage sebagai volume.
  • Anywhere Cache: Anywhere Cache adalah fitur Cloud Storage yang menyediakan cache baca saja berbasis SSD hingga 1 PiB untuk bucket Cloud Storage. Selama pelatihan dan penayangan, Anywhere Cache membantu Anda mencapai throughput yang melebihi 1 TB/s dengan menskalakan kapasitas dan bandwidth cache.

Bagian berikut menjelaskan alur kerja dalam workload pelatihan dan penayangan arsitektur.

Workload pelatihan

Dalam arsitektur sebelumnya, berikut adalah langkah-langkah dalam alur data selama pelatihan model:

  1. Memuat data pelatihan ke Cloud Storage: data pelatihan diupload ke bucket Cloud Storage dengan mengaktifkan namespace hierarkis. Cloud Storage berfungsi sebagai repositori pusat yang skalabel.
  2. Memuat data pelatihan dan menjalankan tugas pelatihan di GKE: bucket Cloud Storage yang di-mount ke pod GKE memungkinkan aplikasi pelatihan Anda memuat dan mengakses data pelatihan secara efisien menggunakan antarmuka FUSE. Node GKE menjalankan proses pelatihan model menggunakan cache file yang di-mount sebagai sumber data. Aplikasi pelatihan Anda terus-menerus memasukkan data pelatihan ke akselerator mesin untuk melakukan perhitungan kompleks yang diperlukan untuk pelatihan model. Bergantung pada persyaratan workload, Anda dapat menggunakan GPU atau TPU. Untuk mengetahui informasi tentang cara memilih jenis prosesor yang sesuai, lihat Opsi akselerator nanti dalam dokumen ini.
  3. Penyimpanan dan pemulihan model dan checkpoint:

    • Menyimpan checkpoint atau model: selama pelatihan, simpan checkpoint secara asinkron secara berkala ke bucket Cloud Storage terpisah. Titik pemeriksaan merekam status model berdasarkan metrik atau interval yang Anda tentukan.
    • Memulihkan checkpoint atau model: saat beban kerja pelatihan memerlukan Anda untuk memulihkan checkpoint atau data model, Anda perlu menemukan aset yang ingin dipulihkan di Cloud Storage. Anda dapat menggunakan checkpoint atau model yang dipulihkan untuk melanjutkan pelatihan, menyesuaikan parameter, atau mengevaluasi performa pada set validasi.

Menayangkan workload

Dalam arsitektur sebelumnya, berikut adalah langkah-langkah dalam alur data selama penyajian model:

  1. Memuat model: setelah pelatihan selesai, pod Anda memuat model terlatih menggunakan Cloud Storage FUSE dengan download paralel diaktifkan. Download paralel mempercepat pemuatan model dengan mengambil bagian-bagian model secara paralel dari Cloud Storage. Untuk mengurangi waktu pemuatan model secara signifikan, proses ini menggunakan direktori cache sebagai buffer pengambilan data.
  2. Permintaan inferensi: pengguna aplikasi mengirim permintaan inferensi dari aplikasi AI dan ML melalui layanan Cloud Load Balancing. Cloud Load Balancing mendistribusikan permintaan masuk di seluruh penayangan container di cluster GKE. Distribusi ini memastikan bahwa tidak ada satu pun penampung yang kewalahan dan permintaan diproses secara efisien.
  3. Pengiriman respons: node memproses permintaan dan menghasilkan prediksi. Container inferensi mengirimkan respons kembali melalui Cloud Load Balancing, lalu ke pengguna aplikasi.

Produk yang digunakan

Arsitektur referensi menggunakan produk Google Cloud berikut:

  • Google Kubernetes Engine (GKE): Layanan Kubernetes yang dapat Anda gunakan untuk men-deploy dan mengoperasikan aplikasi dalam container dalam skala besar menggunakan infrastruktur Google.
  • 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.
  • Cloud Load Balancing: Portofolio load balancer global dan regional yang berperforma tinggi dan skalabel.
  • Cloud DNS: Layanan yang menyediakan layanan DNS tangguh dan berlatensi rendah dari jaringan Google di seluruh dunia.

Kasus penggunaan

Untuk workload AI dan ML yang memerlukan kapasitas penyimpanan besar dan akses file berperforma tinggi, sebaiknya gunakan arsitektur yang dibangun di sekitar Cloud Storage FUSE. Dengan perencanaan yang tepat, Anda dapat mencapai throughput lebih dari 1 TB/s dengan arsitektur ini. Selain itu, Cloud Storage FUSE memungkinkan Anda memanfaatkan repositori penyimpanan pusat yang berfungsi sebagai satu sumber tepercaya untuk semua tahap alur kerja AI dan ML. Pendekatan ini dapat digunakan untuk beban kerja apa pun, terlepas dari skala atau ukurannya.

Untuk workload ini, Cloud Storage FUSE memberikan manfaat berikut:

  • Akses data yang disederhanakan: akses data pelatihan dan checkpoint dengan framework AI dan ML seperti Connector for PyTorch, JAX, dan TensorFlow. Akses ke data melalui framework AI dan ML menghilangkan kebutuhan akan pemfaktoran ulang kode.
  • Startup yang dipercepat: menghilangkan kebutuhan untuk mendownload set data besar ke resource komputasi dengan menggunakan Cloud Storage FUSE untuk mengakses data secara langsung di Cloud Storage. Akses langsung ke data ini menghasilkan waktu mulai tugas yang lebih cepat.
  • Efektivitas biaya: mengoptimalkan biaya dengan menggunakan skalabilitas bawaan dan efisiensi biaya Cloud Storage.

Cloud Storage FUSE tidak cocok untuk beban kerja yang sensitif terhadap latensi yang berisi file berukuran kurang dari 50 MB atau yang memerlukan latensi kurang dari 1 milidetik untuk I/O acak dan akses metadata.

Untuk workload pelatihan atau checkpoint dan mulai ulang yang intensif data, pertimbangkan alternatif penyimpanan selama fase pelatihan intensif I/O.

Alternatif desain

Bagian berikut menyajikan pendekatan desain alternatif yang dapat Anda pertimbangkan untuk aplikasi AI dan ML di Google Cloud.

Alternatif platform

Daripada menghosting alur kerja pelatihan dan penayangan model di GKE, Anda dapat mempertimbangkan Compute Engine dengan Slurm. Slurm adalah pengelola workload dan resource open source yang sangat dapat dikonfigurasi. Penggunaan Compute Engine dengan Slurm sangat cocok untuk pelatihan dan simulasi model berskala besar. Sebaiknya gunakan Compute Engine dengan Slurm jika Anda perlu mengintegrasikan IP kecerdasan buatan (AI) dan machine learning (ML) eksklusif ke dalam lingkungan yang skalabel dengan fleksibilitas dan kontrol untuk mengoptimalkan performa bagi workload khusus. Untuk mengetahui informasi selengkapnya tentang cara menggunakan Compute Engine dengan Slurm, lihat Men-deploy cluster HPC dengan Slurm.

Di Compute Engine, Anda menyediakan dan mengelola virtual machine (VM), yang memberi Anda kontrol terperinci atas jenis instance, penyimpanan, dan jaringan. Anda dapat menyesuaikan infrastruktur dengan kebutuhan Anda, termasuk pemilihan jenis mesin VM tertentu. Untuk mengetahui informasi tentang cara menggunakan opsi command line Cloud Storage FUSE di Compute Engine, lihat CLI gcsfuse dan file konfigurasi Cloud Storage FUSE. Anda juga dapat menggunakan kelompok mesin yang dioptimalkan akselerator untuk meningkatkan performa dengan workload AI dan ML Anda. Untuk mengetahui informasi selengkapnya tentang kelompok jenis mesin yang tersedia di Compute Engine, lihat Panduan perbandingan dan resource kelompok mesin.

Slurm menawarkan opsi canggih untuk mengelola workload AI dan ML serta memungkinkan Anda mengontrol konfigurasi dan pengelolaan resource komputasi. Untuk menggunakan pendekatan ini, Anda memerlukan keahlian dalam administrasi Slurm dan pengelolaan sistem Linux.

Opsi akselerator

Akselerator mesin adalah prosesor khusus yang dirancang untuk mempercepat komputasi yang diperlukan untuk workload AI dan ML. Anda dapat memilih GPU atau TPU.

  • Akselerator GPU memberikan performa yang sangat baik untuk berbagai tugas, termasuk rendering grafis, pelatihan deep learning, dan komputasi ilmiah. Google Cloud memiliki beragam pilihan GPU yang cocok dengan berbagai tingkat performa dan titik harga. GPU sering kali menyertakan SSD lokal dalam setiap konfigurasi mesin, yang dapat digunakan oleh Cloud Storage FUSE sebagai direktori cache. Untuk mengetahui informasi tentang model dan harga GPU, lihat harga GPU.
  • TPU adalah akselerator AI yang dirancang khusus serta dioptimalkan untuk pelatihan dan inferensi model AI berskala besar. Google Cloud TPU ideal untuk berbagai kasus penggunaan, seperti chatbot, pembuatan kode, pembuatan konten media, ucapan sintetis, layanan visi, mesin pemberi saran, dan model personalisasi. Untuk mengetahui informasi selengkapnya tentang model dan harga TPU, lihat harga TPU.

Alternatif penyimpanan

Cloud Storage FUSE menyediakan sistem file praktis yang memungkinkan Anda memanfaatkan skalabilitas dan efektivitas biaya Cloud Storage. Namun, Cloud Storage FUSE tidak ideal untuk beban kerja yang memerlukan latensi rendah untuk pembacaan file kecil atau untuk beban kerja yang memerlukan solusi penyimpanan yang sepenuhnya kompatibel dengan POSIX. Untuk kasus penggunaan ini, sebaiknya pertimbangkan alternatif penyimpanan berikut:

  • Google Cloud Hyperdisk ML: solusi block storage berperforma tinggi yang ideal untuk workload yang memiliki cluster skala lebih besar dengan ratusan node dan set data hanya baca yang lebih kecil dengan ukuran mulai dari ratusan GB hingga 64 TB. Hyperdisk ML memiliki throughput yang lebih tinggi daripada Cloud Storage dan dapat dipasang ke beberapa VM dalam mode hanya baca. Mode akses Kubernetes ReadOnlyMany memungkinkan Hyperdisk ML mempercepat pemuatan bobot model jika dibandingkan dengan pemuatan langsung dari registry model. Untuk mengetahui informasi selengkapnya tentang penggunaan Hyperdisk ML dalam beban kerja AI dan ML, lihat Mempercepat pemuatan data AI/ML dengan Hyperdisk ML.
  • Connector for PyTorch: produk open source di Cloud Storage yang ideal untuk beban kerja yang menggunakan PyTorch. Connector for PyTorch mengoptimalkan workload pelatihan Anda dengan mengalirkan data langsung dari bucket Cloud Storage dan menghilangkan kebutuhan akan penyimpanan perantara. Akses dan pengoptimalan langsung ini memberikan performa yang jauh lebih baik daripada panggilan API langsung ke Cloud Storage untuk pemuatan data, pelatihan, dan pembuatan titik pemeriksaan.

Meskipun opsi penyimpanan alternatif dapat menawarkan keunggulan performa untuk workload AI dan ML tertentu, Anda harus mengevaluasi kebutuhan Anda terkait latensi, throughput, dan kapasitas penyimpanan.

Untuk perbandingan komprehensif opsi penyimpanan untuk workload AI dan ML, lihat Mendesain penyimpanan untuk workload AI dan ML di Google Cloud.

Pertimbangan desain

Bagian ini memberikan panduan tentang praktik terbaik dan pertimbangan desain untuk mengonfigurasi Cloud Storage FUSE terkait keamanan, keandalan, biaya, dan performa. Meskipun rekomendasi di sini tidak lengkap, rekomendasi ini membahas pertimbangan utama untuk memaksimalkan manfaat Cloud Storage FUSE di lingkungan Anda. Bergantung pada kebutuhan spesifik dan karakteristik workload Anda, Anda mungkin perlu mempertimbangkan opsi konfigurasi dan kompromi tambahan.

Rekomendasi desain berikut menyoroti konfigurasi untuk menyempurnakan cara Anda men-deploy Cloud Storage FUSE di GKE. Sebagian besar opsi Cloud Storage FUSE dikonfigurasi dengan opsi pemasangan. Untuk mengetahui informasi selengkapnya tentang opsi command line Cloud Storage FUSE dan cara menggunakannya, lihat CLI gcsfuse dan Mengoptimalkan driver CSI Cloud Storage FUSE untuk performa GKE.

Keamanan, privasi, dan kepatuhan

Bagian ini menjelaskan pertimbangan untuk beban kerja AI dan ML Anda di Google Cloud yang memenuhi persyaratan keamanan, privasi, dan kepatuhan Anda.

Pertimbangan GKE

Dalam mode operasi Autopilot, GKE mengonfigurasi cluster Anda sebelumnya dan mengelola node sesuai dengan praktik terbaik keamanan, sehingga Anda dapat berfokus pada keamanan khusus workload. Untuk informasi selengkapnya, lihat referensi berikut:

Untuk memastikan kontrol akses yang ditingkatkan untuk aplikasi yang berjalan di GKE, Anda dapat menggunakan Identity-Aware Proxy (IAP). IAP terintegrasi dengan resource Ingress GKE dan membantu memastikan bahwa hanya pengguna terautentikasi dengan peran Identity and Access Management (IAM) yang tepat yang dapat mengakses aplikasi. Untuk mengetahui informasi selengkapnya, lihat bagian Mengaktifkan IAP untuk GKE.

Secara default, data Anda di GKE dienkripsi saat disimpan dan saat dalam pengiriman dengan menggunakan Google-owned and Google-managed encryption keys. Sebagai lapisan keamanan tambahan untuk data sensitif, Anda dapat mengenkripsi data di lapisan aplikasi dengan menggunakan kunci yang Anda miliki dan kelola dengan Cloud Key Management Service (Cloud KMS). Untuk mengetahui informasi selengkapnya, lihat Mengenkripsi secret di lapisan aplikasi.

Jika Anda menggunakan cluster GKE Standard, Anda dapat menggunakan kemampuan enkripsi data tambahan berikut:

Pertimbangan Cloud Storage

Secara default, data yang disimpan di Cloud Storage dienkripsi menggunakan Google-owned and Google-managed encryption keys. Jika diperlukan, Anda dapat menggunakan kunci enkripsi yang dikelola pelanggan (CMEK) atau kunci Anda sendiri yang Anda kelola dengan menggunakan metode pengelolaan eksternal seperti kunci enkripsi yang disediakan pelanggan (CSEK). Untuk mengetahui informasi selengkapnya, lihat Opsi enkripsi data.

Cloud Storage mendukung dua metode untuk memberi pengguna akses ke bucket dan objek Anda: IAM dan daftar kontrol akses (ACL). Dalam sebagian besar kasus, sebaiknya gunakan IAM, yang memungkinkan Anda memberikan izin di tingkat bucket dan project. Untuk mengetahui informasi selengkapnya, lihat Ringkasan kontrol akses.

Data pelatihan yang Anda muat melalui Cloud Storage dapat mencakup data sensitif. Untuk melindungi data tersebut, Anda dapat menggunakan Perlindungan Data Sensitif untuk menemukan, mengklasifikasikan, dan melakukan de-identifikasi data. Untuk memisahkan workload pelatihan dan penayangan, simpan model dan checkpoint ke bucket Cloud Storage terpisah. Isolasi ini membantu mencegah eksposur yang tidak disengaja informasi sensitif dari set data pelatihan Anda selama penayangan. Untuk mengetahui informasi selengkapnya, lihat Menggunakan Perlindungan Data Sensitif dengan Cloud Storage.

Jika Anda memiliki persyaratan residensi data, Cloud Storage dapat membantu Anda memenuhi persyaratan tersebut. Data disimpan atau direplikasi dalam region yang Anda tentukan.

Pertimbangan Cloud Storage FUSE

Saat Anda mengaktifkan caching, Cloud Storage FUSE akan menyimpan file persisten dari bucket Cloud Storage Anda dalam format tidak terenkripsi di dalam direktori yang Anda tentukan. Cloud Storage mengekspos semua file ke pengguna atau proses yang memiliki akses direktori. Untuk mengurangi risiko ini dan meningkatkan keamanan, lapisan kernel FUSE membatasi akses sistem file ke pengguna yang memasang sistem. Pembatasan ini menolak akses ke pengguna lain, termasuk pengguna root, meskipun izin inode lebih permisif.

Namun, ada kasus penggunaan yang mungkin memerlukan penggantian batasan akses default. Misalnya, dalam workload pelatihan AI dan ML terdistribusi di mana beberapa node perlu mengakses dan membagikan checkpoint yang disimpan di Cloud Storage, Anda mungkin perlu mengizinkan akses yang lebih luas. Dalam kasus tersebut, Anda dapat mengganti pembatasan default menggunakan opsi -o allow_other. Namun, jika Anda memperluas akses ke file, Anda berpotensi mengekspos data Anda kepada pengguna yang tidak sah. Oleh karena itu, Anda harus berhati-hati saat menggunakan opsi ini.

Secara default, semua inode dalam sistem file Cloud Storage FUSE dimiliki oleh pengguna yang memasang sistem file. Meskipun setelan default ini mungkin cocok untuk banyak kasus, Anda dapat menyesuaikan Konteks Keamanan untuk Pod Anda. Untuk mengetahui informasi tentang cara menyesuaikan Konteks Keamanan, lihat Keamanan dan izin.

Keandalan

Untuk memastikan operasi yang andal, Cloud Storage FUSE menggabungkan percobaan ulang otomatis untuk menangani potensi gangguan dan mempertahankan konsistensi data. Permintaan yang gagal secara otomatis dicoba ulang dengan backoff eksponensial ke Cloud Storage. Backoff eksponensial secara bertahap meningkatkan waktu antar-percobaan ulang. Mekanisme bawaan ini membantu aplikasi Anda mengatasi masalah jaringan sementara atau ketidaktersediaan Cloud Storage untuk sementara.

Meskipun Cloud Storage FUSE menawarkan banyak keuntungan, pertimbangkan hal berikut:

  • Penulisan serentak: saat beberapa pengguna mencoba mengubah file, operasi penulisan terakhir yang menang akan diprioritaskan dan semua operasi penulisan sebelumnya akan hilang. Untuk menjaga integritas data, sebaiknya satu objek diubah oleh satu sumber saja pada waktu tertentu.
  • Persistensi cache: saat Anda melepas atau memulai ulang bucket, cache tidak akan tetap ada. Untuk menghindari potensi masalah keamanan, setelah Anda melepas atau memulai ulang bucket, Anda harus menghapus direktori cache file secara manual.
  • Proses dengan cache khusus: meskipun Cloud Storage FUSE mendukung akses serentak untuk pemrosesan paralel yang efisien, penting untuk diingat bahwa cache khusus untuk setiap proses Cloud Storage FUSE. Oleh karena itu, direktori cache yang sama tidak boleh digunakan oleh proses Cloud Storage FUSE yang berbeda yang berjalan di mesin yang sama atau berbeda.

Saat membangun arsitektur untuk workload Anda, pertimbangkan juga praktik terbaik dan rekomendasi umum yang diberikan dalam Framework yang Dirancang dengan Baik: Pilar keandalan.

Pengoptimalan biaya

Bagian ini berisi panduan untuk membantu Anda mengoptimalkan biaya penyiapan dan pengoperasian alur kerja AI dan ML di Google Cloud.

Pertimbangan GKE

Dalam mode Autopilot, GKE mengoptimalkan efisiensi infrastruktur cluster Anda berdasarkan persyaratan beban kerja. Untuk mengontrol biaya, Anda tidak perlu terus-menerus memantau pemakaian resource atau mengelola kapasitas.

Jika dapat memprediksi penggunaan CPU, memori, dan penyimpanan sementara cluster Autopilot, Anda bisa mendapatkan diskon abonemen. Untuk mengurangi biaya menjalankan aplikasi, Anda dapat menggunakan Spot VM untuk node GKE. Spot VM memiliki harga yang lebih rendah daripada VM standar, tetapi tidak memberikan jaminan ketersediaan.

Untuk mengoptimalkan biaya dan performa melalui pengelolaan yang efisien, gunakan Dynamic Workload Scheduler. Dynamic Workload Scheduler adalah penjadwal tugas dan pengelolaan resource yang membantu Anda meningkatkan akses ke resource AI dan ML. Dynamic Workload Scheduler menjadwalkan semua akselerator Anda secara bersamaan dan dapat berjalan di luar jam sibuk dengan pengelolaan kapasitas akselerator yang ditentukan. Dengan menjadwalkan tugas secara strategis, Dynamic Workload Scheduler membantu memaksimalkan pemanfaatan akselerator, mengurangi waktu tidak ada aktivitas, dan pada akhirnya mengoptimalkan pembelanjaan cloud Anda.

Untuk mengetahui informasi selengkapnya tentang panduan pengoptimalan biaya, lihat Praktik terbaik untuk menjalankan aplikasi Kubernetes yang hemat biaya di GKE.

Pertimbangan Cloud Storage

Kebutuhan penyimpanan AI dan ML Anda bisa bersifat dinamis. Misalnya, Anda mungkin memerlukan kapasitas penyimpanan yang signifikan untuk data pelatihan, tetapi persyaratan kapasitas Anda berkurang untuk penayangan, tempat Anda terutama menyimpan data dan titik pemeriksaan model. Untuk mengontrol biaya, sebaiknya aktifkan object lifecycle management dan Autoclass.

Object Lifecycle Management memungkinkan Anda memindahkan data lama atau yang tidak digunakan secara otomatis ke kelas penyimpanan yang lebih murah atau bahkan menghapus data tersebut, berdasarkan aturan yang Anda tetapkan.

Fitur Autoclass secara otomatis memindahkan data antar-kelas penyimpanan berdasarkan pola akses Anda. Fitur ini memastikan Anda mendapatkan keseimbangan terbaik antara performa dan biaya.

Pertimbangan Cloud Storage FUSE

Biaya Cloud Storage standar berlaku untuk penyimpanan, operasi metadata, dan traffic jaringan yang dihasilkan oleh aktivitas FUSE Anda. Tidak ada biaya tambahan untuk menggunakan Cloud Storage FUSE. Untuk mengetahui informasi selengkapnya tentang operasi umum Cloud Storage FUSE dan cara pemetaannya ke operasi Cloud Storage, lihat pemetaan operasi.

Untuk mengoptimalkan biaya direktori cache, Anda dapat menggunakan kapasitas mesin yang disediakan yang sudah ada, termasuk SSD lokal, persistent disk, atau data dalam memori untuk sistem file sementara. Saat menggunakan kapasitas mesin yang ada, Anda dapat menghindari biaya tambahan untuk resource penyimpanan tambahan. Selain itu, memaksimalkan hit cache dapat mengurangi biaya Cloud Storage secara signifikan karena data yang ditayangkan secara lokal tidak menimbulkan biaya operasi atau biaya traffic keluar jaringan.

Untuk mengetahui informasi selengkapnya tentang biaya, lihat Harga Cloud Storage.

Saat membangun arsitektur untuk workload Anda, pertimbangkan juga praktik terbaik dan rekomendasi umum yang diberikan dalam Well-Architected Framework: Pilar pengoptimalan biaya.

Pengoptimalan performa

Cloud Storage FUSE dirancang untuk memberikan akses yang efisien ke data di Cloud Storage untuk workload AI dan ML Anda. Namun, permintaan metadata yang sering dapat mengurangi performa, terutama di cluster berskala tinggi. Untuk mengetahui informasi selengkapnya tentang cara meningkatkan performa, lihat Mengoptimalkan driver CSI Cloud Storage FUSE untuk performa GKE.

Untuk mengoptimalkan performa, pertimbangkan konfigurasi berikut:

  • Aktifkan namespace hierarkis: untuk meningkatkan akses dan pengelolaan data, buat bucket Cloud Storage dengan namespace hierarkis yang diaktifkan. Namespace hierarkis memungkinkan Anda mengatur data dalam struktur sistem file, yang meningkatkan performa, memastikan konsistensi, dan menyederhanakan pengelolaan untuk beban kerja AI dan ML. Ruang nama hierarkis memungkinkan QPS awal yang lebih tinggi dan penggantian nama direktori atomik yang cepat.
  • Aktifkan penyimpanan cache file: penyimpanan cache file mempercepat akses berulang ke data pelatihan dengan menggunakan direktori node lokal untuk menyimpan cache file yang sering dibaca. Menayangkan pembacaan berulang dari media cache akan mengurangi latensi dan meminimalkan operasi kembali ke Cloud Storage. Pada jenis mesin GPU dengan SSD lokal, direktori SSD lokal akan otomatis digunakan. Untuk jenis mesin yang tidak menyertakan SSD lokal, seperti TPU, Anda dapat menggunakan direktori disk RAM, seperti /tmpfs.

    Untuk mengaktifkan cache file, gunakan opsi pemasangan berikut:

    • Untuk menyetel nilai cache file yang dapat digunakan ke batas kapasitas cache, tetapkan file-cache:max-size-mb: ke -1.
    • Untuk menyetel time-to-live (TTL) cache metadata ke durasi tidak terbatas dan pengusiran berdasarkan algoritma paling jarang digunakan (LRU) setelah kapasitas maksimum tercapai, setel metadata-cache:ttl-secs: ke -1.
  • Meningkatkan nilai cache metadata: Cloud Storage FUSE memiliki dua bentuk cache metadata yang meningkatkan performa untuk operasi yang terkait dengan pencarian metadata: cache stat dan cache jenis.

    Untuk meningkatkan nilai cache metadata, tetapkan opsi pemasangan berikut:

    • Untuk menyetel nilai cache statistik yang dapat digunakan ke batas kapasitas cache, tetapkan metadata-cache:stat-cache-max-size-mb: ke -1.
    • Untuk menyetel nilai cache jenis yang dapat digunakan ke batas kapasitas, tetapkan metadata-cache:type-cache-max-size-mb: ke -1.
    • Untuk mencegah item metadata yang di-cache habis masa berlakunya, dengan nilai default 60 detik, tetapkan metadata-cache:ttl-secs: ke -1. Nilai tak terbatas hanya boleh digunakan untuk volume hanya baca dan node dengan konfigurasi memori besar.
  • Mengisi cache metadata terlebih dahulu: fitur pengambilan data metadata terlebih dahulu memungkinkan driver CSI Cloud Storage FUSE memuat metadata yang relevan secara proaktif tentang objek di bucket Cloud Storage Anda ke dalam cache Cloud Storage FUSE. Pendekatan ini mengurangi panggilan ke Cloud Storage dan sangat bermanfaat bagi aplikasi yang mengakses set data besar yang memiliki banyak file, seperti beban kerja pelatihan AI dan ML.

    Untuk mengisi otomatis cache metadata, aktifkan pengambilan data metadata untuk volume tertentu. Tetapkan atribut volume gcsfuseMetadataPrefetchOnMount ke true.

  • Aktifkan penyimpanan dalam cache daftar: fitur ini mengoptimalkan direktori listingan dan file. Hal ini sangat bermanfaat untuk beban kerja pelatihan AI dan ML, yang sering kali melibatkan akses dan pencatatan seluruh direktori secara berulang. Penyimpanan dalam cache List memberikan proses pelatihan yang sangat efisien dengan mengurangi kebutuhan untuk mengakses listingan direktori berulang kali di memori komputer Anda.

    Untuk mengaktifkan caching daftar dan mencegah item cache daftar kernel berakhir, tetapkan opsi pemasangan file-system:kernel-list-cache-ttl-secs: ke -1.

  • Aktifkan download paralel: download paralel mempercepat pemuatan awal model dengan mengambil beberapa bagian secara bersamaan. Mengaktifkan download paralel akan menghasilkan pemuatan model yang lebih cepat dan responsivitas yang lebih baik selama penayangan.

    Untuk mengaktifkan download paralel, aktifkan cache file dan tetapkan opsi pemasangan file-cache:enable-parallel-downloads: ke true.

  • Meningkatkan batas sidecar GKE: untuk mencegah batasan resource menghambat performa, konfigurasi batas pada resource container sidecar, seperti konsumsi CPU dan memori. Jika Anda menggunakan cache SSD lokal, pertimbangkan untuk menyetel ephemeral-storage-limit ke tidak terbatas. Setelan ini memungkinkan Cloud Storage FUSE menggunakan sepenuhnya penyimpanan SSD lokal yang tersedia untuk meningkatkan kualitas caching.

  • Pemasangan hanya baca: karena beban kerja pelatihan biasanya hanya perlu membaca data, konfigurasi titik pemasangan sebagai hanya baca untuk performa optimal, terutama saat Anda menggunakan caching file. Konfigurasi ini juga membantu memaksimalkan manfaat pengoptimalan di cluster berskala tinggi dan membantu mencegah potensi inkonsistensi data.

Saat membangun arsitektur untuk workload Anda, pertimbangkan praktik terbaik dan rekomendasi umum yang diberikan dalam Well-Architected Framework: Pilar pengoptimalan performa.

Langkah berikutnya

Kontributor

Penulis: Samantha He | Technical Writer

Kontributor lainnya: