]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
ceph-volume: add osdspec_affinity flag to ceph-osd 36454/head
authorJoshua Schmid <jschmid@suse.de>
Wed, 29 Apr 2020 15:49:52 +0000 (17:49 +0200)
committerJan Fajerski <jfajerski@suse.com>
Thu, 6 Aug 2020 16:43:54 +0000 (18:43 +0200)
Signed-off-by: Joshua Schmid <jschmid@suse.de>
(cherry picked from commit 815f8e6470c6e72d9e2f51630dd3c26d388847aa)

src/ceph-volume/ceph_volume/util/prepare.py

index bf70b49a5b4bd2af12c208975dff7ecf9898201d..e6e0a9df6bf2d543720a04f0cc2180b01ace9105 100644 (file)
@@ -399,6 +399,10 @@ def get_monmap(osd_id):
     ])
 
 
+def get_osdspec_affinity():
+    return os.environ.get('CEPH_VOLUME_OSDSPEC_AFFINITY', '')
+
+
 def osd_mkfs_bluestore(osd_id, fsid, keyring=None, wal=False, db=False):
     """
     Create the files for the OSD to function. A normal call will look like:
@@ -450,6 +454,9 @@ def osd_mkfs_bluestore(osd_id, fsid, keyring=None, wal=False, db=False):
         )
         system.chown(db)
 
+    if get_osdspec_affinity():
+        base_command.extend(['--osdspec-affinity', get_osdspec_affinity()])
+
     command = base_command + supplementary_command
 
     _, _, returncode = process.call(command, stdin=keyring, show_command=True)
@@ -457,10 +464,6 @@ def osd_mkfs_bluestore(osd_id, fsid, keyring=None, wal=False, db=False):
         raise RuntimeError('Command failed with exit code %s: %s' % (returncode, ' '.join(command)))
 
 
-def get_osdspec_affinity():
-    return os.environ.get('CEPH_VOLUME_OSDSPEC_AFFINITY', '')
-
-
 def osd_mkfs_filestore(osd_id, fsid, keyring):
     """
     Create the files for the OSD to function. A normal call will look like:
@@ -491,6 +494,9 @@ def osd_mkfs_filestore(osd_id, fsid, keyring):
         '--monmap', monmap,
     ]
 
+    if get_osdspec_affinity():
+        command.extend(['--osdspec-affinity', get_osdspec_affinity()])
+
     if __release__ != 'luminous':
         # goes through stdin
         command.extend(['--keyfile', '-'])