linux-lvm.redhat.com archive mirror
 help / color / mirror / Atom feed
From: "John Stoffel" <john@stoffel.org>
To: LVM general discussion and development <linux-lvm@redhat.com>
Subject: Re: [linux-lvm] LVM RAID10 busy 100%
Date: Tue, 2 Apr 2019 21:40:39 -0400	[thread overview]
Message-ID: <23716.3863.42782.886096@quad.stoffel.home> (raw)
In-Reply-To: <819376bf-9ee7-b700-6057-6e8035c0e0e8@gmail.com>


Viacheslav> I made LVM RAID10 from 8 HDDs with size 8T on CentOS 7 server.

Viacheslav> # lvs -a -o name,segtype,devices
Viacheslav>  � LV��������������������� Type Devices
Viacheslav>  � data������������������� raid10 
Viacheslav> data_rimage_0(0),data_rimage_1(0),data_rimage_2(0),data_rimage_3(0),data_rimage_4(0),data_rimage_5(0),data_rimage_6(0),data_rimage_7(0)
Viacheslav>  � [data_rimage_0]�������� linear /dev/sda(1)
Viacheslav>  � [data_rimage_1]�������� linear /dev/sdb(1)
Viacheslav>  � [data_rimage_2]�������� linear /dev/sdc(1)
Viacheslav>  � [data_rimage_3]�������� linear /dev/sde(1)
Viacheslav>  � [data_rimage_4]�������� linear /dev/sdf(1)
Viacheslav>  � [data_rimage_5]�������� linear /dev/sdg(1)
Viacheslav>  � [data_rimage_6]�������� linear /dev/sdk(1)
Viacheslav>  � [data_rimage_7]�������� linear /dev/sdl(1)
Viacheslav>  � [data_rmeta_0]��������� linear /dev/sda(0)
Viacheslav>  � [data_rmeta_1]��������� linear /dev/sdb(0)
Viacheslav>  � [data_rmeta_2]��������� linear /dev/sdc(0)
Viacheslav>  � [data_rmeta_3]��������� linear /dev/sde(0)
Viacheslav>  � [data_rmeta_4]��������� linear /dev/sdf(0)
Viacheslav>  � [data_rmeta_5]��������� linear /dev/sdg(0)
Viacheslav>  � [data_rmeta_6]��������� linear /dev/sdk(0)
Viacheslav>  � [data_rmeta_7]��������� linear /dev/sdl(0)

Viacheslav> # rpm -qa | grep lvm2
Viacheslav> lvm2-2.02.180-10.el7_6.3.x86_64
Viacheslav> lvm2-libs-2.02.180-10.el7_6.3.x86_64

Viacheslav> Use XFS with external logdev.

Viacheslav> # xfs_info /data
Viacheslav> meta-data=/dev/mapper/vg_data-data isize=512��� agcount=32, 
Viacheslav> agsize=219769456 blks
Viacheslav>  � � � �� ����� =���������������������� sectsz=4096� attr=2, projid32bit=1
Viacheslav>  �� � � � �� �� =���������������������� crc=1������� finobt=0 spinodes=0
Viacheslav> data��� � � =���������������������� bsize=4096 blocks=7032622592, imaxpct=5
Viacheslav>  � � ������ � � =���������������������� sunit=16���� swidth=128 blks
Viacheslav> naming�� =version 2������������� bsize=4096�� ascii-ci=0 ftype=1
Viacheslav> log���� � �� =external�������������� bsize=4096�� blocks=262144, version=2
Viacheslav>  �� �� ��� � �� =���������������������� sectsz=512�� sunit=0 blks, 
Viacheslav> lazy-count=1
Viacheslav> realtime =none������������������ extsz=4096�� blocks=0, rtextents=0

Viacheslav> But when I try to write ~100Mbit data (video files) to this LV, I see in 
Viacheslav> iostat 100% busy for LV, but HDDs not. It confuses me. This is normal? 
Viacheslav> Or is there really a problem?

Viacheslav> # iostat -xk 5 /dev/vg_data/data /dev/sd{a,b,c,e,f,g,k,l}
Viacheslav> Linux 3.10.0-957.5.1.el7.x86_64 (streamer)������ 02.04.2019 
Viacheslav> _x86_64_������� (32 CPU)

Viacheslav> avg-cpu:� %user�� %nice %system %iowait� %steal�� %idle
Viacheslav>  ���������� 1,40��� 0,00��� 0,81��� 4,20��� 0,00�� 93,59

Viacheslav> Device:�������� rrqm/s�� wrqm/s���� r/s���� w/s��� rkB/s��� wkB/s 
Viacheslav> avgrq-sz avgqu-sz�� await r_await w_await� svctm� %util
Viacheslav> sda������������� 46,43��� 49,70�� 75,98�� 28,03� 7810,41 4156,71�� 
Viacheslav> 230,12���� 1,12�� 10,73��� 9,28�� 14,65�� 2,83� 29,48
Viacheslav> sdc������������� 45,32��� 49,60�� 75,75�� 28,49� 7726,38 4158,48�� 
Viacheslav> 228,03���� 0,77��� 7,40��� 9,32��� 2,28�� 2,77� 28,86
Viacheslav> sdb������������� 77,96�� 112,76�� 41,87�� 48,58� 7651,46 9504,77�� 
Viacheslav> 379,35���� 2,66�� 29,40�� 96,08�� 63,75�� 4,98� 45,05
Viacheslav> sdg������������� 69,15�� 112,11�� 49,06�� 49,32� 7549,31 9506,47�� 
Viacheslav> 346,72���� 2,12�� 21,60�� 78,58�� 55,36�� 4,48� 44,07
Viacheslav> sdl������������� 69,30��� 99,51�� 52,89�� 46,86� 7799,80 8549,16�� 
Viacheslav> 327,79���� 1,53�� 15,35�� 64,68�� 54,86�� 4,29� 42,83
Viacheslav> sdf������������� 42,19��� 49,96�� 75,11�� 27,89� 7488,68 4157,53�� 
Viacheslav> 226,13���� 1,47�� 14,28��� 9,55�� 27,01�� 2,87� 29,61
Viacheslav> sde������������� 81,86�� 112,55�� 38,41�� 48,27� 7679,43 9452,76�� 
Viacheslav> 395,29���� 2,94�� 33,96� 106,24�� 68,86�� 5,23� 45,30
Viacheslav> sdk������������� 50,95��� 49,86�� 70,30�� 27,96� 7738,02 4157,36�� 
Viacheslav> 242,12���� 1,32�� 13,47�� 11,77�� 17,75�� 3,03� 29,81
Viacheslav> dm-16������������ 0,00���� 0,00��� 3,54� 187,67�� 153,35 11187,18�� 
Viacheslav> 118,62���� 0,72��� 3,60�� 91,29��� 1,94�� 2,20� 42,03

Viacheslav> avg-cpu:� %user�� %nice %system %iowait� %steal�� %idle
Viacheslav>  ���������� 2,11��� 0,00��� 0,77��� 5,36��� 0,00�� 91,76

Viacheslav> Device:�������� rrqm/s�� wrqm/s���� r/s���� w/s��� rkB/s��� wkB/s 
Viacheslav> avgrq-sz avgqu-sz�� await r_await w_await� svctm� %util
Viacheslav> sda�������������� 3,40��� 31,20��� 1,80�� 29,80�� 306,40 2405,60�� 
Viacheslav> 171,65���� 2,63�� 83,38��� 2,00�� 88,30� 12,80� 40,46
Viacheslav> sdc�������������� 2,80��� 32,20��� 1,40�� 30,80�� 256,00 2425,60�� 
Viacheslav> 166,56���� 4,37� 135,65�� 69,71� 138,65� 13,55� 43,62
Viacheslav> sdb�������������� 0,80��� 31,20��� 0,40�� 31,40��� 50,40 2408,80�� 
Viacheslav> 154,67���� 4,90� 193,65� 109,50� 194,72� 17,18� 54,62
Viacheslav> sdg�������������� 1,20��� 31,60��� 0,40�� 23,80�� 102,40 2424,00�� 
Viacheslav> 208,79���� 1,62�� 46,68�� 30,00�� 46,96� 11,68� 28,26
Viacheslav> sdl�������������� 2,00��� 31,60��� 1,00�� 31,60�� 152,80 2424,00�� 
Viacheslav> 158,09���� 2,57� 117,57�� 41,40� 119,98� 11,43� 37,26
Viacheslav> sdf�������������� 2,20��� 31,60��� 2,00�� 28,20�� 255,20 2432,80�� 
Viacheslav> 178,01���� 1,88�� 62,09�� 26,90�� 64,59� 10,46� 31,60
Viacheslav> sde�������������� 0,80��� 32,00��� 1,00�� 26,60�� 101,60 2416,80�� 
Viacheslav> 182,49���� 2,19�� 61,46�� 80,40�� 60,74� 15,02� 41,46
Viacheslav> sdk�������������� 2,60��� 31,60��� 1,20�� 30,00�� 204,00 2420,80�� 
Viacheslav> 168,26���� 1,37�� 43,83� 114,00�� 41,03�� 9,95� 31,04
Viacheslav> dm-16������������ 0,00���� 0,00�� 25,00� 165,00� 1428,80 8962,40�� 
Viacheslav> 109,38�� 281,67 1771,52�� 56,13 2031,43�� 5,26 100,00

Viacheslav> avg-cpu:� %user�� %nice %system %iowait� %steal�� %idle
Viacheslav>  ���������� 2,22��� 0,00��� 0,75��� 2,73��� 0,00�� 94,30

Viacheslav> Device:�������� rrqm/s�� wrqm/s���� r/s���� w/s��� rkB/s��� wkB/s 
Viacheslav> avgrq-sz avgqu-sz�� await r_await w_await� svctm� %util
Viacheslav> sda�������������� 2,60��� 30,20��� 1,20�� 22,00�� 206,40 2272,80�� 
Viacheslav> 213,72���� 1,33�� 57,37�� 13,33�� 59,77� 16,97� 39,38
Viacheslav> sdc�������������� 2,40��� 29,80��� 0,80�� 18,80�� 204,80 2248,80�� 
Viacheslav> 250,37���� 1,39�� 71,09�� 22,00�� 73,18� 24,79� 48,58
Viacheslav> sdb�������������� 0,00��� 30,20��� 0,00�� 26,40���� 0,00 2281,60�� 
Viacheslav> 172,85���� 2,22� 102,58��� 0,00� 102,58� 14,18� 37,44
Viacheslav> sdg�������������� 0,00��� 29,80��� 0,00�� 25,80���� 0,00 2261,60�� 
Viacheslav> 175,32���� 1,92�� 88,72��� 0,00�� 88,72� 16,98� 43,80
Viacheslav> sdl�������������� 0,00��� 29,80��� 0,00�� 27,40���� 0,00 2270,40�� 
Viacheslav> 165,72���� 1,61�� 76,81��� 0,00�� 76,81� 18,00� 49,32
Viacheslav> sdf�������������� 2,60��� 29,80��� 1,20�� 21,80�� 205,60 2253,60�� 
Viacheslav> 213,84���� 0,89�� 38,50��� 7,50�� 40,20� 13,70� 31,52
Viacheslav> sde�������������� 0,00��� 29,80��� 0,00�� 23,20���� 0,00 2257,60�� 
Viacheslav> 194,62���� 2,59� 132,94��� 0,00� 132,94� 18,57� 43,08
Viacheslav> sdk�������������� 2,60��� 29,80��� 1,00�� 23,00�� 204,00 2261,60�� 
Viacheslav> 205,47���� 1,08�� 44,94��� 5,20�� 46,67� 15,70� 37,68
Viacheslav> dm-16������������ 0,00���� 0,00�� 14,40� 115,80�� 820,80 6167,20�� 
Viacheslav> 107,34�� 114,27 1256,38�� 11,31 1411,21�� 7,68 100,02

Viacheslav> avg-cpu:� %user�� %nice %system %iowait� %steal�� %idle
Viacheslav>  ���������� 2,04��� 0,00��� 0,85��� 4,41��� 0,00�� 92,70

Viacheslav> Device:�������� rrqm/s�� wrqm/s���� r/s���� w/s��� rkB/s��� wkB/s 
Viacheslav> avgrq-sz avgqu-sz�� await r_await w_await� svctm� %util
Viacheslav> sda�������������� 3,60��� 31,80��� 1,20�� 28,20�� 255,20 2404,80�� 
Viacheslav> 180,95���� 1,82�� 61,93� 167,33�� 57,45� 15,81� 46,48
Viacheslav> sdc�������������� 5,60��� 33,20��� 2,00�� 28,40�� 460,80 2415,20�� 
Viacheslav> 189,21���� 1,55�� 51,10�� 73,90�� 49,49� 14,06� 42,74
Viacheslav> sdb�������������� 3,00��� 31,60��� 1,40�� 28,40�� 256,00 2404,80�� 
Viacheslav> 178,58���� 3,35� 112,38� 119,00� 112,05� 17,01� 50,70
Viacheslav> sdg�������������� 3,00��� 32,00��� 1,20�� 31,20�� 255,20 2403,20�� 
Viacheslav> 164,10���� 2,15�� 70,27� 187,83�� 65,75� 12,09� 39,16
Viacheslav> sdl�������������� 1,00��� 32,20��� 0,60�� 28,80�� 101,60 2396,80�� 
Viacheslav> 169,96���� 2,30�� 78,39�� 12,33�� 79,76�� 9,52� 28,00
Viacheslav> sdf�������������� 3,00��� 32,00��� 1,40�� 30,80�� 262,40 2402,40�� 
Viacheslav> 165,52���� 2,92�� 90,71� 107,00�� 89,97� 15,53� 50,02
Viacheslav> sde�������������� 0,60��� 33,20��� 0,20�� 27,60��� 51,20 2413,60�� 
Viacheslav> 177,32���� 1,68�� 50,91�� 19,00�� 51,14� 13,02� 36,20
Viacheslav> sdk�������������� 5,20��� 32,20��� 2,00�� 28,80�� 411,20 2396,80�� 
Viacheslav> 182,34���� 2,04�� 66,21� 121,40�� 62,38� 13,56� 41,76
Viacheslav> dm-16������������ 0,00���� 0,00�� 35,00�� 72,20� 2053,60 3369,60�� 
Viacheslav> 101,18�� 124,74 1218,62� 119,80 1751,29�� 9,33 100,00


I suspect you're running into LVM being single threaded.  But it's
hard to tell how you built the device.  Can you please do:

  lvdisplay -a data/data

and also give us the exact command you used to build your LVM volume
and the xfs filesystem ontop of it.  Also, what is your CPU like and
your SATA controller?

I'd probably re-do the RAID using RAID4 (fixed parity disk) since
you're (probably) just doing a bunch of writing of video files, which
are large streaming writes, so you won't pay the penalty of the
Reade/Modify/Write cycle that RAID4/5 has with lots of small files
being writteing.  But I'd also be using MD under-neath LVM, with XFS on
top.  Something like this:

  1.   partition each disk with a single whole disk partition
  2.   mdadm --create /dev/md0 --level=raid4 --raid-devices=8 /dev/sd[a,b,c,e,f,g,k,l]1
  3.   pvcreate /dev/md0
  4.   vgcreate data /dev/md0
  5.   lvcreate -L +12T -n data data
  6.   mkfs.xfs /dev/mapper/data-data

And then see how the performance is then.

John

       reply	other threads:[~2019-04-03  1:40 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <819376bf-9ee7-b700-6057-6e8035c0e0e8@gmail.com>
2019-04-03  1:40 ` John Stoffel [this message]
2019-04-03 21:58   ` [linux-lvm] LVM RAID10 busy 100% Andrew Luke Nesbit
2019-04-05 16:15     ` John Stoffel

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=23716.3863.42782.886096@quad.stoffel.home \
    --to=john@stoffel.org \
    --cc=linux-lvm@redhat.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).