code: def create_osd(
          conn,
          cluster,
          data,
          journal,
          zap,
          fs_type,
          dmcrypt,
          dmcrypt_dir,
          storetype,
          block_wal,
          block_db,
          **kw):
      
      ceph_volume_executable = system.executable_path(conn, 'ceph-volume')
      args = [
          ceph_volume_executable,
          '--cluster', cluster,
          'lvm',
          'create',
          '--%s' % storetype,
          '--data', data
      ]
      if zap:
          LOG.warning('zapping is no longer supported when preparing')
      if dmcrypt:
          args.append('--dmcrypt')
          # TODO: re-enable dmcrypt support once ceph-volume grows it
          LOG.warning('dmcrypt is currently not supported')
  
      if storetype == 'bluestore':
          if block_wal:
              args.append('--block.wal')
              args.append(block_wal)
          if block_db:
              args.append('--block.db')
              args.append(block_db)
      elif storetype == 'filestore':
          if not journal:
              raise RuntimeError('A journal lv or GPT partition must be specified when using filestore')
          args.append('--journal')
          args.append(journal)
  
      if kw.get('debug'):
          remoto.process.run(
              conn,
              args,
              extend_env={'CEPH_VOLUME_DEBUG': '1'}
          )
  
      else:
          remoto.process.run(
              conn,
              args
          )
docs: Run on osd node, creates an OSD from a data disk.