LINUX.ORG.RU
ФорумAdmin

LVM cache. Кэширование тонкого пула.

 lvcache, , lvm thin provisioning


0

1

Надо взбодрить сторадж с lvm thin provisioning. Закинул ssd в vg, создал тома для кэша данных и метаданных, затем


lvconvert --type cache-pool --cachemode writethrough --poolmetadata VG/lv_cache_meta VG/lv_cache


потом присобачил кэш к всему тонкому тому

lvconvert --type cache --cachepool VG/lv_cache VG/thin

Операция прошла успешно

Logical volume VG/thin is now cached.

На на тонком пуле vg/thin лежит куча lv и создаются новые.
Вопрос в следующем:
1. Кэшируются ли тонкие lv при кэшировании всего тонкого пула vg/thin?
2. Кэшируются ли тонкие lv, созданные после добавления кэша тонкого пула?

Задаю вопросы потому что вижу запись на кэш-ssd, но не вижу чтения, хотя довольно давно с томов читается один и тот же набор данных. И приход от кэша при таком раскладе, естественно, не заметен.

★★★★★

Последнее исправление: King_Carlo (всего исправлений: 1)
Ответ на: комментарий от Deleted

Какой не днищенский? Нужно закэшировать lvm не разбирая vg/thin, там объём данных большой. Если б с нуля делал, то zfs заюзал бы.

King_Carlo ★★★★★
() автор топика

У меня впечатление, что lvcache работает только на prealocated lvm, но это не точно.

King_Carlo ★★★★★
() автор топика
Ответ на: комментарий от King_Carlo

–cachemode writeback

Чтоб потерять данные когда ssd откажет? Не, не надо.

Режим «writethrough» не имеет смысла как кешировние, вообще. Это какой-то кривой недо raid1/mirror.

anonymous
()
Ответ на: комментарий от anonymous

Режим «writethrough» не имеет смысла как кешировние, вообще.

writethrough - кэш на чтение, writeback - кэш на чтение и запись. Мне на запись не надо.
Читаем чего red hat пишет:


cachemode argument is set to writethrough, which indicates that a write is considered complete only when it has been stored in both the cache pool logical volume and on the origin logical volume.

King_Carlo ★★★★★
() автор топика
Последнее исправление: King_Carlo (всего исправлений: 1)
Ответ на: комментарий от King_Carlo

writethrough - кэш на чтение

Нет. Это кеш на чтение только того, что записалось в кеш.

На коротоком промежутке это не имеет смысла, потому что всё будет закешировано самими ядром и файловой системой, и будет читаться оттуда.

На долгом промежутке - это тоже имеет мало смысла. Кеш - это про оперативные данные, которые используются здесь и сейчас.

anonymous
()
Ответ на: комментарий от anonymous

Нет. Это кеш на чтение только того, что записалось в кеш.

Что значит нет? Я тоже самое написал ))

На коротоком промежутке это не имеет смысла, потому что всё будет закешировано самими ядром и файловой системой, и будет читаться оттуда. На долгом промежутке - это тоже имеет мало смысла. Кеш - это про оперативные данные, которые используются здесь и сейчас.

Я в курсе что такое кэш и как он работает. На zfs l2arc даёт заметный буст на чтение, ессесно после разогрева. Lvcache writethrough аналог l2arc, lvcache writeback = l2arc+zil. Вобщем теория и практика данного вопроса мне известна, хочу послушать использующих lvcache на тонких томах.

King_Carlo ★★★★★
() автор топика
Ответ на: комментарий от King_Carlo

Шапка много чего пишет.

Про lvm cache лучше забудь. С ним легко поймать проблем на свою пятую точку. Баг-трекер соврать не даст.

anonymous
()
Ответ на: комментарий от anonymous

Нет. LVM не кеширует (не записывает) читаемые данные в кеш.

Именно это writethrough кэш и делает - кладёт читаемые данные в кэш.

King_Carlo ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Про lvm cache лучше забудь. С ним легко поймать проблем.

Нельзя поймать проблем. Отвал writethrough-lvcache на горячую не повреждает данные и может быть удалён штатными средствами.

King_Carlo ★★★★★
() автор топика
Ответ на: комментарий от King_Carlo

Именно это writethrough кэш и делает - кладёт читаемые данные в кэш.

Сказочник, выкладывай пруфы.

И жду объяснения почему, если это так, ты создал эту тему?

anonymous
()
Ответ на: комментарий от anonymous

Я сюда пришёл не анонимусов развлекать, а получить ответ на вопросы. Так что с троллингом переместись в другую ветку, а за тем как работает writethrough-кэш обратись к манам, у редхэта есть хороший, там всё написано. До свидания.

King_Carlo ★★★★★
() автор топика
Ответ на: комментарий от King_Carlo

за тем как работает writethrough-кэш обратись к манам, у редхэта есть хороший, там всё написано

И где там написано, что в кеш пишется, когда читается?

anonymous
()
Ответ на: комментарий от King_Carlo

В своё время на хер свалился я с кеширования в lvm (ощущение что это не работает, не покидало меня ни разу). Перешёл на zfs, а в некоторых местах загнал и l2arc в кеш последовательного чтения даже.

DALDON ★★★★★
()
Ответ на: комментарий от King_Carlo

У редхэта не описана практика применения lvcache

А где описано у рЭдхЕта, как использовать lvmcache как read cache?

anonymous
()
Ответ на: комментарий от King_Carlo
$ curl -s https://access.redhat.com/documentation/en-us/redise_linux/6/html/logical_volume_manager_administration/lvm_cache_volume_creation \
> | grep -w read
Code surrounded in tildes is easier to read
anonymous
()
Ответ на: комментарий от King_Carlo

Это консольный аналог поиска слова «read» на веб-странице. Мой консольный вариант хотя бы что-то находит, а вот графический браузер - нет.

anonymous
()
Ответ на: комментарий от King_Carlo

У редхэта Именно так это звучит на инглише.

:)

Может редхет, или рэдхэт? Или все таки рьедхъет?

anonymous
()
Ответ на: комментарий от King_Carlo

Извини за флуд. Я тут распробовал дедупликацию на zfs :) Крутая штука, если уметь её готовить. Сливаю на это добро бекапы от баз данных, на zfs прямо. Сжатие+dedup ух, бомбически)

DALDON ★★★★★
()
Ответ на: комментарий от King_Carlo

Ты все статьи так читаешь?

Ты, давай, показывай использование как read cache. А не учи читать как ты, когда мерещится то, чего нет.

anonymous
()

Надо техразделы закрывать от анонимного компоста, иначе придётся в толксах технические темы заводить.

King_Carlo ★★★★★
() автор топика
Ответ на: комментарий от King_Carlo

Обсуждение модерации и унижение собеседника в техразделе.

anonymous
()

У меня на локалхосте подложен кэш под пул, субъективно эффект есть, по мере чтения кэш заполняется.

Когда были созданы тонкие тома (до или после присоединения кеша) пофиг, для кэша весь пул - тупо блочное устройство.

Из минусов: нельзя увеличить тонкий пул не отключая кэш (по крайней мере не на федоре).

С writeback у меня как-то не пошло, не получалось с него слезть, то ли то я дурак, то ли глючное оно, короче если захочется, то поэкспериментируй не на проде.

legolegs ★★★★★
()
Ответ на: комментарий от legolegs

Из минусов: нельзя увеличить тонкий пул не отключая кэш (по крайней мере не на федоре).

В моём случае тонкий пул сделан на весь VG и на нём (VG/thin) уже тонкие тома VG/thin/tomX. Добавление/удаление тонких томов на тонком пуле VG/thin отключения кэша не требует.

King_Carlo ★★★★★
() автор топика
Последнее исправление: King_Carlo (всего исправлений: 1)
Ответ на: комментарий от King_Carlo

Не все анонимы плохие, да что уж говорить, если некоторые зарегистрированные пользователи не с одной звездой несут ересь похуже некоторых анонимов.

anonymous
()
Ответ на: комментарий от anonymous

Не все анонимы плохие

Что полезного, конкретно в этой ветке, написал анон?
Я только вчера вечером узнал, что maxcom реализовал очень нужную фичу Изменения на форуме: автор топика может запретить анонимные комментарии
Непременно буду использовать.

King_Carlo ★★★★★
() автор топика
Ответ на: комментарий от chaos_dremel

Пока на стенде развлекаюсь, чтоб не сломать прод.


# dmsetup status
vg--tiny-lv_cache_cdata: 0 20971520 linear
vg--tiny-lv_cache_cmeta: 0 2097152 linear
vg--tiny-tom3: 0 104857600 thin 59968512 104857599
vg--tiny-thin-tpool: 0 976273408 thin-pool 3 5508/30720 294116/1906784 - rw discard_passdown queue_if_no_space - 1024
vg--tiny-thin_tdata: 0 976273408 cache 8 516/262144 128 61631/163840 233999 288547 376223 1049023 0 0 0 3 metadata2 writethrough no_discard_passdown 2 migration_threshold 2048 smq 0 rw -
vg--tiny-tom2: 0 52428800 thin 22994432 22994431
vg--tiny-thin_tmeta: 0 245760 linear
vg--tiny-tom1: 0 209715200 thin 67624448 209715199
vg--tiny-thin_tdata_corig: 0 976273408 linear
vg--tiny-thin: 0 976273408 linear


Linux tiny-srv 5.3.0-26-generic


# lvs -a -o +devices
Unknown feature in status: 8 516/262144 128 61631/163840 233999 288547 376223 1049023 0 0 0 3 metadata2 writethrough no_discard_passdown 2 migration_threshold 2048 smq 0 rw -
Unknown feature in status: 8 516/262144 128 61631/163840 233999 288547 376223 1049023 0 0 0 3 metadata2 writethrough no_discard_passdown 2 migration_threshold 2048 smq 0 rw -
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Devices
[lv_cache] vg-tiny Cwi---C--- 10,00g 37,62 0,20 0,00 lv_cache_cdata(0)
[lv_cache_cdata] vg-tiny Cwi-ao---- 10,00g /dev/sdc1(0)
[lv_cache_cmeta] vg-tiny ewi-ao---- 1,00g /dev/sdc1(2560)
[lvol0_pmspare] vg-tiny ewi------- 1,00g /dev/sdc1(2816)
thin vg-tiny twi-aotz-- 465,52g 15,42 17,93 thin_tdata(0)
[thin_tdata] vg-tiny Cwi-aoC--- 465,52g [lv_cache] [thin_tdata_corig] 37,62 0,20 0,00 thin_tdata_corig(0)
[thin_tdata_corig] vg-tiny owi-aoC--- 465,52g /dev/sdb1(30)
[thin_tmeta] vg-tiny ewi-ao---- 120,00m /dev/sdb1(119204)
tom1 vg-tiny Vwi-a-tz-- 100,00g thin 32,25
tom2 vg-tiny Vwi-a-tz-- 25,00g thin 43,86
tom3 vg-tiny Vwi-a-tz-- 50,00g thin 57,19

В кэше что-то есть, но нет чтения с ssd.

King_Carlo ★★★★★
() автор топика
Последнее исправление: King_Carlo (всего исправлений: 1)
Ответ на: комментарий от King_Carlo

Я видишь… Я буратина хитрая. Тебе мои цифры ничего не скажут. Я включаю дедупликацию только там, где она уместна. - То есть именно в этом томе и ни в каких иных. 600 мегабайт у меня в памяти. Dedeup ratio 3.34, всего у меня на разных томах где имеет смысл включать это, занято: 437 гиг. Но, у меня ещё компрессия lz4 (только она годна для дедупликации, имей ввиду), сжимает в 4ре раза. Итого, считай я в 12 раз сократил места, я так полагаю. Если умножить dedup ratio на компресс ратио

DALDON ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.