[Devel] [TRD] Autofs migration
Konstantin Khorenko
khorenko at virtuozzo.com
Tue Jun 21 01:59:49 PDT 2016
Disclaimer: not sending this into users at openvz.org because external jira issue has not been created due to unknown reason.
One more known issue:
* "browse" autofs config option is not supported
https://jira.sw.ru/browse/PSBM-48659
--
Best regards,
Konstantin Khorenko,
Virtuozzo Linux Kernel Team
On 04/19/2016 12:03 PM, Stanislav Kinsburskiy wrote:
> 1. Feature
>
> Autofs mount points migration via CRIU
> https://jira.sw.ru/browse/PSBM-41217
>
> 2. Description
>
> CRIU now supports autofs file system migration, including direct,
> indirect and offset mount types.
>
> 3. Products
>
> Virtuozzo 7
>
> Packages:
> criu-2.1.0.4.vz7
> libvzctl-7.0.199
>
> 4. Testing
>
> 4.1 Basics
> ** Install criu and libvzctl rpm packages
> ** Create a container, and check
> ** Check, that autofs is listed in /proc/filesystems in the container
> ** Check, that /dev/autofs is accessible
> ** Install autofs package inside the container
> ** Follow autofs guide to create an autofs _direct_ mount point
> with some file system, mounted on top (tmpfs, for example). Command "man
> autofs" might help
> ** Follow autofs guide to create an autofs _indirect_ mount point
> with some file system, mounted on top (tmpfs, for example).
> ** Follow autofs guide to create an autofs _offset_ mount point with
> some file system, mounted on top (tmpfs, for example).
> ** Suspend and restore container
> ** Check, that autofs mounts and nested were mounts migrated
> successfully (via /proc, for example).
>
> 4.2 Systemd autofs services
> ** Start any systemds autofs service (for example,
> proc-sys-fs-binfmt_misc.automount) in the container
> ** Check, that service started successfully
> ** Suspend and restore container
> ** Check, that autofs and nested mount points were migrated
> successfully.
> ** Check, that systemd service has active status
> ** Unmount nested file system manually
> ** Access systemd autofs mount point and check, that nested file
> system is re-mounted again
>
> 4.3 Automount expiration
> ** setup autofs mount with short timeout (10 seconds, for example)
> in a container via any master: automount, systemd or else
> ** Activate autofs mount point (nested mount point should be
> mounted by autofs master)
> ** Migrate (or suspend/resume) the container.
> ** Check, that nested mount point is unmounted after restore within
> timeout.
>
> 5. Known issues
>
> Autofs migration has an issue, related to systemd-controlled autofs
> mount points. Systemd saves autofs mount point device number in it's
> internals and compare this number to actual one, taken from mount
> point, on each autofs request from kernel (mount, umount, expire, etc).
> The problem is that after migration all mount points are created
> manually and has _another_ device id, which leads to ignorance of kernel
> requests from systemd side.
> This problem can't be solved without some kind of "device namespaces"
> abstraction. However, some of the systemd services like
> proc-sys-fs-binfmt_misc.automount can be painlessly restarted after
> restore, thus illuminating this issue.
> Restart of proc-sys-fs-binfmt_misc.automount service is done by CRIU via
> action script, provided by vzctl.
>
> 6. What was checked by developer
>
> Both 4.1 and 4.2 test sequences
>
> 7. Feature owners
>
> skinsbursky at virtuozzo.com
>
> .
>
More information about the Devel
mailing list