Pertanyaan linux LVM mirror vs. MD mirror


Saya pikir saya ingat membuat cermin beberapa tahun yang lalu dengan LVM, dan saya tidak ingat hal "log" ini. Atau mungkin saya membuat cermin dengan mdadm dan meletakkan LVM di atas. Itu pasti itu.

  1. Apa log LVM jika itu hanya cermin? Apa yang disimpan di sana? Apa tujuannya? Apakah menggunakan "--mirrorlog core" buruk? Apa sisi bawahnya? Saya tidak ingin harus memiliki partisi lain untuk log jika saya tidak perlu.

  2. Ada rekomendasi untuk menggunakan teknologi? Bahkan jika saya membuat cermin dengan mdadm, saya akan menggunakan LVM di atas itu. Jadi, dalam hal ini, mungkin lebih baik untuk memiliki seluruh setup yang dibangun dengan LVM ...? Apakah itu akan menghasilkan lebih banyak hit kinerja atau kurang?

Disk untuk menyimpan Xen domU "disk".

Maaf untuk "pertanyaan" tidak-ke-titik yang kompleks.

Ide dan saran dan tautan sangat disambut. Terima kasih!


11
2018-03-27 07:26




md tampaknya berfungsi lebih baik untuk operasi cermin bila dibandingkan dengan lvm. Lihat serverfault.com/questions/80134/linux-md-vs-lvm-performance - Zoredache
Pencerminan LVM dimaksudkan untuk tujuan yang berbeda. Meskipun Anda dapat menggunakannya untuk "meniru" cara MD melakukannya, itu benar-benar digunakan untuk meng-kloning volume. Lihat serverfault.com/questions/97845/lvm-mirroring-vs-raid1 - Avery Payne
Jika itu dimaksudkan untuk kloning, lalu mengapa itu membutuhkan tiga jilid? - d-_-b
Lihat pertanyaan terkait unix.stackexchange.com/questions/150644/… - Faheem Mitha


Jawaban:


Secara pribadi saya selalu menggunakan MD + LVM. Lebih cepat (MD dapat melakukan pembacaan paralel dalam RAID1) dan hanya membutuhkan 2 disk (jika Anda tidak ingin membangun kembali cermin setelah setiap reboot) dan MD dirancang hanya untuk melakukan RAID, dan itu melakukannya dengan sangat baik. Ini juga lebih fleksibel.

Juga saya telah dibakar oleh LVM. Dalam satu kasus itu LVM striping pada HP-UX, (seharusnya tidak terjadi dengan LVM2 di Linux), dan saya tidak dapat memperpanjang LV karena ekstensi harus memiliki jumlah garis yang sama. Tampaknya masuk akal, tapi kadang ...

Lain waktu dengan mirroring (LVM2 di Linux kali ini), tapi sekarang saya tidak ingat apakah LVM menolak mengambil snapshot dari LV cermin atau memperpanjangnya, secara efektif meniadakan manfaat karena LVM di tempat pertama (kami melakukannya pada akhirnya, tetapi terlibat menggunakan lvconvert bolak-balik).


9
2018-03-27 08:06



Terima kasih! Saya pikir saya akan pergi dengan LVM di atas MD. Sepertinya ada beberapa masalah dengan autodeteksi MD. (raid.wiki.kernel.org/index.php/RAID_Boot) Saya ingin mencerminkan seluruh sistem saya (swap, boot, /, var, home, usr). Jadi saya harus mencari sesuatu selain autodetect. - d-_-b
Ya, autodetect adalah ide yang bagus pada prinsipnya, tetapi memberikan semua jenis sakit kepala. Saya memiliki pengaturan dengan iSCSI + multipath + MD + LVM ... dan autodetect adalah ... menarik, tetapi tidak berguna dalam kasus ini. - Dan Andreatta


Ketika sepasang cermin tiba-tiba mati, di sistem apa pun, mungkin ada beberapa blok yang telah ditulis ke satu perangkat tetapi belum ke perangkat lain. Dapat dibayangkan dengan penataan ulang jalur IO ada beberapa blok yang telah ditulis ke A tetapi tidak B, dan beberapa ditulis ke B tetapi belum ke A.

Saat mesin dihidupkan ulang, perlu membuat perangkat konsisten. Hanya memiliki dua perangkat saja tidak cukup: tidak akan tahu blok mana yang tidak konsisten dan tidak tahu versi mana yang lebih baru.

Jadi perangkat lunak cermin perlu menyimpan sedikit metadata untuk terus melacak ini. Ini disebut "log menulis-niat".

md biasanya menyimpannya di beberapa ruang yang disediakan di dalam perangkat itu sendiri, meskipun Anda juga dapat memilih untuk menyimpannya di perangkat terpisah. (Ini adalah salah satu alasan mengapa cermin md sedikit lebih kecil dari perangkat dasar.

Cermin LVM hanya dapat menyimpan log sebaran eksternal, yang seperti yang Anda perhatikan agak menjengkelkan untuk kasus biasa di mana Anda memiliki dua disk fisik. Saya yakin Anda masih memiliki pilihan untuk menyimpannya di partisi yang berbeda pada perangkat fisik yang sama, tetapi itu masih tidak nyaman.

Tujuan log cermin LVM, seperti yang saya pahami, adalah untuk melacak blok-blok yang telah ditulis ke satu perangkat tetapi belum ke perangkat lainnya.


4
2017-10-17 22:51





ini adalah dua konsep berbeda:

  • LVM adalah seperti namanya untuk manajemen volume. Anggap saja sebagai mekanisme untuk menggabungkan beberapa volume menjadi satu (ya Anda dapat mengatakan itu seperti raid0), mengubah ukuran mereka, mengubah ukuran langsung, membuat snapshot.
  • MD adalah untuk manajemen RAID. Tambahkan beberapa perangkat menjadi satu metadevice, buat metadevice ini sangat tersedia dengan menggunakan raid1, 5, 10, dll ...

LVM beroperasi pada perangkat penyimpanan baik itu metadevices, atau perangkat yang disajikan oleh pengontrol raid, atau hanya disk biasa.

MD beroperasi pada disk (ya Anda juga dapat menggunakan disk yang disajikan oleh pengontrol raid, tetapi apa gunanya? ..

LVM bukan untuk membuat penyimpanan Anda sangat tersedia. Dan juga MD bukan untuk manajemen volume ...

Semoga ini membantu :)


2
2018-03-27 12:19



Saya mengerti apa itu. Namun, jika Anda membaca halaman manual untuk lvcreate, ia mengatakan itu dapat membuat cermin. Saya kira ini adalah sedikit mainan untuk saat ini? - d-_-b
imho ya. saya tidak dapat melihat penggunaan yang baik untuk itu setidaknya untuk saat ini. tidak hanya itu cermin pada volume (bukan perangkat) tingkat, itu juga sedikit "menarik" bagaimana itu dibuat, misalnya jika Anda perlu cermin 2 arah (seperti di + asli copy) Anda harus memiliki 3 volume - satu untuk setiap sisi cermin + volume log. tapi sekali lagi - imho. :) - rytis


LVM berasal dari jenis sistem UNIX lainnya. Saya menggunakannya di HPUX yang tidak memiliki lapisan MD Linux ketika saya mengerjakannya 10 tahun yang lalu, tidak yakin tentang sekarang. Dalam keadaan itu, mirroring LVM menjadi berguna dalam situasi di mana RAID perangkat keras tidak tersedia.


1
2017-07-04 14:24



Saya hanya merasa aneh bahwa cermin LVM membutuhkan lebih dari satu volume. Cermin seperti apa itu? - d-_-b
@toor volume ketiga digunakan untuk menyimpan log write-depan untuk cermin, pada dasarnya untuk melacak apa yang perlu disinkron ulang setelah berhenti mendadak. Pada MD, ini biasanya disimpan di bagian cadangan dari dua disk. - poolie


dengan cermin -mirrorlog dan opsi -alloc di mana saja, dengan dua disk, Anda mendapatkan dua log cermin 4M, satu pada setiap disk. Saya kesal karena saya harus mengesampingkan kebijakan untuk apa yang tampaknya seperti situasi yang paling umum, tapi oh baiklah.

LVM di Linux tidak terkait dengan hal di HP-UX atau AIX, hanya memiliki perintah userspace yang sama. LVM di Linux secara internal menggunakan sistem DM, dan karena itu menggunakan semua kode yang sama dengan MD. Pada titik ini, saya tidak melihat keuntungan dari LVM atas MD. Untuk partisi yang Anda inginkan cepat dan tidak peduli dengan cadangan untuk (misalnya partisi swap untuk VM tamu), LVM memberi Anda pilihan apakah Anda ingin cermin atau tidak, atau apakah pengupasan lebih baik.

Dan, caranya lebih mudah untuk menambahkan disk ke LVM daripada MD.


1
2018-01-02 20:36