Saya memiliki server dengan 2 HDD (2x 1 TB), berjalan di RAID 1 (SW-RAID). Saya ingin meningkatkan kinerja IO dengan menggunakan flashcache
. Ada menjalankan mesin virtual KVM di atasnya, menggunakan LVM
.
Mengenai ini, saya punya pertanyaan berikut:
- Apakah ini akan berhasil?
flashcache
berfungsi untuk perangkat blok, namun ini semua mesin virtual dengan pengaturannya sendiri. - Berapa banyak yang saya harapkan untuk meningkatkan kinerja? Sebagian besar mesin virtual menjalankan situs web dan beberapa permainan host.
- Seberapa besar kebutuhan SSD? Apakah SSD yang lebih besar akan meningkatkan kinerja karena dapat menyimpan lebih banyak file?
- Apa yang terjadi jika SSD mati? Akan
flashcache
mengambil file dari HDD tradisional dan saya hanya bisa mengganti SSD? - Seberapa cepat
writeback
dibandingkan denganwritethrough
danwritearound
?
Sayangnya, saya tidak memiliki akses ke sistem pengujian, jadi bisakah saya menginstal flashcache
di server langsung tanpa melepas disk? Saya menemukan tutorial yang bagus di sini yang akan saya gunakan.
centos
kvm-virtualization
lvm
flashcache
Devator
sumber
sumber
Jawaban:
Flashcache, bagi mereka yang belum melihatnya, adalah metode untuk memperpanjang cache blok-Linux dengan drive SSD. Ini lebih murah daripada menjalankan server dengan setengah TB RAM hanya untuk caching.
Itu harus. Linux block-cache bekerja dengan cara caching blok yang diakses , bukan file . Selama Anda tidak memberikan mesin KVM akses langsung ke perangkat blok (Anda tidak), Linux Block Cache akan dimainkan. Namun, jika Anda sedang memberikan mesin KVM akses blok-perangkat langsung jawabannya ada kurang jelas.
Jika Anda menggunakan disk virtual yang didukung file, itu pasti akan berfungsi.
Jika Anda menggunakan disk virtual yang didukung LV, saya tidak tahu.
Itu adalah sesuatu yang tidak bisa kami jawab. Itu tergantung pada berbagai hal. Secara abstrak, Anda akan mendapatkan kinerja terbaik untuk mengukur SSD Anda menjadi lebih besar dari set blok aktif. Jika Anda mendapatkan caching yang sempurna, kinerja Anda akan sama dengan menjalankan seluruh sistem Anda pada SSD. Yang akan Anda lakukan secara efektif.
Mencari tahu ukuran pasti yang Anda butuhkan adalah sesuatu yang tidak dapat kami bantu. Lebih banyak lebih baik, tentu saja, tetapi menemukan rasio yang tepat antara cache-SSD dan penyimpanan utama bukan hal yang mudah.
Rumitnya ini adalah penulisan yang diatur untuk segera dihapus, seperti operasi sistem file tertentu dan beberapa konfigurasi basis data. Tulisan-tulisan itu hanya akan di-cache sebentar, dan kinerjanya tidak akan terpengaruh dengan ada atau tidaknya flashcache.
Hal yang sama terjadi ketika Anda memberitahu Linux untuk drop-cache tetapi dengan twist. Dengan drop-cache, semua penulisan tanpa blush yang ada di blok-cache akan dibuang ke disk. Apa yang terjadi ketika SSD menghilang tergantung pada mode caching :
Writethrough : Semua penulisan ditulis ke cache dan penyimpanan utama secara paralel, sehingga kemungkinan hilangnya SSD secara tiba-tiba yang menyebabkan kesalahan pada VM sangat kecil.
Writearound : Semua tulisan ditulis ke penyimpanan utama dan hanya di-cache saat dibaca. Tidak ada kemungkinan kesalahan dalam VM.
Writeback : Semua tulisan pergi ke Cache terlebih dahulu, dan ditulis ke penyimpanan utama di latar belakang. Kemungkinan besar menyebabkan kesalahan pada VM Anda jika SSD gagal, dan saya tidak akan menggunakan mode ini dalam produksi.
Tergantung pada seberapa banyak tulisan yang Anda lakukan. Jika penulisan Anda secara berkala memenuhi penyimpanan utama Anda, peningkatan kinerja bisa jadi cukup signifikan. Jika Anda kebanyakan membaca dengan beberapa penulisan, Anda tidak akan melihat peningkatan.
Juga, writeback adalah kebijakan buruk untuk apa yang Anda lakukan jadi jangan gunakan itu.
sumber
writeback
karena bisa merusak segalanya tanpa BBU. Saya tidak akan menggunakan caching SSD sama sekali, tetapi hanya SSD biasa. Terima kasih lagi!Ya, itu akan berfungsi dengan baik selama Anda menggunakan perangkat blok yang tepat. Dan ada sebuah trik.
Ketika LVM memindai PV, ia harus melihat partisi melalui hard drive itu sendiri, dan melalui perangkat "virtual" flashcache juga.
Satu gejala yang jelas adalah bahwa alat LVM mengeluh tentang duplikat PV.
Cara mengatasinya, untuk menghindari peringatan tersebut dan yang lebih penting, pastikan bahwa perangkat flashcache digunakan oleh LVM2, adalah untuk menyesuaikan filter
/etc/lvm/lvm.conf
.Halaman
LVM.CONF(5)
manual akan menjelaskannya lebih baik daripada saya, tetapi saya akan meninggalkan Anda dengan sebuah contoh, jika semua volume fisik didukung oleh flashcache:sumber
Ada juga tingkatan dari pencipta lessfs. Itu akan memungkinkan Anda untuk membuat perangkat hybrid antara SSD dan HDD. Kinerja tier tampaknya mengungguli Flashcache.
http://www.lessfs.com/wordpress/
http://www.lessfs.com/wordpress/?p=776
//Kristen
sumber
Beberapa aplikasi membuka file dengan cara yang tidak buffer.
http://man7.org/linux/man-pages/man2/open.2.html
Sebagai contoh, ini sangat umum untuk database. Jadi periksa ulang apakah flashcache berfungsi dengan set aplikasi ini.
sumber