From: Aaron Lauterer <a.lauterer@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: Re: [pve-devel] [PATCH v2 librados2-perl storage manager 0/7] Add Ceph safety checks
Date: Mon, 7 Nov 2022 14:18:51 +0100 [thread overview]
Message-ID: <d90f565c-3316-a992-0c14-40ea6e4928a6@proxmox.com> (raw)
In-Reply-To: <20220325105510.3262101-1-a.lauterer@proxmox.com>
ping?
If we are okay with the way this would change RADOS.xs and RADOS.pm, I can send
a follow up for patch 3 and 4 as a few other places started to issue mon
commands in the meantime.
There is also the currently pending "Ceph OSD: add detail infos" patch series
which either could be included in the follow up patch, or will need its own,
depending on what gets applied first.
[0] https://lists.proxmox.com/pipermail/pve-devel/2022-October/054375.html
On 3/25/22 11:55, Aaron Lauterer wrote:
> The main motivation behind this series is to leverage several safety
> checks that Ceph has to make sure it is ok to stop or destroy a service.
>
> For this to work, the librados2-perl needs to be adapted because if it
> is unsafe to perform one of the actions, the Ceph API will return an
> error with an explanation in the status message.
>
> The approach chosen is to simplify the bindings and handle errors on the
> Perl side. the RADOS.pm::mon_command now always returns a hash ref
> containing
>
> * return code
> * status message
> * data
>
> This makes it necessary to adapt packages that depend on librados2-perl
> to handle the changed return values: storage and manager.
>
> Therefore we need to coordinate breaking dependencies and releases of
> these packages!
>
> A new cmd-safety endpoint is added which is called from the GUI wherever
> possible to show a warning.
>
>
> changes:
>
> * simplify librados2-perl changes and always return hash ref instead of
> wantarray
> * one central cmd-safety API endpoint instead of multiple ones per
> service type
>
> librados2-perl: Aaron Lauterer (2):
> mon_command: refactor to pass all data to perl
> mon_command: optionally ignore errors
>
> PVE/RADOS.pm | 24 +++++++++++++++++++-----
> RADOS.xs | 18 ++++++------------
> 2 files changed, 25 insertions(+), 17 deletions(-)
>
>
> storage:Aaron Lauterer (1):
> rbd: adapt to changed rados mon_command return values
>
> PVE/Storage/RBDPlugin.pm | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>
> manager: Aaron Lauterer (4):
> ceph: adapt to changed rados mon_command return values
> api: ceph: add cmd-safety endpoint
> ui: osd: warn if removal could be problematic
> ui: osd: mon: mds: warn if stop/destroy actions are problematic
>
> PVE/API2/Ceph.pm | 102 +++++++++++++++++++++-
> PVE/API2/Ceph/MGR.pm | 2 +-
> PVE/API2/Ceph/MON.pm | 19 +++--
> PVE/API2/Ceph/OSD.pm | 14 ++--
> PVE/API2/Ceph/Pools.pm | 18 ++--
> PVE/API2/Cluster/Ceph.pm | 6 +-
> PVE/CLI/pveceph.pm | 4 +-
> PVE/Ceph/Services.pm | 10 +--
> PVE/Ceph/Tools.pm | 16 ++--
> www/manager6/ceph/OSD.js | 140 ++++++++++++++++++++++++++-----
> www/manager6/ceph/ServiceList.js | 104 ++++++++++++++++++++---
> 11 files changed, 360 insertions(+), 75 deletions(-)
>
>
next prev parent reply other threads:[~2022-11-07 13:19 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-25 10:55 Aaron Lauterer
2022-03-25 10:55 ` [pve-devel] [PATCH v2 librados2-perl 1/7] mon_command: refactor to pass all data to perl Aaron Lauterer
2022-03-25 10:55 ` [pve-devel] [PATCH v2 librados2-perl 2/7] mon_command: optionally ignore errors Aaron Lauterer
2022-03-25 10:55 ` [pve-devel] [PATCH v2 storage 3/7] rbd: adapt to changed rados mon_command return values Aaron Lauterer
2022-03-25 10:55 ` [pve-devel] [PATCH v2 manager 4/7] ceph: " Aaron Lauterer
2022-03-25 10:55 ` [pve-devel] [PATCH v2 manager 5/7] api: ceph: add cmd-safety endpoint Aaron Lauterer
2022-03-25 10:55 ` [pve-devel] [PATCH v2 manager 6/7] ui: osd: warn if removal could be problematic Aaron Lauterer
2022-03-25 10:55 ` [pve-devel] [PATCH v2 manager 7/7] ui: osd: mon: mds: warn if stop/destroy actions are problematic Aaron Lauterer
2022-11-07 13:18 ` Aaron Lauterer [this message]
2022-11-17 10:35 ` [pve-devel] [PATCH v2 librados2-perl storage manager 0/7] Add Ceph safety checks Thomas Lamprecht
2022-11-17 17:46 ` [pve-devel] partially-applied: " Thomas Lamprecht
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=d90f565c-3316-a992-0c14-40ea6e4928a6@proxmox.com \
--to=a.lauterer@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