Apakah Anda kehilangan segalanya ketika Anda mengalami kegagalan hard disk di LVM multi-hard disk yang TIDAK menggunakan RAID?

16

Saya berdebat tentang menggunakan LVM untuk server media / file karena saya ingin menggabungkan beberapa hard disk fisik menjadi satu volume. Saya tidak ingin menggunakan RAID apa pun di LVM saya jadi pertanyaan saya adalah:

Jika salah satu dari beberapa hard disk dalam volume saya turun, apakah saya akan kehilangan semua data saya atau apakah saya akan kehilangan data yang disimpan pada disk individu itu?

Juga, jika saya hanya kehilangan data pada disk individu, apakah itu semudah mengganti disk itu dan memulihkan apa yang ada di dalamnya dari cadangan untuk memulihkan?

Fujin
sumber

Jawaban:

11

Jika salah satu dari beberapa hard disk dalam volume saya turun, apakah saya akan kehilangan semua data saya atau apakah saya akan kehilangan data yang disimpan pada disk individu itu?

Tidak, Anda akan kehilangan data yang disimpan di LVM keseluruhan

Juga, jika saya hanya kehilangan data pada disk individu, apakah itu semudah mengganti disk itu dan memulihkan apa yang ada di dalamnya dari cadangan untuk memulihkan?

Tidak sesederhana itu

Anda dapat membaca di sini pertanyaan serupa LVM dan pemulihan bencana

B14D3
sumber
7

Sederhana: Anda mencari mhddf .
Itu berpura-pura menjadi satu sistem file besar, menulis ke disk sesuai urutan yang disebutkan dan akhirnya memindahkan file besar ke perangkat yang berbeda, jika yang pertama terlalu penuh. Ini sebenarnya dapat juga menggunakan subfolder pada disk, memungkinkan fungsionalitas yang sama.
Disk individual harus dipasang terlebih dahulu dan tetap dapat diakses. Sama sekali tidak mengubah sistem file dan tidak peduli sistem file mana yang ada (selama ruang kosong dilaporkan dengan benar oleh sistem file). Jika disk hilang, Anda harus me-remount mhddf Anda lagi (on the fly) dan data pada disk itu hilang.
Pemakaian:

mhddfs /dir1,/dir2[,/path/to/dir3] /path/to/mount [-o options]

atau masuk /etc/fstab

 mhddfs#/path/to/dir1,/path/to/dir2 /mnt/point fuse defaults 0 0

Kompleks & Kuat: Anda ingin serikat .
Meskipun mhddf bagus dan sangat sederhana, saya punya masalah dengan izin file ketika memberikan orang lain akses melalui SSH. Saya tidak dapat menemukan solusi, tetapi menemukan serikat pekerja.
Unionfs juga memungkinkan Anda untuk me-mount beberapa folder di berbagai filesystem menjadi satu, tetapi apakah itu ajaib pada izin. Anda dapat menggabungkan beberapa folder hanya baca dan satu yang dapat ditulis bersama, sehingga muncul sebagai satu. Orang-orang yang Anda bagikan folder gabungan Anda kemudian dapat menulis ke folder hanya-baca - seperti yang tampak pada mereka - tetapi file-file tersebut berakhir dalam satu file yang dapat ditulis. CD boot Linux berfungsi seperti ini, disk yang dapat ditulis adalah ramdisk. Orang-orang bahkan dapat menghapus file dalam folder read only, yang tidak benar-benar menghapus file, tetapi membuat file daftar putih tersembunyi di direktori tulis mereka. Jika Anda menangkap semua opsi, pada dasarnya Anda dapat menggunakan sistem file Anda sebagai orang miskin SVN .
Jika Anda terlalu banyak menggunakan opsi mirip SVN, Anda mungkin kehilangan data yang ada dua kali (tidak mungkin dalam skenario Anda, tetapi mungkin), sementara folder yang dapat ditulisi Anda diisi dengan file-file daftar putih yang tersembunyi. Selain itu, itu membuat disk Anda bersih dan dapat digunakan secara individual. Apa yang terjadi jika file terlalu besar untuk disk, saya belum tahu.
Pemakaian:

 unionfs-fuse -o cow,max_files=32768 \
                 -o allow_other,use_ino,suid,dev,nonempty \
                 /path/to/dir1=rw:/path/to/dir2=ro:/dir3
                 /u/union/etc

di mana =rwmembuat folder dibaca dan ditulis dan =romembuatnya hanya membaca, bahkan jika izin akan menyatakan sebaliknya. Dalam etc/fstabhal ini

unionfs-fuse#/path/to/dir1=rw:/path/to/dir2=ro:dir3 /path/to/mount fuse cow,allow_other 0 0
DennisH
sumber
Bagaimana ini berurusan dengan removable disk yang tidak dicolokkan?
endolith
@endolith A mhddf pada disk yang dapat dilepas berarti tidak mengetahui apa yang akan berakhir dengan itu, unionfs sebenarnya masuk akal, tetapi membutuhkan remounting yang berbeda, tergantung pada ketersediaan perangkat yang dapat dilepas.
DennisH
Saya tidak mengerti komentar Anda. Jika Anda menggabungkan 3 drive USB menggunakan mhddfs dan meletakkan file di dalamnya, dan kemudian menghapusnya, apakah sesuatu yang buruk terjadi secara permanen? Jika Anda pasang kembali, apakah kembali seperti semula?
endolith
3
@endolith Mencabut kabel saat menulis tidak pernah baik. Jika Anda mencabut setelah menulis, semua drive USB secara individual OK, tidak ada masalah. Anda dapat mencabut drive, colokkan ke PC2, gunakan, pasang kembali ke PC1 dan remount untuk terus menggunakannya seperti sebelumnya. Di antara titik pemasangan pada PC1 biasa Anda perlu diinformasikan bahwa Anda mengambil drive (remount). Tapi, anggap Anda berbagi 2 file dengan PC2, Anda tidak dapat menentukan drive mana dari mhddf mount yang akan berakhir, atau apakah itu bahkan drive yang sama. Drive masih dapat dijangkau secara individual untuk memeriksa / memastikan lokasi, tetapi itu tidak melibatkan mhddf lagi.
DennisH
4

Jika Anda hanya menghubungkan beberapa perangkat secara bersamaan, tidak akan ada redundansi, sehingga Anda bisa kehilangan data. Tetapi jika Anda menggunakan media / server file untuk bisnis, Anda tidak boleh kehilangan apa pun karena Anda memiliki segalanya yang dicadangkan ke server cadangan / drive tape.

Mengapa Anda menghindari RAID? Titik RAID adalah ketersediaan; jika Anda tidak ingin kehilangan waktu karena kegagalan disk, Anda dapat menggunakan konfigurasi RAID 1, yang juga dapat mempercepat pembacaan Anda. Mereka tidak terlalu mahal, bayar sendiri pertama kali Anda mengalami kegagalan disk, dan jika Anda BENAR-BENAR menghindari harus membayar untuk kartu, Anda dapat mengatur Linux untuk menggunakan perangkat lunak RAID meskipun dibutuhkan sedikit lebih banyak perhatian dalam setup dan pemecahan masalah untuk memastikan Anda mengganti drive yang benar.

Kalau tidak, Anda harus melewati beberapa simpai untuk mencoba memulihkan data apa yang Anda dapat dari disk yang tersisa. Itu mungkin, tetapi Anda agak meminta lebih banyak masalah daripada yang seharusnya. Dapatkan cadangan yang baik di tempat, dan pertimbangkan kembali RAID.

Bart Silverstrim
sumber
1
Saya menghindari RAID karena saya tidak peduli dengan ketersediaan. Ini untuk penggunaan pribadi. Saya mencoba menghindari RAID karena saya mencari lebih untuk keandalan. Satu hal kecil yang salah di RAID dan Anda kehilangan seluruh array dan saya tidak merasa ingin berurusan dengan itu. Saya lebih suka memiliki satu penyimpanan file besar yang dapat saya backup daripada beberapa.
Fujin
1
Saya tidak yakin saya mengerti itu. RAID membuat Anda tidak kehilangan array jika ada yang salah. Tidak menggunakan RAID adalah ketika satu kegagalan akan membunuh semuanya.
JOTN
4
@ user72630: Anda memiliki kesalahpahaman serius tentang cara kerja RAID. Pertama-tama, ada level RAID yang berbeda, yang sebagian besar dirancang untuk menghindari kehilangan data jika terjadi kegagalan disk. Kemudian Anda dapat mengkonfigurasi RAID agar hanya memiliki satu sistem file pada banyak disk, sama seperti Anda berencana dengan LVM. Silakan baca en.wikipedia.org/wiki/RAID
Sven
Apa yang orang lain katakan. Inti dari memiliki RAID adalah menjaga ketersediaan ... yaitu, drive gagal, data masih dapat diakses. Dengan gigi yang sesuai Anda dapat melakukan hot-swap pada drive yang gagal dan tidak perlu khawatir tentang downtime sama sekali .
Bart Silverstrim
3

Jika Anda menggunakan satu sistem file yang mencakup semua volume LVM, seluruh sistem file akan rusak karena FS tidak tahu tentang volume fisik yang mendasarinya dan tidak akan membuat struktur yang selaras dengannya. Dimungkinkan untuk menyelamatkan beberapa bagian pada cakram kerja, tetapi tidak ada jaminan untuk itu.

Dan hanya memulihkan file dari disk yang rusak tidak akan berfungsi karena alasan yang sama.

Sven
sumber
2

Saya pikir rute yang lebih sederhana adalah mengkonfigurasi mdadm untuk partisi media Anda. Jika Anda tidak memiliki perangkat keras untuk "RAID nyata" menjalankan rute mdadm akan jauh lebih mudah, dan tampaknya memenuhi persyaratan Anda untuk redundansi dan penggantian disk sederhana.

# Format your drives first
# Create your MD
mdadm --create /dev/md1 --level=5 --raid-devices=3 /dev/sda2 /dev/sdb2 /dev/sdc2

# In the event that a drive fails do the following
mdadm /dev/md1 --fail /dev/sda1
# Format the new drive
mdadm --add /dev/md1 /dev/sda1

Untuk informasi lebih lanjut: http://en.wikipedia.org/wiki/Mdadm

Jika salah satu dari beberapa hard disk dalam volume saya turun, apakah saya akan kehilangan semua data saya atau apakah saya akan kehilangan data yang disimpan pada disk individu itu?

Jika Anda menggunakan mdadm dan RAID 5, Anda akan dapat kehilangan satu drive, dan memiliki array yang berfungsi, albiet Anda akan mengalami penurunan kinerja.

Danau Aaron
sumber
1

Saya pikir hal penting untuk dipahami yang belum disebutkan adalah file dalam sistem file belum tentu duduk di satu tempat pada disk. Itu dipecah menjadi blok yang mungkin berada di mana saja di dalam sistem file. 4K pertama jika file Anda mungkin ada di disk1, disk2 berikutnya, dll. Anda bisa membayangkan kekacauan mencoba memulihkan apa pun jika Anda kehilangan sepotong sistem file.

JOTN
sumber
0

Btrfs adalah pilihan yang baik di sini; Anda dapat memiliki metadata yang tangguh terhadap hilangnya satu disk (profil chunk "raid1"); data pada disk lain masih dapat dijangkau (hanya agar kami jelas, yang diterjemahkan ke file yang penuh lubang di mana pun disk yang hilang dirujuk). Ini dilakukan dengan menjalankan keseimbangan btrf dengan filter :

sudo btrfs balance start -m convert=raid1 /mnt/point
Gabriel
sumber