cc_resizefs does not allocate space on all disks of a multi disk btrfs volume
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cloud-init |
Expired
|
Medium
|
Unassigned |
Bug Description
cloud provider: self-hosted, proxmox
cloud-init config:
growpart:
mode: auto
devices:
- /dev/sda1
- /dev/sdb1
- /dev/sdc1
- /dev/sdd1
I have a multi disk btrfs volume as root fs for the vm.
Each disk needs to grow on first boot and the btrfs filesystem should be resized.
Partitions are grown just fine and btrfs detects that, however, running `btrfs filesystem resize max /` as currently used in https:/
From the `btrfs-filesystem` man page (debian 11, Btrfs v5.10.1):
> The devid can be found in the output of btrfs filesystem show and defaults to 1 if not specified.
Since a devid is not passed only the first disk will be resized, other disks will stay with "slack" space.
This is after I manually resized disk id 2 for testing, before it also had 3GiB slack:
root@test-vm:~# btrfs device usage /
/dev/sda1, ID: 1
Device size: 4.00GiB
Device slack: 3.50KiB
Data,RAID10: 310.25MiB
Metadata,RAID10: 64.00MiB
System,RAID10: 8.00MiB
Unallocated: 3.62GiB
/dev/sdb1, ID: 2
Device size: 4.00GiB
Device slack: 3.50KiB
Data,RAID10: 310.25MiB
Metadata,RAID10: 64.00MiB
System,RAID10: 8.00MiB
Unallocated: 3.62GiB
/dev/sdc1, ID: 3
Device size: 4.00GiB
Device slack: 3.00GiB
Data,RAID10: 310.25MiB
Metadata,RAID10: 64.00MiB
System,RAID10: 8.00MiB
Unallocated: 640.73MiB
/dev/sdd1, ID: 4
Device size: 4.00GiB
Device slack: 3.00GiB
Data,RAID10: 310.25MiB
Metadata,RAID10: 64.00MiB
System,RAID10: 8.00MiB
Unallocated: 640.73MiB
Thank you for the detailed report. This is a use case we should support.