[pve-devel] [PATCH v1 pve-manager] pve8to9: check for usage of GlusterFS storages
Max R. Carrara
m.carrara at proxmox.com
Thu Jul 17 13:48:07 CEST 2025
On Fri Jul 11, 2025 at 2:23 PM CEST, Max R. Carrara wrote:
> Starting with PVE 9, we will drop support for GlusterFS entirely [1]
> as it is no longer properly maintained upstream [2].
>
> Therefore, scan the storage config and suggest either moving to
> different storages or using one's GlusterFS instances as directory
> storage if a 'glusterfs' storage is found.
>
> [1]: https://git.proxmox.com/?p=pve-storage.git;a=commit;h=7669a99e97f3fd35cca95d1d1ab8a377f593dccb
> [2]: https://marc.info/?l=fedora-devel-list&m=171934833215726
>
> Signed-off-by: Max R. Carrara <m.carrara at proxmox.com>
ping - so this doesn't get lost.
> ---
>
> NOTE: I tested this briefly on a development VM by configuring a
> dummy 'glusterfs' storage with 'disabled' set to '1'.
>
> PVE/CLI/pve8to9.pm | 33 +++++++++++++++++++++++++++++++++
> 1 file changed, 33 insertions(+)
>
> diff --git a/PVE/CLI/pve8to9.pm b/PVE/CLI/pve8to9.pm
> index 91b50cd9..14810301 100644
> --- a/PVE/CLI/pve8to9.pm
> +++ b/PVE/CLI/pve8to9.pm
> @@ -1581,6 +1581,38 @@ sub check_lvm_autoactivation {
> return undef;
> }
>
> +sub check_glusterfs_storage_usage {
> + my $cfg = PVE::Storage::config();
> + my $storage_info = PVE::Storage::storage_info($cfg);
> +
> + log_info("Check for usage of GlusterFS storages...");
> +
> + my $has_glusterfs_storage = 0;
> +
> + for my $storeid (sort keys $storage_info->%*) {
> + my $scfg = PVE::Storage::storage_config($cfg, $storeid);
> +
> + next if $scfg->{type} ne 'glusterfs';
> +
> + $has_glusterfs_storage = 1;
> + log_fail("found 'glusterfs' storage '$storeid'");
> + }
> +
> + if ($has_glusterfs_storage) {
> + log_fail("Starting with PVE 9, GlusterFS will not be supported anymore."
> + . " GlusterFS storages will therefore cease to work."
> + . "\nThis is due to the GlusterFS project not being properly maintained anymore."
> + . "\n\nThis means that you will have to move all volumes on GlusterFS storages to"
> + . " different storages and then remove any GlusterFS storage that you have configured."
> + . "\n\nAlternatively, you can mount your GlusterFS instances manually "
> + . " via the 'glusterfs' commandline and use them as directory storage.");
> + } else {
> + log_pass("No GlusterFS storage found.");
> + }
> +
> + return undef;
> +}
> +
> sub check_misc {
> print_header("MISCELLANEOUS CHECKS");
> my $ssh_config = eval { PVE::Tools::file_get_contents('/root/.ssh/config') };
> @@ -1693,6 +1725,7 @@ sub check_misc {
> check_legacy_notification_sections();
> check_legacy_backup_job_options();
> check_lvm_autoactivation();
> + check_glusterfs_storage_usage();
> }
>
> my sub colored_if {
More information about the pve-devel
mailing list