Halaman ini menjelaskan apa yang dimaksud dengan pencadangan, cara kerjanya, beberapa kasus penggunaan umum, dan praktik terbaik saat membuat dan menggunakan pencadangan. Untuk mempelajari cara membuat dan mengelola cadangan, serta cara memulihkan instance Filestore dari cadangan, lihat Mencadangkan data untuk pemulihan dari bencana.
Apa yang dimaksud dengan pencadangan?
Cadangan Filestore adalah salinan file share yang menyertakan semua data file dan metadata file share dari titik waktu saat cadangan dibuat.
Setelah membuat cadangan berbagi file, Anda dapat mengubah atau menghapus berbagi file asli tanpa memengaruhi cadangan.
Anda dapat menggunakan cadangan untuk memulihkan berbagi file ke instance Filestore baru atau, untuk instance tingkat dasar, ke sumber atau ke berbagi file yang ada.
Pencadangan adalah resource regional yang tetap berada dalam region yang Anda tentukan pada saat pembuatan. Anda dapat membuat cadangan di region yang sama dengan instance Filestore atau ke region lain untuk membantu mengurangi risiko kehilangan data.
Cadangan dapat dialamatkan secara global dan dapat digunakan untuk memulihkan berbagi file ke region mana pun, tetapi tidak dapat dibagikan di seluruh project.
Biaya transfer jaringan berlaku untuk traffic jaringan lintas region. Untuk mengetahui detailnya, lihat halaman Harga.
Pembuatan cadangan
Pencadangan pertama yang Anda buat adalah salinan lengkap semua data dan metadata file di file share. Setiap pencadangan berikutnya akan menyalin setiap perubahan berturut-turut yang dilakukan pada data sejak pencadangan sebelumnya.
Sekelompok cadangan yang terkait dengan instance, region, dan CMEK yang sama (jika digunakan) disebut rantai cadangan.
Rantai pencadangan berada di satu bucket dan region Cloud Storage dan dapat berada di luar region yang digunakan untuk menyimpan instance sumber.
Semua tingkat layanan mendukung beberapa rantai cadangan yang memungkinkan Anda menyimpan cadangan instance di beberapa region.
Setiap kali pencadangan dibuat, pencadangan sebelumnya akan dipindai untuk menemukan perubahan diferensial dan inkremental:
Perubahan diferensial: mencakup perubahan yang dilakukan pada file di berbagi seperti pengeditan, penambahan, atau penghapusan file.
Perubahan inkremental: mencakup perubahan pada penyimpanan di bucket tempat data cadangan berada. Hal ini mungkin mencakup penghapusan duplikat data yang sebelumnya direferensikan dalam rantai.
Setiap kali Anda menyimpan cadangan ke rantai cadangan yang sama, cadangan sebelumnya akan dipindai untuk menemukan perubahan diferensial dan inkremental. Dalam kasus tersebut, salinan lengkap tidak diperlukan.
Namun, menyimpan data instance ke beberapa rantai cadangan menyiratkan bahwa Anda menyimpan dan menyimpan cadangan ke lokasi alternatif.
Setiap kali Anda membuat cadangan baru ke lokasi alternatif, salinan lengkap
cadangan akan dibuat lagi. Expect higher latency on backup create
operations when alternating between backup chains.
Data yang tidak berubah yang terdapat dalam pencadangan sebelumnya direferensikan dalam, tetapi tidak disalin ke, pencadangan yang lebih baru. Jika cadangan lama dihapus, data uniknya akan disalin ke cadangan terbaru berikutnya dan semua referensi data internal akan otomatis diperbarui.
Secara internal, histori rantai cadangan dilacak menggunakan snapshot, yang menggunakan kapasitas pada instance sumber.
Pembuatan cadangan dilakukan secara instan, tetapi memerlukan waktu yang sebanding dengan jumlah data yang disalin sebelum cadangan tersedia untuk digunakan. Selama periode ini, pencadangan akan bertransisi melalui tiga status:
Status | Durasi | Deskripsi |
---|---|---|
Membuat | Beberapa detik | Merekam status berbagi file saat ini. Setiap perubahan baru pada data berbagi file dapat atau tidak dapat disertakan dalam pencadangan. Penulisan stabil yang diakui oleh instance sebelum pencadangan dimulai akan disertakan. |
Menyelesaikan | Bergantung pada ukuran | Mengupload data ke cadangan. Setiap perubahan baru pada data berbagi file tidak disertakan dalam pencadangan. |
Ready | Hingga cadangan dihapus | Cadangan siap digunakan. |
Setelah dibuat, cadangan tingkat dasar akan otomatis dikompresi untuk mengurangi biaya. Performa instance dapat berkurang saat membuat cadangan untuk instance di tingkat layanan zonal, regional, dan perusahaan. Pembuatan cadangan tidak memengaruhi ketersediaan atau performa instance tingkat dasar.
Menangani data redundan
Secara default, pencadangan bersifat inkremental untuk menghindari penagihan data redundan dan untuk meminimalkan penggunaan ruang penyimpanan. Untuk memastikan keandalan histori perubahan yang mendasarinya, cadangan terkadang dapat mengambil salinan lengkap instance.
Untuk mengetahui informasi selengkapnya, lihat Membandingkan snapshot dan pencadangan.
Penghapusan cadangan
Cadangan adalah resource tingkat project, bukan sub-resource instance sumber, dan memerlukan penyimpanan terpisahnya sendiri. Akibatnya, siklus proses cadangan tidak terikat dengan siklus proses instance sumber. Menghapus sumber tidak akan menghapus cadangan terkait. Jika ingin menghapus cadangan, Anda harus secara eksplisit melakukan operasi penghapusan pada cadangan, bukan instance.
Pastikan untuk menghapus cadangan yang tidak diinginkan. Jika instance sumber dihapus, cadangan yang tersisa akan terus menumpuk biaya.
Penghapusan cadangan bersifat permanen dan tidak dapat diurungkan.
Konsistensi pencadangan
Cadangan Filestore memiliki semantik konsistensi NFSv3 dan NFSv4.1. Sebelum
cadangan dimulai, setiap operasi tulis yang diakui instance Filestore
sebagai ditulis ke penyimpanan stabil atau yang diikuti dengan COMMIT
yang diakui akan disertakan dalam cadangan. Untuk mengetahui detailnya, lihat
NFSv3 RFC-1813 bagian 3.3.7
atau Tentang protokol sistem file yang didukung.
Kasus penggunaan umum
Bagian berikut menjelaskan kasus penggunaan umum untuk pencadangan.
Mencadangkan data untuk pemulihan dari bencana
Bayangkan Anda memiliki instance Filestore di us-west1-c
, dan Anda ingin melindungi data dari bencana yang memengaruhi wilayah ini. Anda
dapat menjadwalkan tugas
yang secara rutin membuat cadangan instance ini ke region jarak jauh, misalnya us-
east1
. Jika terjadi bencana yang melibatkan us-west1-c
, Anda dapat membuat instance baru di lokasi lain dari cadangan sebelumnya.
Mencadangkan data untuk melindungi dari perubahan yang tidak disengaja
Jika ingin melindungi data Filestore dari perubahan yang tidak disengaja, Anda dapat menjadwalkan tugas yang secara rutin membuat cadangan instance. Jika kehilangan data, Anda dapat menjelajahi daftar cadangan untuk mengidentifikasi cadangan dengan versi file yang diperlukan. Kemudian, Anda dapat membuat instance Filestore baru dari cadangan, memasangnya ke klien yang sama dengan instance asli, dan menyalin file.
Sebelum menyalin file, Anda dapat menggunakan perintah
diff
Linux di dua titik pemasangan untuk memeriksa perbedaan antara data di
instance asli dan data yang dipulihkan dari pencadangan. Setelah data
dipulihkan, Anda dapat menghapus instance yang dipulihkan dan membuat cadangan baru untuk
mempertahankan status data saat ini untuk digunakan di masa mendatang.
Atau, Anda dapat melakukan pemulihan langsung dengan data cadangan langsung dipulihkan ke instance Filestore asli, yang akan mengganti semua data di instance tersebut dengan data dari cadangan. Sebaiknya buat cadangan data terbaru sebelum melakukan pemulihan langsung karena data yang tidak dicadangkan akan hilang.
Membuat clone untuk pengembangan dan pengujian
Bayangkan Anda memiliki database yang disiapkan di instance Filestore yang menayangkan traffic produksi. Jika ingin menjalankan pengujian dengan database sebagai input, Anda dapat membuat instance Filestore baru dari cadangan instance produksi untuk pengujian. Dengan cara ini, penggunaan pengujian tidak mengganggu produksi.
Demikian pula, Anda dapat menggunakan cadangan untuk analisis dan investigasi offline tanpa memengaruhi produksi.
Memigrasikan Data
Setelah membuat instance Filestore, Anda tidak dapat mengubah lokasi atau tingkat layanannya. Untuk memigrasikan data ke region lain, Anda dapat membuat cadangannya dan menggunakan cadangan tersebut untuk membuat instance Filestore baru atau memulihkannya ke instance yang ada.
Selain itu, saat membuat instance Filestore baru dari cadangan, Anda dapat memilih antara tingkat HDD dasar dan SSD dasar, terlepas dari tingkat instance sumber.
Batasan fitur
Pencadangan Filestore tersedia secara umum (GA) untuk semua tingkat layanan.
Batasan berikut berlaku:
Cadangan Filestore tidak dapat digabungkan dengan fitur multishare Filestore.
Pengguna harus membuat cadangan baru untuk menggantikan cadangan yang dibuat di Preview. Pencadangan yang dibuat di Pratinjau dapat dihapus. Cadangan yang dibuat di Pratinjau mencerminkan perilaku fitur yang tersedia pada saat pembuatan. Cadangan yang ada tidak diperbarui saat kemampuan baru dirilis.
Bagian berikut membahas batasan fitur lainnya yang terkait dengan performa, penyimpanan, kapasitas, enkripsi, dan topik lainnya secara mendetail:
Performa
Banyak perubahan yang dilakukan melalui banyak hard link pada file yang sama (misalnya, puluhan atau ratusan ribu) dapat berdampak pada performa.
Untuk instance yang sangat digunakan, performa dapat berkurang hingga 15% saat pencadangan diupload. Performa instance paket dasar tidak terpengaruh oleh operasi
create
pencadangan.Menyimpan data instance ke beberapa rantai cadangan akan memengaruhi performa pencadangan. Expect higher latency on backup
create
operations when alternating between backup chains.Operasi instance seperti instance
restore
atau instancedelete
dapat tertunda hingga operasicreate
cadangan selesai.Dalam beberapa kasus, operasi
delete
mungkin memerlukan waktu hingga 24 jam untuk diselesaikan.
Konkurensi operasi
Operasi
delete
pencadangan yang terkait dengan instance sumber yang sama harus dilakukan satu per satu.Operasi
delete
pencadangan massal dalam rantai pencadangan tidak didukung. Saat operasidelete
tertunda, setiap operasidelete
baru dalam rantai pencadangan yang sama akan menampilkan errorRESOURCE_EXHAUSTED
. Hal ini terlepas dari apakah instance sumber telah dihapus.Jika instance sumber telah dihapus, pengguna akan menerima error
FAILED_PRECONDITION
yang serupa.Batasan ini berlaku untuk setiap tingkat layanan, kecuali SSD dasar dan HDD dasar.
Perhatikan bahwa Filestore mendukung operasi
delete
pencadangan serentak saat pencadangan mereferensikan instance sumber terpisah.Misalnya, instance yang diberi label
Source1
memiliki data cadangan yang dirujuk diBackup1
danBackup2
.Source2
memiliki data cadangan yang dirujuk diBackup3
danBackup4
.Backup1
danBackup2
tidak dapat dihapus secara paralel, tetapiBackup2
danBackup3
dapat.
Untuk informasi selengkapnya, lihat Batas kapasitas untuk pencadangan.
Operasi pencadangan
create
dan pencadangandelete
yang dimulai dalam rantai pencadangan yang sama dapat berjalan secara serentak. Namun, pengguna tidak dapat menyelesaikan operasicreate
pencadangan saat pencadangan terbaru sedang dihapus.- Jika pengguna mencoba membuat cadangan baru instance saat cadangan terbaru sedang dihapus, mereka akan menerima error
FAILED_PRECONDITION
. Misalnya, jikaSource1
memiliki rantai cadangan yang terdiri dariBackup1
danBackup2
, dan pengguna memulai operasicreate
untukBackup3
, mereka tidak akan dapat menghapusBackup2
hingga operasicreate
selesai. Hal ini karena cadangan terbaru berisi data paling penting yang diperlukan untuk berhasil menyelesaikan operasicreate
cadangan.
- Jika pengguna mencoba membuat cadangan baru instance saat cadangan terbaru sedang dihapus, mereka akan menerima error
Untuk mengetahui informasi selengkapnya tentang batas kapasitas operasi, lihat Batas kapasitas operasi untuk pencadangan.
Penyimpanan
Operasi
restore
pencadangan ke instance sumber, atau ke instance yang ada, tidak didukung untuk instance zona, regional, dan perusahaan. Jika ingin memulihkan cadangan instance di salah satu tingkat layanan ini, Anda harus membuat instance baru.Instance baru harus cocok dengan tingkat layanan dan rentang kapasitas instance sumber. Misalnya, jika sumber dibuat menggunakan tingkat layanan zona dengan rentang kapasitas yang lebih rendah, instance baru harus menggunakan tingkat layanan dan rentang kapasitas yang sama.
Jika perlu membuat instance menggunakan tingkat layanan SSD skala tinggi lama, Anda harus menjalankan operasi secara langsung melalui Filestore API.
Jika perlu membuat instance menggunakan tingkat layanan perusahaan lama, Anda dapat menjalankan operasi secara langsung melalui Filestore API atau dari halaman Pulihkan pencadangan > Instance baru di Google Cloud.
Misalnya, jika ingin membuat resource regional dengan kapasitas instance 10 TiB, Anda harus menggunakan tingkat layanan perusahaan lama.
Operasi pencadangan, seperti
restore
,edit
, ataudelete
, mungkin tidak tersedia untuk cadangan tertentu yang dibuat di Pratinjau.Setelah operasi RestoreInstance diterapkan ke instance regional atau perusahaan, Anda tidak akan dapat membuat snapshot dengan nama yang sama seperti snapshot sebelumnya sebelum operasi.
Upaya untuk memulihkan instance dari cadangan saat penghapusan cadangan atau penghapusan snapshot sedang berlangsung akan gagal.
Jika penghapusan pencadangan gagal, statusnya akan ditandai sebagai
invalid
. Dalam kasus tersebut, Anda harus mencoba kembali operasidelete
.
Kapasitas
Setiap pencadangan menempati kapasitas instance. Kapasitas ini bervariasi sebanding dengan cakupan perubahan yang dilakukan pada data sejak pencadangan terakhir dibuat.
Lebih khusus lagi, saat pencadangan dibuat, Filestore akan membuat snapshot internal sistem file yang juga menempati sebagian kapasitas instance yang tersedia.
Ukuran snapshot juga relatif terhadap cakupan perubahan yang dilakukan pada data dalam share sejak pencadangan terakhir dibuat. Snapshot ini akan terus ada hingga cadangan berikutnya dibuat dan diupload.
Semua data yang dirujuk oleh cadangan akan tetap dalam status seperti saat diambil dan terus menggunakan kapasitas dari sistem file. Jadi, misalnya, jika Anda menghapus data dari sistem file yang terpasang, tindakan itu sendiri tidak akan memperbarui kapasitas. Sebagai gantinya, untuk melakukannya, Anda harus membuat cadangan baru setelah menghapus atau menimpa data dalam jumlah yang signifikan.
Untuk deskripsi mendetail tentang perubahan diferensial dan inkremental serta cara menanganinya, lihat Pembuatan cadangan.
Untuk mengantisipasi kapasitas yang memadai bagi workload Anda, pertimbangkan untuk menerapkan salah satu hal berikut:
- Tingkatkan kapasitas instance untuk workload dengan perubahan data yang signifikan dan sering atau rasio perubahan yang tinggi.
Enkripsi
Saat menggunakan CMEK untuk mengenkripsi rantai cadangan, batasan berikut berlaku:
Seluruh rantai cadangan dienkripsi menggunakan CMEK yang sama.
CMEK harus berada di region yang sama dengan resource yang dienkripsi.
Jika menyimpan rantai cadangan di region yang terpisah dari instance sumber, Anda mungkin perlu menerapkan kunci terpisah, satu untuk sumber dan satu untuk rantai cadangan.
- Semua tingkat layanan mendukung beberapa rantai cadangan, atau kemampuan untuk menyimpan cadangan instance di beberapa region. Jika memilih untuk menggunakan CMEK untuk enkripsi, kunci CMEK harus berada di region yang sama dengan resource yang dienkripsinya. Jika Anda menyimpan cadangan di region yang terpisah dari sumber, dan CMEK bukan kunci multi-region, Anda harus menggunakan kunci CMEK terpisah. Untuk mengetahui informasi selengkapnya, lihat Pembatasan CMEK dan Memilih lokasi CMEK terbaik.
Satu CMEK diterapkan ke bucket Cloud Storage tempat rantai cadangan disimpan dan tidak dapat digabungkan atau diganti.
Dukungan CMEK tidak tersedia untuk cadangan tingkat dasar.
Untuk informasi selengkapnya, lihat Dukungan CMEK untuk rantai cadangan.
Protokol
- Saat memulihkan cadangan, instance baru harus menggunakan protokol yang sama dengan instance sumber.
Praktik terbaik
Bagian berikut membahas praktik terbaik yang direkomendasikan.
Menyiapkan berbagi file Anda untuk konsistensi pencadangan terbaik
Kualitas pencadangan bergantung pada kemampuan aplikasi Anda untuk memulihkan dari pencadangan yang dibuat selama beban kerja penulisan yang berat. Dalam sebagian besar situasi, Anda dapat membuat cadangan yang memiliki konsistensi yang baik bahkan saat aplikasi menulis data ke berbagi file. Namun, jika aplikasi Anda memerlukan konsistensi yang ketat, sebaiknya lakukan satu atau beberapa hal berikut:
- Gunakan pemasangan sinkronisasi. Untuk informasi selengkapnya, lihat bagian "Opsi pemasangan sinkron"
di
nfs(5).
Atau, Anda dapat membuka file dengan flag
O_DIRECT|O_SYNC
. Untuk informasi selengkapnya, lihat open(2). - Jeda aplikasi atau proses sistem operasi yang menulis data ke file share dan menyebabkannya menghapus perubahan ke file share sebelum memulai pencadangan. Untuk informasi selengkapnya, lihat fsync(2).
- Jika aplikasi Anda memerlukan konsistensi di antara beberapa share, jeda semua aplikasi di semua instance yang menulis ke semua share file dan buat cadangan semua share file sebelum melanjutkan aplikasi Anda.
- Jika Anda memerlukan konsistensi tingkat aplikasi, hentikan aplikasi dan lepas pemasangan berbagi file sebelum membuat cadangan.
Menggunakan cadangan yang ada sebagai dasar pengukuran untuk cadangan baru guna mengurangi waktu pembuatan cadangan
Cadangan yang ada dari berbagi file dalam region digunakan sebagai dasar pengukuran untuk membuat cadangan baru dari berbagi file, sehingga mengurangi waktu pembuatan cadangan. Oleh karena itu, sebaiknya Anda melakukan hal berikut:
Buat cadangan baru dari berbagi file sebelum Anda menghapus cadangan sebelumnya dari berbagi file tersebut.
Tunggu hingga cadangan baru berada dalam status
Ready
sebelum membuat cadangan berikutnya dari berbagi file yang sama.
Menjadwalkan pencadangan selama jam non-puncak untuk mengurangi waktu pembuatan cadangan
Membuat cadangan selama jam non-puncak akan mengurangi waktu yang diperlukan untuk membuat cadangan. Jika Anda menjadwalkan pencadangan reguler untuk berbagi file, sebaiknya jadwalkan pencadangan tersebut di luar jam sibuk jika memungkinkan.
Jam sibuk untuk pembuatan cadangan adalah akhir setiap hari kerja dan tengah malam di wilayah tempat instance Filestore berada. Sebaiknya buat cadangan pada pagi hari atau selama hari kerja.
Mengatur data Anda di instance Filestore terpisah untuk memaksimalkan efisiensi
Makin banyak data di berbagi file, makin besar ukuran pencadangan dan makin mahal biayanya. Untuk mencadangkan data yang perlu dicadangkan saja, sebaiknya atur data Anda di berbagi file terpisah, yaitu:
- Menyimpan data penting dengan pola tulis yang berbeda atau dengan persyaratan pencadangan yang berbeda di berbagai berbagi file.
- Mengurangi jumlah pencadangan yang perlu Anda buat dengan menyimpan data serupa dalam satu file share.
Kuota
Ada batas kuota terkait jumlah pencadangan per region untuk tingkat layanan SSD dasar dan HDD dasar.
Batas kuota cadangan tidak berlaku untuk tingkat layanan zona, regional, dan perusahaan.
Untuk mengetahui informasi selengkapnya, lihat Kuota dan tingkat layanan.
Mulai menggunakan pencadangan Filestore
Untuk mulai menggunakan fitur ini, lihat Mencadangkan data untuk pemulihan dari bencana (disaster recovery).
Langkah selanjutnya
- Pelajari cara mencadangkan dan memulihkan berbagi file.
- Pelajari cara menjadwalkan pencadangan menggunakan Cloud Scheduler.
- Pelajari region dan zona Google Cloud.
- Pelajari harga pencadangan.