redpanda-data/redpanda

rpk: Add RAID0 setup support

Open

#16,564 opened on Feb 9, 2024

View on GitHub
 (7 comments) (0 reactions) (1 assignee)C++ (8,251 stars) (514 forks)batch import
area/rpkgood first issue

Description

Similar to Scylla's RAID setup script: https://github.com/scylladb/scylladb/blob/master/dist/common/scripts/scylla_raid_setup

Requirements

  1. It should assemble a RAID0 disk from one or many disk devices.
  2. It should format the RAID0 disk
  3. It should mount the RAID0 disk in a user-specified path
  4. It should make it possible to pass mount options
  5. It should reassemble and remount correctly the RAID0 disk, if the VM is migrated to a different physical host (Happens a lot in GCP). It should not allow the RAID0 disk to re-assemble as foreign.
  6. It should reassemble and remount correctly the RAID0 disk if the VM is rebooted.
  7. It should receive one or multiple disk device paths as input, not try to discover them.
  8. If the RAID0 disk already exists, it is assembled and XFS formatted, it should do nothing.
  9. It should fail if any dependent commands are not found. Ex: mdadm, xfsprogs, nvmectl, etc.
  10. It should offer a debug mode and print abundant information.
  11. It should account for udevd and wait for device nodes to settle before attempting any setup.

JIRA Link: CORE-1768

Contributor guide