The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  правила/FAQ  поиск  регистрация  вход/выход  слежка  RSS
"Код OverlayFS принят в состав ядра Linux 3.18"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от opennews (ok) on 28-Окт-14, 11:47 
В тестовом выпуске ядра Linux 3.18-rc2 появилась (https://lkml.org/lkml/2014/10/26/137) поддержка файловой системы OverlayFS (https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux....), разработанной компанией SUSE в качестве более прогрессивной замены UnionFS (http://unionfs.filesystems.org/) и AUFS (http://aufs.sourceforge.net/). В процессе цикла подготовки первого кандидата в релизы, включение OverlayFS в состав ядра было отложено, но в последний момент разработчикам удалось устранить финальные замечания и код был принят во второй кандидат в релизы.


OverlayFS позволяет (https://git.kernel.org/cgit/linux/kernel/git/mszeredi/vfs.gi...) создать виртуальную многослойную  файловую систему, объединяющую несколько частей других файловых систем. OverlayFS входит в число наиболее ожидаемых в ядре возможностей, так как монослойная ФС востребована в Live-дистрибутивах и системах контейнерной виртуализации, и в частности, необходима для организации работы контейнеров отдельных десктоп-приложений (http://www.opennet.dev/opennews/art.shtml?num=40176). При помощи OverlayFS можно организовать файловую систему, которая будет сформирована поверх доступной только на чтение основы, созданной из существующей директории в уже примонтированной типовой ФС.

ФС создаётся из нижнего и верхнего слоёв, каждый из которых прикрепляется к отдельным директориям. В качестве нижнего слоя, используемого только для чтения, могут применяться директории любых поддерживаемых в Linux систем, включая NFS и другие экземпляры OverlayFS. Верхний слой, который может быть доступен на запись, будет перекрывать состав нижнего слоя, т.е. если файлы дублируются, в итоговой ФС будет виден только перекрывающийся контент верхнего слоя. При этом все записываемые и изменяемые данные будут сохраняться только в верхнем слое, даже если изначально они размещались в нижнем слое ФС, что позволяет использовать одну основу для создания серии одинаковых окружений (контейнеры приложений), гарантировать неизменность базовых данных (гостевые сеансы) или организовать полноценную работу поверх накопителя, не поддерживающего запись (CD/DVD).


Основным недостатком ранее существующей файловой системы UnionFS и созданного на её основе ответвления AUFS является излишне усложнённая кодовая база, составляющая примерно 60 тысяч строк кода, не использующая штатную подсистему VFS. Код AUFS и UnionFS очень трудоёмок для сопровождения и не отвечает требованиям к оформлению кода для ядра Linux, что не позволяло включить его в основной состав ядра. Кроме того, производительность и надёжность данных систем оставляет желать лучшего (http://lwn.net/Articles/396020/). В рамках проекта OverlayFS предпринята попытка создания компактного, надёжного и высокопроизводительного аналога UnionFS, построенного поверх штатной подсистемы VFS.


Механизм работы OverlayFS  в корне отличается от UnionFS: после открытия файла, все операции с ним напрямую транслируются непосредственно в базовые файловые системы, из которых составлен раздел UnionFS. Подобный подход позволяет существенно упростить реализацию многослойной ФС и добиться  производительности на уровне основной ФС. В OverlayFS поддерживается отдельное дерево элементов директорий (dentry), дублирующее подобные структуры низлежащих ФС, что позволяет обеспечить быстрое кэширование запросов без внесения изменений в VFS, но приводит к дополнительным затратам памяти за счёт дублирования в памяти параметров inode (предусмотрена возможность оптимизации для совместного использования inode, не привязанных к директориям).


URL: http://www.heise.de/open/meldung/Linux-Kernel-mit-OverlayFS-...
Новость: http://www.opennet.dev/opennews/art.shtml?num=40947

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Код OverlayFS принят в состав ядра Linux 3.18"  +10 +/
Сообщение от Lautre (ok) on 28-Окт-14, 11:47 
Класс!
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

29. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от crypt (ok) on 28-Окт-14, 21:38 
+6? а в каких случаях вы используете это?
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

31. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от uhbif19_ on 28-Окт-14, 21:51 
AuFS используется Docker.
Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

36. "Код OverlayFS принят в состав ядра Linux 3.18"  –1 +/
Сообщение от Lautre (ok) on 29-Окт-14, 09:16 
> +6? а в каких случаях вы используете это?

Livecd кальки работают на aufs + утилиты calculate-assemble 3.

Ответить | Правка | ^ к родителю #29 | Наверх | Cообщить модератору

2. "Код OverlayFS принят в состав ядра Linux 3.18"  +2 +/
Сообщение от Xaionaro email(ok) on 28-Окт-14, 11:48 
Рад слышать. Неудобно было использовать внешний patchset для поддержки AUFS.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Код OverlayFS принят в состав ядра Linux 3.18"  –1 +/
Сообщение от Аноним (??) on 28-Окт-14, 12:07 
Docker заживет новой жизнью.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

5. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Аноним (??) on 28-Окт-14, 12:20 
в венде и шапке её всё равно не будет, в отличие от докера
Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

6. "Код OverlayFS принят в состав ядра Linux 3.18"  +1 +/
Сообщение от Michael Shigorin email(ok) on 28-Окт-14, 12:33 
> в венде и шапке её всё равно не будет, в отличие от докера

Как полагаете, сколько лет этому патчсету и много ли подобных в шапочных "2.6.32" и "3.10"?

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

8. "Код OverlayFS принят в состав ядра Linux 3.18"  –1 +/
Сообщение от Аноним (??) on 28-Окт-14, 12:35 
а aufs как не было в 2.6.32 так и нет, nih-синдром это не шутки
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

9. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Аноним (??) on 28-Окт-14, 12:41 
написали же aufs и unionfs по кодовой базе УГ
если оверлай будет безглючным, стабильным, шустрым, то редхат при необходимости портирует его куда угодно, кроме 2.6.32 тк возможна проблема с vfs
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

20. "Код OverlayFS принят в состав ядра Linux 3.18"  –1 +/
Сообщение от Mirraz (ok) on 28-Окт-14, 15:44 
Написали, что aufs - плохо, а ты и поверил. Нет, это чисто NIH.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

22. "Код OverlayFS принят в состав ядра Linux 3.18"  +4 +/
Сообщение от Led (ok) on 28-Окт-14, 17:39 
> Написали, что aufs - плохо, а ты и поверил. Нет, это чисто
> NIH.

Ну, ты же внимательно смотрел код aufs, поэтому точно знаешь, что "это чисто NIH".

Ответить | Правка | ^ к родителю #20 | Наверх | Cообщить модератору

7. "Код OverlayFS принят в состав ядра Linux 3.18"  +1 +/
Сообщение от Michael Shigorin email(ok) on 28-Окт-14, 12:34 
Отлично, будем посмотреть (ц)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

10. "Код OverlayFS принят в состав ядра Linux 3.18"  +1 +/
Сообщение от Гость (??) on 28-Окт-14, 12:53 
Михаил, меня одна из прошлых реализаций интересовала как возможность миграции данных СУБД с одного диска на другой.
Тестирование показало, что это работало не так, как ожидалось: во время внутренней дефрагментации БД, службы подвисали и новые данные не вставлялись.
Интересно было бы узнать Ваш взгляд на проблему прозрачной миграции данных с диска на диск.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

12. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Аноним (??) on 28-Окт-14, 14:08 
LVM?
Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

16. "Код OverlayFS принят в состав ядра Linux 3.18"  –1 +/
Сообщение от Гость (??) on 28-Окт-14, 14:42 
Я рассматривал такой вариант, через него и осуществил затею.
Но хочется прозрачно: сверху стеклом большего размера накрыл, перерисовал и убрал подложку.
Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

17. "Код OverlayFS принят в состав ядра Linux 3.18"  +3 +/
Сообщение от Аноним (??) on 28-Окт-14, 15:07 
"Хочу есть, но не ртом."
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

19. "Код OverlayFS принят в состав ядра Linux 3.18"  +1 +/
Сообщение от Andrey Mitrofanov on 28-Окт-14, 15:11 
> Я рассматривал такой вариант, через него и осуществил затею.
> Но хочется прозрачно: сверху стеклом большего размера накрыл, перерисовал и убрал подложку.

Ну, рассказывай, чем тебе pvmove не "сверху стеклом накрыл"?

Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

26. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Sinot (ok) on 28-Окт-14, 19:21 
Я так понял, что у OverlayFS есть возможность переноса данных между дисками с разными ФС, без потери доступности данных на какое-то время. С LVM, raid и т.п. только клонирование.
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

28. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Аноним (??) on 28-Окт-14, 21:37 
хреново документацию читал pvmove перемещает экстенты между pv на ходу
Ответить | Правка | ^ к родителю #26 | Наверх | Cообщить модератору

30. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Sinot (ok) on 28-Окт-14, 21:51 
То есть если у меня есть lv с ext4 и lv с fat32, я с помощью pv смогу перенести файлы с одного на другой? На сколько я прочитал документацию - нет.
Ответить | Правка | ^ к родителю #28 | Наверх | Cообщить модератору

32. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Аноним (??) on 28-Окт-14, 22:03 
тебе не нужен второй lv, первый lv просто переезжает с одного pv на другой.
Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

35. "Код OverlayFS принят в состав ядра Linux 3.18"  +1 +/
Сообщение от Sinot (ok) on 29-Окт-14, 08:42 
Мы друг друга не поняли. У меня есть диск с одной ФС, я хочу переехать на другой диск с другой ФС, да еще до кучи на втором диске уже есть данные и их терять нельзя. Иначе говоря нужно скопировать с одного на другой файлы, а не разделы. Да еще и так, чтобы для всех этот переезд виден не был.
Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

40. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Гость (??) on 30-Окт-14, 12:00 
Именно. Я ровно того же хочу. Есть гора серверов с зоопарками файловых систем, которые надо плавно проапрейдить.
У кого-то xfs, где-то лет 10 работает reiserfs, где-то даже ntfs.
Всё это добро надо перетащить на новые хранилища, где и места дам машинам больше, и файловые системы сменятся у некоторых.
Ответить | Правка | ^ к родителю #35 | Наверх | Cообщить модератору

42. "Код OverlayFS принят в состав ядра Linux 3.18"  +1 +/
Сообщение от Andrey Mitrofanov on 31-Окт-14, 09:56 
> Мы друг друга не поняли. У меня есть диск с одной ФС,
> я хочу переехать на другой диск с другой ФС, да еще
>Да еще и так, чтобы для всех этот переезд
> виден не был.

Ммм, ну да, use case. Правда если прикинуть частоту перехода на новую FS (приблизительно оцениваю как частоту/скорость написания новой FS), помножить на "куча серверов", то можно только _удивляться, как они *так* *быстро* выкатили эту нужную фичу. Видимо, все "спасибы" гламурным контенерезаторам.

Ответить | Правка | ^ к родителю #35 | Наверх | Cообщить модератору

43. "Код OverlayFS принят в состав ядра Linux 3.18"  +1 +/
Сообщение от Andrey Mitrofanov on 31-Окт-14, 10:05 
>Да еще и так, чтобы для всех этот переезд  виден не был.

Да, остановить Сервис и сделать rsync тяжелее, конечно, чем...

Или даже _невозможно! Так и видится файловая помойка ("куча" ф.помоек!) с требованием online-а в 9 девяток и непрерывным циклом доменно-прокатного редактирования вордов-эксельчиков. Страх и ужас.

---
Про fat+rieser в связке не скажу, но вот, например, http://gluster.org/community/documentation/index.php/Gluster... ещё, возможно, способ.

Ответить | Правка | ^ к родителю #35 | Наверх | Cообщить модератору

24. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Michael Shigorin email(ok) on 28-Окт-14, 18:42 
> Интересно было бы узнать Ваш взгляд на проблему прозрачной миграции данных с
> диска на диск.

Если локально, то может иметь смысл MD RAID1 (обратите внимание на --write-mostly); если между хостами -- DRBD.  Но я так не делал.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

11. "Код OverlayFS принят в состав ядра Linux 3.18"  –1 +/
Сообщение от izyk email(ok) on 28-Окт-14, 12:58 
> построенного поверх штатной подсистемы VFS.

Ну не совсем.
      vfs: export check_sticky()
      vfs: add whiteout support
      vfs: add RENAME_WHITEOUT
      ext4: support RENAME_WHITEOUT
      shmem: support RENAME_WHITEOUT
Ох уж эти ВАЙТАУТЫ, тот еще костыль.
Не зря, Линус так долго сопротивлялся.
Но, продовили, все же.
Знаком, немного, с этим по NetBSD.
"DragonFly" гордится что ушел от этого, а в Linux,
только вкорячили.
Печалька. IMHO.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Xaionaro email(ok) on 28-Окт-14, 14:08 
>> построенного поверх штатной подсистемы VFS.
> Ну не совсем.
>       vfs: export check_sticky()
>       vfs: add whiteout support
>       vfs: add RENAME_WHITEOUT
>       ext4: support RENAME_WHITEOUT
>       shmem: support RENAME_WHITEOUT
> Ох уж эти ВАЙТАУТЫ, тот еще костыль.

А не лень будет написать конкретнее? Что это за WHITEOUT-ы и чем они плохи? А то гуглится лишь исходный код с использованием этих {DELETE,RENAME}_WHITEOUT, но никакой документации. В результате зачем это нужно остаётся не понятным.

Самое вменяемое, что принёс поиск было: http://www.fsl.cs.sunysb.edu/pipermail/unionfs/2005-October/...

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

15. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Andrey Mitrofanov on 28-Окт-14, 14:30 
>> Ох уж эти ВАЙТАУТЫ, тот еще костыль.
> А не лень будет написать конкретнее? Что это за WHITEOUT-ы и чем
> они плохи? А то гуглится лишь исходный код с использованием этих

??! https://kernel.googlesource.com/pub/scm/linux/kernel/git/msz...

Первая ссылка в google://overlayfs whiteout

Поддержка удаления из union-а, когда ниже лежащая FS - в read-only, наверное.

> {DELETE,RENAME}_WHITEOUT, но никакой документации. В результате зачем это нужно остаётся
> не понятным.

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

18. "Код OverlayFS принят в состав ядра Linux 3.18"  +1 +/
Сообщение от izyk email(ok) on 28-Окт-14, 15:10 
>>> Ох уж эти ВАЙТАУТЫ, тот еще костыль.
>> А не лень будет написать конкретнее? Что это за WHITEOUT-ы и чем
>> они плохи? А то гуглится лишь исходный код с использованием этих
> ??! https://kernel.googlesource.com/pub/scm/linux/kernel/git/msz...
> Первая ссылка в google://overlayfs whiteout
> Поддержка удаления из union-а, когда ниже лежащая FS - в read-only, наверное.

Точно.
В каталоге появляется запись с именем файла и типом "whiteout", по сути,
новый тип файла.
Я так понял, такие каталоги были давно, а вот их поддержку, на уровне VFS,
вкорячили только сейчас.
По мне, чем меньше сущностей, тем лучше.
Хотя реализация, на какое-то время, упростится, но взаимосвязь
overlayfs <-> VFS будет расти.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

21. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Xaionaro email(ok) on 28-Окт-14, 16:40 
>>> Ох уж эти ВАЙТАУТЫ, тот еще костыль.
>> А не лень будет написать конкретнее? Что это за WHITEOUT-ы и чем
>> они плохи? А то гуглится лишь исходный код с использованием этих
> ??! https://kernel.googlesource.com/pub/scm/linux/kernel/git/msz...
> Первая ссылка в google://overlayfs whiteout

Ок, спасибо. Я гуглил без слова "overlayfs", так как думал, что это более общая вещь.

Ответить | Правка | ^ к родителю #15 | Наверх | Cообщить модератору

25. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от izyk email(ok) on 28-Окт-14, 19:06 

> Ок, спасибо. Я гуглил без слова "overlayfs", так как думал, что это
> более общая вещь.

Да, более общая.
unionfs whiteout
aufs whiteout

Ответить | Правка | ^ к родителю #21 | Наверх | Cообщить модератору

23. "Код OverlayFS принят в состав ядра Linux 3.18"  +2 +/
Сообщение от Konstantin (??) on 28-Окт-14, 17:49 
давно еще писал, что такое вайтаут:

http://unixfaq.ru/index.pl?req=qs&id=414

плохи вайтауты тем, что это очередная загогулина в реализации FS, которую потом необходимо учитывать при разработках нового и доработках старого. Не все ФС могут поддерживать вайтауты.

Ответить | Правка | ^ к родителю #13 | Наверх | Cообщить модератору

14. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Минона on 28-Окт-14, 14:20 
>"DragonFly" гордится что ушел от этого

да он много от кого/чего ушел... пришел бы еще куда-нибудь :)

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

37. "Код OverlayFS принят в состав ядра Linux 3.18"  –2 +/
Сообщение от seyko2 email(ok) on 29-Окт-14, 10:09 
Каким образом DragonFly ушёл от whiteout? В Linux планировали реализовать witeout через специальный char device. Возможно так и сделали. Однако OvelayFS не достаточно для нормального livecd типа Slax. OverlayFS позволяет объединить только два каталога -- read-write и read-only. А желательно как минимум много read-only.
Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

27. "Код OverlayFS принят в состав ядра Linux 3.18"  –1 +/
Сообщение от Gannet email(ok) on 28-Окт-14, 19:47 
Чудесно. Только вот RC2 не грузится. Упс.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

34. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от pavlinux (ok) on 29-Окт-14, 01:43 
Ура, мои сигналы в ноосферу достигли их мозгов спустя 20 лет!
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

41. "Код OverlayFS принят в состав ядра Linux 3.18"  +1 +/
Сообщение от andy (??) on 31-Окт-14, 06:13 
> Ура, мои сигналы в ноосферу достигли их мозгов спустя 20 лет!

В следующий раз в багтрекер стучись или в рассылку пиши.

Ответить | Правка | ^ к родителю #34 | Наверх | Cообщить модератору

45. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Аноним (??) on 04-Ноя-14, 02:04 
Не всегда и не все так просто порой проще отправить в Ноосферу гораздо проще чем зарегистрироваться или создать Issue а баг трекере. Хотя тенденция сейчас хорошая пошла открывать код и т.д.
Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

44. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от Аноним (??) on 04-Ноя-14, 02:02 
А что с удалением? А что с повторным монтированием? А в файл можно?
А что насчет замены SCM такой штуковиной?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

46. "Код OverlayFS принят в состав ядра Linux 3.18"  +/
Сообщение от iZEN email(ok) on 14-Авг-17, 11:50 
Так это ж nullfs из FreeBSD, которой сто лет в обед: "The nullfs layer first appeared in 4.4BSD."
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру