public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH manager] Allow setting device class on osd create
@ 2020-07-23 13:25 Alwin Antreich
  2020-07-24  9:34 ` [pve-devel] applied: " Thomas Lamprecht
  0 siblings, 1 reply; 7+ messages in thread
From: Alwin Antreich @ 2020-07-23 13:25 UTC (permalink / raw)
  To: pve-devel

In some situations Ceph's auto-detection doesn't recognize the device
class correctly. The option allows to set it directly on osd create,
instead of altering it afterwards. This way the cluster doesn't need to
shift data back and forth unnecessarily.

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
---
 PVE/API2/Ceph/OSD.pm | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/PVE/API2/Ceph/OSD.pm b/PVE/API2/Ceph/OSD.pm
index ceaed129..f1f39bf9 100644
--- a/PVE/API2/Ceph/OSD.pm
+++ b/PVE/API2/Ceph/OSD.pm
@@ -260,6 +260,11 @@ __PACKAGE__->register_method ({
 		default => 0,
 		description => "Enables encryption of the OSD."
 	    },
+	    'crush-device-class' => {
+		optional => 1,
+		type => 'string',
+		description => "Set the device class of the OSD in crush."
+	    },
 	},
     },
     returns => { type => 'string' },
@@ -429,7 +434,9 @@ __PACKAGE__->register_method ({
 		# update disklist
 		$disklist = PVE::Diskmanage::get_disks($devlist, 1);
 
+		my $dev_class = $param->{'crush-device-class'};
 		my $cmd = ['ceph-volume', 'lvm', 'create', '--cluster-fsid', $fsid ];
+		push @$cmd, '--crush-device-class', $dev_class if $dev_class;
 
 		my $devpath = $disklist->{$devname}->{devpath};
 		print "create OSD on $devpath (bluestore)\n";
-- 
2.26.2





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

end of thread, other threads:[~2020-07-24 12:47 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-23 13:25 [pve-devel] [PATCH manager] Allow setting device class on osd create Alwin Antreich
2020-07-24  9:34 ` [pve-devel] applied: " Thomas Lamprecht
2020-07-24  9:46   ` Alwin Antreich
2020-07-24  9:54     ` Thomas Lamprecht
2020-07-24 12:24       ` Alwin Antreich
2020-07-24 12:38         ` Thomas Lamprecht
2020-07-24 12:47           ` Alwin Antreich

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