From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 407391FF164 for ; Fri, 22 Nov 2024 16:58:20 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id EC2E51704A; Fri, 22 Nov 2024 16:58:26 +0100 (CET) Date: Fri, 22 Nov 2024 17:58:16 +0200 To: Max Carrara , pve-devel@lists.proxmox.com References: In-Reply-To: MIME-Version: 1.0 Message-ID: List-Id: Proxmox VE development discussion List-Post: From: Ivaylo Markov via pve-devel Precedence: list Cc: Ivaylo Markov X-Mailman-Version: 2.1.29 X-BeenThere: pve-devel@lists.proxmox.com List-Subscribe: , List-Unsubscribe: , List-Archive: Reply-To: Proxmox VE development discussion List-Help: Subject: Re: [pve-devel] Proposal: support for atomic snapshot of all VM disks at once Content-Type: multipart/mixed; boundary="===============5371991445929827693==" Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" --===============5371991445929827693== Content-Type: message/rfc822 Content-Disposition: inline Return-Path: X-Original-To: pve-devel@lists.proxmox.com Delivered-To: pve-devel@lists.proxmox.com Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id 83D25C8C6B for ; Fri, 22 Nov 2024 16:58:25 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 6940D16FC7 for ; Fri, 22 Nov 2024 16:58:25 +0100 (CET) Received: from mail-ej1-x62a.google.com (mail-ej1-x62a.google.com [IPv6:2a00:1450:4864:20::62a]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS for ; Fri, 22 Nov 2024 16:58:23 +0100 (CET) Received: by mail-ej1-x62a.google.com with SMTP id a640c23a62f3a-a9aa8895facso378448366b.2 for ; Fri, 22 Nov 2024 07:58:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=storpool.com; s=google; t=1732291097; x=1732895897; darn=lists.proxmox.com; h=content-transfer-encoding:in-reply-to:organization:from :content-language:references:to:subject:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=5SGrkoR6naUqFPhZjiiJvfXn2Z3dyyqULT+48xB4v3I=; b=SIkkU78YrEDnrsiOUedimB0k3SjuzAnujXsn8gFvh1Zha9veMeRoKvbnJoEHc4YkHg CJdyFdzosfJbe1CNS56KODJIiqNZ34aFrImcmeBujCGzY6XVVz/FHWyfXTIFe0YyLJIQ iw8aXiQUw0kxROkfTUlUtyljuJ3kBB0TKFbTTWSgSl4ULcIX+XZsdf9+sJVZVlWnLTCz ozywsdAs/MNTacGuiufMFXjOvW3ykKUWfWZCWdFDdk96MAB/RrImCQVV1/xQXsPZ85mp XR1FI5/u8Bor13jS6/HIYl1oRZthlJx8sshWjLrXcuutwJ7OXArLUlWA8dGpK6a/En5g rduA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1732291097; x=1732895897; h=content-transfer-encoding:in-reply-to:organization:from :content-language:references:to:subject:user-agent:mime-version:date :message-id:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=5SGrkoR6naUqFPhZjiiJvfXn2Z3dyyqULT+48xB4v3I=; b=A7Nv3hWHuJK6sBsdO1QjCToViGowtRVGaB757mS0hBcXd5rrFsr5I5E9pIC2Qh8AdU PLOKbVKYOp3xacfwT25X02PQm2r82MpsAPWh2+Ussjs56MxN9ilWypLXeJHsrAPH1HO8 SBdcvTXL6KB35vT84VksHZ4nORU95NP5Okxd9dpKADo5Jhcg90C17mu+uNWTWU2dLsxy CNb+ynS8Klu2XolSpV5E0Vh5KErNUYOA+By0nHIKyOKf5lDEu8TiRjV8y6c+kReAXu7i 4C1OjzDdkunrdmdHSq7qrE2PBXibSCFzzkOsc0E52M1sr2WCfRLRR0Jkmln30d15xWn7 4vfQ== X-Forwarded-Encrypted: i=1; AJvYcCU89wIVMyyNkEfPVHMqdDN1QpwCPRPh12A4A4SfER+D8A1LSpduhg7tW6DGfFQVy52xKesLw44sHz4=@lists.proxmox.com X-Gm-Message-State: AOJu0YwDo0nIvjBCr6HoU3K6uUTTkInPqhE1R6j7L2ZpdrievcphLJPR 139gHjS40Z5qTagAsDmD/DeFzcvhuN2A7eQD71jHmEC24zfS+z+zBVK2Q5ktTJ0tzUTJaS18SSA AoBc= X-Gm-Gg: ASbGncshFS7tqvh1K06qVzGy/9dP6NOBWCsKYLuOmN/bbQA/+OTb6V6EkkfsfopO+FN yeWGm4uCHVQgQIPvVEMwpmMj/RXUuBy3Ki7hmHps+ZCp1TFXfWf21REJ+pt68v0xF6qmmzIKYJ0 kl4DaM29eCEXEDYyxWHiX7GBNtTWZxiU3JN0wYbUkQkuNPvnNFzHCvZFty/4mbSOFbjaXBvSJj5 aBm9zOERSCfPsNIk3kR+3X4090ixSTd2xF9tmgjWJE9N5MUzKmYoIAcc/JDf6RoJPb9b0O0Y23c FAvUNeQuBGmUyuzozgYT X-Google-Smtp-Source: AGHT+IFGIVdTVsterXHZ7mNagal/wROQ5vTMnDp6NCYbwX4GtfZ8/eJRq09yIdqSImHW6WRkDLC/2A== X-Received: by 2002:a17:906:3ca2:b0:aa5:1757:bdd6 with SMTP id a640c23a62f3a-aa51757befdmr177320766b.7.1732291097280; Fri, 22 Nov 2024 07:58:17 -0800 (PST) Received: from ?IPV6:2001:67c:21bc:e:b4bb:8bba:c9c4:aeb? ([2001:67c:21bc:e:b4bb:8bba:c9c4:aeb]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-aa50b2eff9asm114714566b.43.2024.11.22.07.58.16 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 22 Nov 2024 07:58:16 -0800 (PST) Message-ID: <8539f93e-a890-4dee-95a6-fe7926ceeb48@storpool.com> Date: Fri, 22 Nov 2024 17:58:16 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: Proposal: support for atomic snapshot of all VM disks at once To: Max Carrara , pve-devel@lists.proxmox.com References: Content-Language: en-US From: Ivaylo Markov Organization: StorPool Storage In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL 0.000 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain DMARC_PASS -0.1 DMARC pass policy RCVD_IN_DNSWL_NONE -0.0001 Sender listed at https://www.dnswl.org/, no trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Hi, It's clear now :) My current implementation allows only for group snapshots if the storage supports it, and regular sequential snapshots otherwise. Due to the considerations around application/crash-consistency, it would be best to let the user pick (with a default set by the storage plugin/backend?). On 21/11/2024 16:49, Max Carrara wrote: > On Wed Nov 20, 2024 at 5:10 PM CET, Ivaylo Markov wrote: >> Hello, >> >> I've been caught up in other things and it's been a while, but as I was >> collating and testing my proposed changes, I came across this again and >> thought I'd clarify something. >> >> On 08/10/2024 13:50, Max Carrara wrote: >>>> I was directed here to discuss this proposal and my implementation idea >>>> after an initial post in Bugzilla[1]. The goal is to give storage >>>> plugins the option to perform atomic crash-consistent snapshots of the >>>> virtual disks associated with a virtual machine where the backend >>>> supports it  (e.g. Ceph, StorPool, and ZFS) without affecting those >>>> without such a feature. >>> Since you mentioned that the backends without such a feature won't be >>> affected, will the disks of the storage types that *do* support it still >>> be addressable individually? As in: Would it be possible to run both >>> group snapshots and individual snapshots on a VM's disks? (I'm assuming >>> that they will, but still wanted to ask.) >>> >> Do you mean this this as "you can snapshot the whole VM (all disks) at >> once *or* each disk individually" or "when making a snapshot of the >> entire VM, the user can chose between individual/group snapshot of all >> drives". What I have so far matches the first description, but I just >> realized you might have meant the second one, so I thought I'd ask and >> potentially create more work for myself :) > Hey! > > No worries, always feel free to ask :) > > I should have phrased myself better there, so I'll try to be as specific > as possible here. Let me define some terms first: > > - regular snapshots: This is how things work currently; a snapshot of > each disk of the VM is made after the previous one finishes. In other > words, disk snapshots are made *sequentially*. Works for every storage > type. > > - group snapshots: What you're implementing -- essentially creating a > snapshot of *all* disks of a VM at once, atomically. Snapshots of this > type are crash-consistent. Only works for storage types that support > it. > > What I meant to ask was whether *both* options will remain available to > users. For example, if I click on a VM, then go to Snapshots -> Take > Snapshot, will I have the option to say whether the snapshot should be a > group snapshot or a regular snapshot? > > I guess calling it "individual" was a bit ambiguous here; I didn't mean > that I could e.g. snapshot just one disk only (if that's what confused > you). When performing a snapshot of a VM, a snapshot for *all* disks of > the VM is *always* made, regardless of whether a regular snapshot or a > group snapshot is performed on a VM. > > I hope all that isn't too long -- just wanted to make sure everything's > clear! :) > > -- Ivaylo Markov Quality & Automation Engineer StorPool Storage https://www.storpool.com --===============5371991445929827693== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel --===============5371991445929827693==--