OpenVZ Forum


Home » International » Russian » suspend и не ext3 (в чём смысл зависимости)
suspend и не ext3 [message #51522] Tue, 08 July 2014 02:23 Go to next message
seyko2 is currently offline  seyko2
Messages: 184
Registered: February 2007
Location: Moscow
Senior Member

From: 83.220.236*
Привет.
Есть дистрибутив типа Slax с ядром OpenVZ. Ядра 2.6.18 и 2.6.32 (последние). Никаких проблем с житьём под aufs как корневой системой нет: компиляция, запуск-останов контейнеров... А вот с suspend -- да, не хочет. Если разместить /vz/private/XXX на ext3 (mount -o bind) -- тогда работает (simfs, qouta off)

Вопрос: в чем смысл зависимости от типа файловой системы? Работать то работает...

2.6.32
------
 Setting up checkpoint...
        suspend...
 Can not suspend container: Device or resource busy
 Error: file struct is referenced outside 3 4
 Checkpointing failed

2.6.18
------
Setting up checkpoint...
        suspend...
        dump...
Can not dump container: Invalid argument
Error: pg->mapping!=f_mapping: 001e8000 dc601628 dc61480c 162688
Error: dump_one_vma: funkey page
Checkpointing failed

Заметьте: 2.6.18 suspend выполняет, а ругается на что-то другое.
Re: suspend и не ext3 [message #51530 is a reply to message #51522] Thu, 10 July 2014 00:47 Go to previous messageGo to next message
seyko2 is currently offline  seyko2
Messages: 184
Registered: February 2007
Location: Moscow
Senior Member

From: 83.220.236*
Попытка грубо обойти в ядре проверки, мешающие CP, не удалась: всё закончилось перезагрузкой при выполнении CP. В процессе правки ядра выяснилось, что для случая LiveCD под процесс проверки попадает magic от squashfs. Вывод: хотя CP -- это то, что непрерывно дорабатывается в каждой версии ovz, эта часть -- самая сырая.

PS: Hibernate то выполняется и ему не мешает squashfs.

[Updated on: Thu, 10 July 2014 00:48]

Report message to a moderator

Re: suspend и не ext3 [message #51543 is a reply to message #51522] Mon, 14 July 2014 18:40 Go to previous messageGo to next message
seyko2 is currently offline  seyko2
Messages: 184
Registered: February 2007
Location: Moscow
Senior Member

From: 83.220.239*
Удалось добиться suspend при использовании aufs через NFS.
На /vz/aufs/202 монтируется aufs. Далее
mount -t nfs localhost:/vz/aufs/202 /vz/private/202

В /etc/exports
/vz/aufs/202 *(rw,no_root_squash,no_subtree_check,fsid=0x83)

template на 202 был centos6. При попытке сразу сделать suspend он не удаётся. Надо подождать минуты 2, пока по
vzctl console 202

появится приглашение от консоли. После этого suspend/resume проходят нормально.

PS: aufs в ядре собрана с поддержкой nfs (nfs export)

[Updated on: Mon, 14 July 2014 18:58]

Report message to a moderator

Re: suspend и не ext3 [message #51546 is a reply to message #51543] Tue, 15 July 2014 12:31 Go to previous messageGo to next message
seyko2 is currently offline  seyko2
Messages: 184
Registered: February 2007
Location: Moscow
Senior Member

From: 83.220.239*
Обрадованный успехом с checkpoint/restore при использовании NFS, по-второму разу решился попробовать aufs для /vz/private/202. Выяснилось, что если приложение открыло какой-то файл в CT, то реально он виден для checkpoint/restore как файл того каталога, который включен в UNION. В основном это файл из squashfs, и путь к нему, естественно, вовсе не совпадает с /vz/private/202. Проверки при checkpoint было сравнительно легко отключить и checkpoint проходил. Но для restore заставить открыть файл, который лежит вне CT root, не удалось.
Setting CPU units: 1000
Restore error, undump failed: No such file or directory
Error: rst_open_file: failed to lookup path '/livecd/images/_vz_private_202/ct-202-01-base.lzm/lib/libnss_files-2.12.so':
-2
Re: suspend и не ext3 [message #51550 is a reply to message #51546] Wed, 16 July 2014 15:23 Go to previous message
seyko2 is currently offline  seyko2
Messages: 184
Registered: February 2007
Location: Moscow
Senior Member

From: 83.220.238*
Удача. Получилось сделать suspend/restore без использования NFS. Вместо этого посредником выступила bindfs. Это fuse-fs, аналог
mount -o bind UNIONDIR /vz/private/202

При использовании "mount -o bind" checkpoint не проходит. А при использовании аналога из fuse -- всё OK.
bindfs UNIONDIR /vz/private/202
Previous Topic: centos6 console
Next Topic: VPN (pptpd + real ip)
Goto Forum:
  


Current Time: Thu Apr 02 12:46:43 GMT 2020