md_raid10 停止 - 考えられる原因は何ですか?

md_raid10 停止 - 考えられる原因は何ですか?

私はこの動作の考えられる理由を調査してきました。

INFO: task md1_raid10:240 blocked for more than 120 seconds.
[123491.284102]       Not tainted 4.18.20 #1
[123491.284105] "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
[123491.284109] md1_raid10      D    0   240      2 0x80000000
[123491.284116] Call Trace:
[123491.284132]  ? __schedule+0x421/0x8c0
[123491.284138]  ? preempt_count_add+0x67/0xb0
[123491.284144]  schedule+0x3c/0x90
[123491.284162]  md_super_wait+0x69/0xa0 [md_mod]
[123491.284173]  ? remove_wait_queue+0x60/0x60
[123491.284184]  md_update_sb.part.61+0x4ad/0x900 [md_mod]
[123491.284197]  md_check_recovery+0x310/0x530 [md_mod]
[123491.284205]  raid10d+0x64/0x15a0 [raid10]
[123491.284211]  ? __schedule+0x429/0x8c0
[123491.284216]  ? schedule+0x46/0x90
[123491.284220]  ? schedule_timeout+0x1f7/0x370
[123491.284224]  ? preempt_count_add+0x67/0xb0
[123491.284229]  ? _raw_spin_lock_irqsave+0x25/0x50
[123491.284232]  ? preempt_count_add+0x67/0xb0
[123491.284243]  ? md_thread+0x120/0x160 [md_mod]
[123491.284252]  md_thread+0x120/0x160 [md_mod]
[123491.284258]  ? remove_wait_queue+0x60/0x60
[123491.284263]  kthread+0xf8/0x130
[123491.284272]  ? md_rdev_init+0xc0/0xc0 [md_mod]
[123491.284277]  ? kthread_create_worker_on_cpu+0x70/0x70
[123491.284281]  ret_from_fork+0x22/0x40

stackexchangeを含む私が見つけたすべては、過度のシステム負荷が原因でサーバーの状態が悪いことを示します。私の場合、新しいRaid1 + 0構成で4HHSをホストするシステムでこれが起こりました。実際、システムは昨日すぐに設定され、データがほとんど含まれていませんでした。 SMBクライアントを介してホームディレクトリ(10ファイルのみを含む)を一覧表示すると、ハングが発生します。

このシステムのディスクは dm_crypt を使用して暗号化されます。 LVMは使用されません。

root@stasiek1:/home/lacki# cat /proc/mdstat
Personalities : [raid10] [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] 
md1 : active raid10 sdd3[3] sdb3[1] sda3[0] sdc3[2]
      7225882624 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
      bitmap: 1/54 pages [4KB], 65536KB chunk

md0 : active raid10 sdd2[3] sda2[0] sdc2[2] sdb2[1]
      585674752 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
      bitmap: 3/5 pages [12KB], 65536KB chunk

unused devices: <none>


root@stasiek1:/home/lacki# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Sat Dec 29 22:59:44 2018
     Raid Level : raid10
     Array Size : 585674752 (558.54 GiB 599.73 GB)
  Used Dev Size : 292837376 (279.27 GiB 299.87 GB)
   Raid Devices : 4
  Total Devices : 4
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Tue Jan 29 22:14:24 2019
          State : clean 
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0

         Layout : near=2
     Chunk Size : 512K

           Name : stasiek1:0  (local to host stasiek1)
           UUID : d12a1437:ab040229:dbc0f4bf:796a97dd
         Events : 768

    Number   Major   Minor   RaidDevice State
       0       8        2        0      active sync set-A   /dev/sda2
       1       8       18        1      active sync set-B   /dev/sdb2
       2       8       34        2      active sync set-A   /dev/sdc2
       3       8       50        3      active sync set-B   /dev/sdd2


root@stasiek1:/home/lacki# mdadm --detail /dev/md1
/dev/md1:
        Version : 1.2
  Creation Time : Sat Dec 29 23:00:13 2018
     Raid Level : raid10
     Array Size : 7225882624 (6891.14 GiB 7399.30 GB)
  Used Dev Size : 3612941312 (3445.57 GiB 3699.65 GB)
   Raid Devices : 4
  Total Devices : 4
    Persistence : Superblock is persistent

  Intent Bitmap : Internal

    Update Time : Tue Jan 29 22:13:37 2019
          State : clean 
 Active Devices : 4
Working Devices : 4
 Failed Devices : 0
  Spare Devices : 0

         Layout : near=2
     Chunk Size : 512K

           Name : stasiek1:1  (local to host stasiek1)
           UUID : bdf36256:191923e1:01254e05:8bc447c9
         Events : 7357

    Number   Major   Minor   RaidDevice State
       0       8        3        0      active sync set-A   /dev/sda3
       1       8       19        1      active sync set-B   /dev/sdb3
       2       8       35        2      active sync set-A   /dev/sdc3
       3       8       51        3      active sync set-B   /dev/sdd3

システム:カーネル:4.18。 Debian ストレッチ

ベストアンサー1

回答よりもコメントが多いが、コメントが長すぎます。

これはカーネルのバグかもしれません。残念ながら、このようなカーネルの問題は非常に一般的です。最近の例は次のとおりです。MD:障害物によるraid10停止の問題を修正

カーネル開発者ではなく、これについて詳しく知りたくない場合は、カーネルのバグについてできることはあまりありません。 :-)

  • 他の人もこのカーネルバージョンで同じ問題を抱えていることを確認し、解決策を見つけたかもしれません。たとえば、blk_mqを無効にします。
  • 最新のカーネル(または最近バグが追加された場合は古いカーネル)を試してください。問題を2つに分けるのに役立ちます。
  • メーリングリストでパッチを確認し、以下を試してください。
  • ディストリビューションのフォーラムとバグトラッカーを確認してください。
  • 報告するlinux-raidメーリングリスト問題を調査し、適切に解決できるように

もしそうなら、それは単なる希望/運の問題です。この問題が多くの人に影響を与えるのか、それとも奇妙な理由であなただけに影響を与えるのかについての質問もあります。

自分だけの問題であれば、カーネルのバグのように見えても、新しいハードウェアを新しくインストールすると、問題が「修正」される可能性があります。多くのバグが根本原因をきちんと把握できずにこのように修正されます(そのためには特別なスキルと時間が必要だからです)。

おすすめ記事