All of lore.kernel.org
 help / color / mirror / Atom feed
From: Zygo Blaxell <ce3g8jdj@umail.furryterror.org>
To: Leszek Dubiel <leszek@dubiel.pl>
Cc: linux-btrfs@vger.kernel.org
Subject: Re: Btrfs not using all devices in raid1
Date: Fri, 21 May 2021 22:08:59 -0400	[thread overview]
Message-ID: <20210522020858.GB11733@hungrycats.org> (raw)
In-Reply-To: <63123a58-18a4-24ff-3b30-9a0668c167c4@dubiel.pl>

On Fri, May 21, 2021 at 06:34:27PM +0200, Leszek Dubiel wrote:
> 
> Hello!
> 
> Why Btrfs is not using /dev/sdc2?
> There is no line "Data,RAID1" for this disk.
> Isn't it supposed to use disk that has most of free space?
> 
> Thanks for help :) :)
> Using Btrfs in production.
> 
> 
> Here are some command outputs:
> 
> 
> 
> ### btrfs fi show /
> 
> Label: none  uuid: ea6ae51d-d9b0-4628-a8f3-3406e1dc59c6
>     Total devices 4 FS bytes used 2.96TiB
>     devid    1 size 7.25TiB used 3.20TiB path /dev/sda2
>     devid    2 size 7.25TiB used 3.20TiB path /dev/sdb2
>     devid    3 size 7.25TiB used 3.21TiB path /dev/sdd2
>     devid    4 size 7.25TiB used 32.00MiB path /dev/sdc2
> 
> 
> 
> ### btrfs fi df /
> 
> Data, RAID1: total=4.49TiB, used=2.90TiB

There are about 1.5TB of available space in existing block groups, so
those will be filled in first.  Block group allocations will start on
sdc2 after the existing block groups are filled.

> System, RAID1: total=64.00MiB, used=784.00KiB
> Metadata, RAID1: total=321.00GiB, used=56.08GiB
> GlobalReserve, single: total=512.00MiB, used=0.00B
> 
> 
> 
> ### btrfs dev usa /
> 
> /dev/sda2, ID: 1
>    Device size:             7.25TiB
>    Device slack:              0.00B
>    Data,RAID1:              2.99TiB
>    Metadata,RAID1:        210.00GiB
>    System,RAID1:           64.00MiB
>    Unallocated:             4.05TiB
> 
> /dev/sdb2, ID: 2
>    Device size:             7.25TiB
>    Device slack:              0.00B
>    Data,RAID1:              3.00TiB
>    Metadata,RAID1:        210.00GiB
>    Unallocated:             4.04TiB
> 
> /dev/sdc2, ID: 4
>    Device size:             7.25TiB
>    Device slack:              0.00B   ... no Data/RAID1
>    System,RAID1:           32.00MiB
>    Unallocated:             7.25TiB
> 
> /dev/sdd2, ID: 3
>    Device size:             7.25TiB
>    Device slack:              0.00B
>    Data,RAID1:              2.99TiB
>    Metadata,RAID1:        222.00GiB
>    System,RAID1:           32.00MiB
>    Unallocated:             4.04TiB

The disks in decreasing size order have 7.25TB, 4.05 TB, 4.04 TB, and 4.04
TB.  RAID1 requires the sum of all disks after the largest be equal or
greater in size to the largest, and 12.13 >= 7.25, so you're good to go.

> ### time btrfs balance start -dconvert=raid1,soft -mconvert=raid1,soft /
> 
> Done, had to relocate 0 out of 4922 chunks
> 
> real    0m0,522s
> user    0m0,000s
> sys    0m0,033s

You might want something more like;

	time btrfs balance start -dlimit=1000,devid=1 /
	time btrfs balance start -dlimit=1000,devid=2 /
	time btrfs balance start -dlimit=1000,devid=3 /

but that will take a long time and isn't strictly necessary.

Alternatively, use 'btrfs-balance-least-used' from the 'python-btrfs'
package, with a usage limit of about 90%.  That will repack all of the
data into existing block groups first, so future allocations will use
sdc2.

Unfortunately balance is the only way to redistribute the existing data
onto new drives, so if you don't want to run balance, then you'll just
have to wait until sdc2 fills in naturally.

  parent reply	other threads:[~2021-05-22  2:09 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-21 16:34 Btrfs not using all devices in raid1 Leszek Dubiel
2021-05-21 20:11 ` Forza
2021-05-21 21:10   ` Leszek Dubiel
2021-05-21 21:53     ` Forza
2021-05-22  2:08 ` Zygo Blaxell [this message]
2021-05-22  8:52   ` Leszek Dubiel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210522020858.GB11733@hungrycats.org \
    --to=ce3g8jdj@umail.furryterror.org \
    --cc=leszek@dubiel.pl \
    --cc=linux-btrfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.