====== FlashCache s SSD ====== flashcache je zastarala. primo v kernelu je nyni "bcache". FlashCahe je system vyvinuty Facebookem k urychleni diskoveho IO pomoci cache na SSD. Například na agregovaných virtualizačních serverech s OpenVZ jsme pozorovali 2-3násobné zvýšení kapacity hostitelského stroje co se týká počtu hostovaných virtuálních serverů. Zajímavé bude jistě i využití u větších databázových strojů, atd... ===== Instalace ===== * apt-get install git-core build-essential dkms coreutils * Install your linux headers * find them with "aptitude search headers" * to see what kernel you run use "uname -a" * ln -s /usr/src/linux-headers-$(uname -r)/ /lib/modules/$(uname -r)/build #novy balicky od openvz jsou rozbity, timhle se to fixne. idealne v /etc/rc.local * git clone https://github.com/facebook/flashcache.git * cd flashcache * make -f Makefile.dkms * Manuál https://github.com/facebook/flashcache/blob/master/doc/flashcache-sa-guide.txt * make * make install * modprobe flashcache ===== Vytvoření cache ===== flashcache_create -p back flashcache-zarizeni /dev/ssd-zarizeni /dev/pomaly-zarizeni Vytvori /dev/mapper/flashcache-zarizeni * Typy flashcachi * **back** * Cachuje i zapisy = rychlost & riziko * Autodetekce cache pri bootu = neni potreba pri kazdym bootu znova vytvaret * Nacachovany data vydrzi napric rebootama * Pri shutdownu/rebootu se flushuje, ale to se da vypnout pres sysctl * **thru** * Data zapisuje na obe zarizeni najednou (= zapisy nezrychli) * **around** * Data zapisuje jen na disk, na SSD se nacachujou az pri cteni ===== Uvolnění cache ===== Cache uvolníme pomocí [[man>dmsetup]]u... dmsetup remove cachedev ===== Ovladani ===== zrychleny vypnuti systemu ''echo 1 > /proc/sys/dev/flashcache/**sdc1+vservers**/fast_remove'' ===== Sledování efektivity pomocí muninu ===== * Munin plugin v ruby (ukazuje naplnění cache a její využití) * https://github.com/pkhamre/flashcache-munin/ * https://raw2.github.com/pkhamre/flashcache-munin/master/flashcache_stats * Běžné pluginy na sledování zátěže systému a disku... Takhle se projevila instalace flashcache na vytížení disku s virtuálními servery OpenVZ: {{ :howto:hosting:flashcache-utilization.png }} ===== Když se něco rozbije ===== Někdy se stane, že je potřeba flashcache zakázat, např. když se rozbije SSD disk. V takovém případě je nutné zákazat modul flashcache v grubu. V debianu použijeme konfigurační soubor **/etc/default/grub** a tam přidáme do řádku GRUB_CMDLINE_LINUX následující GRUB_CMDLINE_LINUX="flashcache.blacklist=yes" A provedeme update-grub V centosu pak použijeme přímo **/boot/grub/menu.lst** a pridame volbu %%flashcache.blacklist=yes%% na konec cmdline kernelu, ktery bootujeme. Pro jistotu muzeme jeste modul flashcache pridat do /etc/modprobe.d/blacklist.conf blacklist flashcache Nezapomente potom v **/etc/fstab** opravit mountovani cachovaneho disku na skutecny fyzicky disk! Take je vyhodne flashcache disky pripojovat s parametrem ''nofail'', aby se predeslo zaseku pri bootu, kdyz modul nenabehne. ===== Odkazy ===== * Zdroje * http://nomaddeleeuw.nl/blog/1-ict/6-flashcache