public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH manager 1/2] api: ceph ec pools: schema fixes and enhancements
@ 2022-04-29  9:28 Aaron Lauterer
  2022-04-29  9:28 ` [pve-devel] [PATCH manager 2/2] api: ceph ec pools: make add_storages overridable default Aaron Lauterer
  0 siblings, 1 reply; 3+ messages in thread
From: Aaron Lauterer @ 2022-04-29  9:28 UTC (permalink / raw)
  To: pve-devel

Ceph has a min value for 'k' of 2. Adding default and description where
missing.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
---
 PVE/API2/Ceph/Pools.pm | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/PVE/API2/Ceph/Pools.pm b/PVE/API2/Ceph/Pools.pm
index eeb81d65..4e28453c 100644
--- a/PVE/API2/Ceph/Pools.pm
+++ b/PVE/API2/Ceph/Pools.pm
@@ -321,7 +321,7 @@ my $ec_format = {
 	type => 'integer',
 	description => "Number of data chunks. Will create an erasure coded pool plus a"
 	    ." replicated pool for metadata.",
-	minimum => 1,
+	minimum => 2,
     },
     m => {
 	type => 'integer',
@@ -335,6 +335,7 @@ my $ec_format = {
 	    ." coded pool plus a replicated pool for metadata.",
 	format_description => 'domain',
 	optional => 1,
+	default => 'host',
     },
     'device-class' => {
 	type => 'string',
@@ -386,6 +387,8 @@ __PACKAGE__->register_method ({
 		optional => 1,
 	    },
 	    'erasure-coding' => {
+		description => "Create an erasure coded pool for RBD with an ".
+				"accompaning replicated pool for metadata storage.",
 		type => 'string',
 		format => $ec_format,
 		optional => 1,
-- 
2.30.2





^ permalink raw reply	[flat|nested] 3+ messages in thread

* [pve-devel] [PATCH manager 2/2] api: ceph ec pools: make add_storages overridable default
  2022-04-29  9:28 [pve-devel] [PATCH manager 1/2] api: ceph ec pools: schema fixes and enhancements Aaron Lauterer
@ 2022-04-29  9:28 ` Aaron Lauterer
  2022-04-29 12:30   ` [pve-devel] applied: " Thomas Lamprecht
  0 siblings, 1 reply; 3+ messages in thread
From: Aaron Lauterer @ 2022-04-29  9:28 UTC (permalink / raw)
  To: pve-devel

The behavior of always adding the storage config was lost in commit
e039e85. But it is more sensible to make it a default that can be
changed if needed.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
---
Moved the ec checks further up so we can then check storage permissions
if needed

 PVE/API2/Ceph/Pools.pm | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/PVE/API2/Ceph/Pools.pm b/PVE/API2/Ceph/Pools.pm
index 4e28453c..adc2de1d 100644
--- a/PVE/API2/Ceph/Pools.pm
+++ b/PVE/API2/Ceph/Pools.pm
@@ -381,10 +381,10 @@ __PACKAGE__->register_method ({
 	properties => {
 	    node => get_standard_option('pve-node'),
 	    add_storages => {
-		description => "Configure VM and CT storage using the new pool. ".
-				"Always enabled for erasure coded pools.",
+		description => "Configure VM and CT storage using the new pool.",
 		type => 'boolean',
 		optional => 1,
+		default => "0; for erasure coded pools: 1",
 	    },
 	    'erasure-coding' => {
 		description => "Create an erasure coded pool for RBD with an ".
@@ -409,6 +409,10 @@ __PACKAGE__->register_method ({
 
 	my $rpcenv = PVE::RPCEnvironment::get();
 	my $user = $rpcenv->get_user();
+	my $rados = PVE::RADOS->new();
+
+	my $ec = ec_parse_and_check(extract_param($param, 'erasure-coding'), $rados);
+	$add_storages = 1 if $ec && !defined $add_storages;
 
 	# Ceph uses target_size_bytes
 	if (defined($param->{'target_size'})) {
@@ -429,10 +433,6 @@ __PACKAGE__->register_method ({
 	$param->{application} //= 'rbd';
 	$param->{pg_autoscale_mode} //= 'warn';
 
-	my $rados = PVE::RADOS->new();
-
-	my $ec = ec_parse_and_check(extract_param($param, 'erasure-coding'), $rados);
-
 	my $worker = sub {
 	    # reopen with longer timeout
 	    $rados = PVE::RADOS->new(timeout => PVE::Ceph::Tools::get_config('long_rados_timeout'));
-- 
2.30.2





^ permalink raw reply	[flat|nested] 3+ messages in thread

* [pve-devel] applied: [PATCH manager 2/2] api: ceph ec pools: make add_storages overridable default
  2022-04-29  9:28 ` [pve-devel] [PATCH manager 2/2] api: ceph ec pools: make add_storages overridable default Aaron Lauterer
@ 2022-04-29 12:30   ` Thomas Lamprecht
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Lamprecht @ 2022-04-29 12:30 UTC (permalink / raw)
  To: Proxmox VE development discussion, Aaron Lauterer

Am 4/29/22 um 11:28 schrieb Aaron Lauterer:
> The behavior of always adding the storage config was lost in commit
> e039e85. But it is more sensible to make it a default that can be
> changed if needed.
> 
> Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
> ---
> Moved the ec checks further up so we can then check storage permissions
> if needed
> 
>  PVE/API2/Ceph/Pools.pm | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
>

applied, thanks!




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-04-29 12:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-29  9:28 [pve-devel] [PATCH manager 1/2] api: ceph ec pools: schema fixes and enhancements Aaron Lauterer
2022-04-29  9:28 ` [pve-devel] [PATCH manager 2/2] api: ceph ec pools: make add_storages overridable default Aaron Lauterer
2022-04-29 12:30   ` [pve-devel] applied: " Thomas Lamprecht

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal