From: Fiona Ebner <f.ebner@proxmox.com>
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>,
Friedrich Weber <f.weber@proxmox.com>
Subject: Re: [pve-devel] [PATCH storage 0/2] fix #4997: lvm: avoid autoactivating (new) LVs after boot
Date: Fri, 26 Jan 2024 12:14:58 +0100 [thread overview]
Message-ID: <c447ba98-649a-40cd-809e-4e120faa1b72@proxmox.com> (raw)
In-Reply-To: <20240111150332.733635-1-f.weber@proxmox.com>
Am 11.01.24 um 16:03 schrieb Friedrich Weber:
> By default, LVM autoactivates LVs after boot. In a cluster with VM disks on a
> shared LVM VG (e.g. on top of iSCSI), this can indirectly cause guest creation
> or VM live-migration to fail. See bug #4997 [1] and patch #2 for details.
>
> The goal of this series is to avoid autoactivating LVs after boot. Fabian
> suggested to use the "activation skip" flag for LVs. LVs with that flag can
> only be activated if the `-K` flag is passed during activation (`-K` is not
> passed for autoactivation after boot).
>
> With patch #1, the LVM plugin passes the `-K` flag to activation commands. If
> the LV does not have the "activation skip" flag set, this should not have any
> effect, so it should be safe to apply this patch in the near future. It does
> not yet fix #4997, though.
>
> With patch #2, the LVM plugin sets the "activation skip" flag for newly created
> LVs. As this can be considered a breaking change, it may make sense to only
> apply it close to the PVE 9 release. If patch #1 has been available in the last
> PVE 8 minor release, this should ensure a smooth upgrade even if a cluster is
> temporarily mixed between PVE 8.x and 9 (PVE 8.x will be able to activate LVs
> created by PVE 9 with "activation skip"). This will fix #4997 for newly created
> LVs.
>
Yes, patch #2 can cause issues for clusters with mixed minor versions,
so I'd consider this a breaking change.
> Some points to discuss:
>
> * Fabian and I discussed whether it may be better to pass `-K` and set the
> "activation skip" flag only for LVs on a *shared* LVM storage. But this may
> cause issues for users that incorrectly mark an LVM storage as shared, create a
> bunch of LVs (with "activation skip" flag), then unset the "shared" flag, and
> won't be able to activate LVs afterwards (`lvchange -ay` without `-K` on an LV
> with "activation skip" is a noop). What do you think?
>
Is there a way to prevent auto-activation on boot for LVs on a shared
(PVE-managed) LVM storage? Also a breaking change, because users might
have other LVs on the same storage, but would avoid the need for the
flag. Not against the current approach, just wondering.
Guardrails against issues caused by misconfiguration always warrant a
cost-benefits analysis. What is the cost for also setting the flag for
LVs on non-shared LVM storages? Or logic needs to be correct either way ;)
> * Even with patch #1 and #2 applied, users can still run into #4997 for LVs
> that were created before #2, so without the "activation skip" flag. So it might
> be good to include a note in the 8->9 release notes and/or a warning in the
> pve8to9 helper and/or ship a script that automatically sets the flag for all
> existing (PVE-owned) LVs.
>
Sure, mentioning the changed behavior and suggestion/script for making
it consistent make sense.
next prev parent reply other threads:[~2024-01-26 11:15 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-11 15:03 Friedrich Weber
2024-01-11 15:03 ` [pve-devel] [PATCH storage 1/2] lvm: ignore "activation skip" LV flag during LV activation Friedrich Weber
2024-01-26 11:14 ` Fiona Ebner
2024-01-11 15:03 ` [pve-devel] [PATCH storage 2/2] fix #4997: lvm: set "activation skip" flag for newly created LVs Friedrich Weber
2024-01-26 11:15 ` Fiona Ebner
2024-01-26 11:14 ` Fiona Ebner [this message]
2024-01-31 15:07 ` [pve-devel] [PATCH storage 0/2] fix #4997: lvm: avoid autoactivating (new) LVs after boot Friedrich Weber
2024-02-01 8:26 ` Fiona Ebner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c447ba98-649a-40cd-809e-4e120faa1b72@proxmox.com \
--to=f.ebner@proxmox.com \
--cc=f.weber@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox