RAID 어레이(jbd2)의 쓰기 볼륨이 지속적으로 낮습니다. 이 문제의 원인은 무엇입니까?

RAID 어레이(jbd2)의 쓰기 볼륨이 지속적으로 낮습니다. 이 문제의 원인은 무엇입니까?

실제로 두 개의 매우 유사한 RAID 어레이가 있지만 하나는 지속적으로 기록되고 있고(jbd2에 의한 것으로 보임) 다른 하나는 그렇지 않습니다. 다음은 배열입니다.

md9 : active raid5 sdl4[4] sdk4[2] sdh4[1] sdb4[0]
  11626217472 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]
  bitmap: 2/29 pages [8KB], 65536KB chunk
   
md8 : active raid5 sdf3[2] sdc3[1] sda3[0] sdi3[3]
  11626217472 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]
  bitmap: 0/29 pages [0KB], 65536KB chunk

보시다시피 "검사"나 특별한 일이 발생하지 않습니다. 두 어레이 모두 4x 4TB입니다.

여태까지는 그런대로 잘됐다.

이 두 배열(/dev/md8 및 /dev/md9)에는 데이터만 포함되고 루트 파일 시스템은 포함되지 않습니다. 사실, 그것들은 어떤 용도로도 거의 사용되지 않습니다. 둘 다 단일 ext4 파티션이 마운트되어 있고 noatime"bcache"가 준비되어 있습니다(그러나 아직 캐시 볼륨은 없음).

df -h:

/dev/bcache0     11T  7.3T  3.6T  67% /mnt/raid5a
/dev/bcache1     11T  7.4T  3.5T  68% /mnt/raid5b

cat /proc/mounts:

/dev/bcache0 /mnt/raid5a ext4 rw,nosuid,nodev,noexec,noatime,data=ordered 0 0
/dev/bcache1 /mnt/raid5b ext4 rw,nosuid,nodev,noexec,noatime,data=ordered 0 0

그러나 지속적인 쓰기 (및 백업 볼륨 ) iostat에 대한 보고가 있지만 동일한 어레이에서는 비슷한 일이 발생하지 않습니다 ./dev/bcache1/dev/md9/dev/md8

Device:            tps    kB_read/s    kB_wrtn/s    kB_read    kB_wrtn
md8               0.00         0.00         0.00          0          0
bcache0           0.00         0.00         0.00          0          0
md9               1.50         0.00        18.00          0         36
bcache1           1.00         0.00        12.00          0         24

md8               0.00         0.00         0.00          0          0
bcache0           0.00         0.00         0.00          0          0
md9               2.50         0.00        18.00          0         36
bcache1           2.50         0.00        18.00          0         36

이것은 몇 시간 동안 계속되었습니다.

내가 시도한 것:

  1. gvfs와 관련된 모든 것을 죽였습니다. ps ax |grep gvfs이제 결과가 0개입니다. 계속해서 쓰는 일이 일어나고 있습니다.
  2. lsof무슨 일이 일어나는지 확인하세요 . 아무것도 표시되지 않습니다.
  3. 사용된 iotop. [jbd2/bcache1-8]일반적으로 상단에 프로세스라는 이름이 표시됩니다 . 다른 어레이에는 유사한 상황이 없습니다.
  4. 나는 노력했다제거용량. 이것은 잘 작동하며 iostat는 더 이상 액세스할 수 없다고 보고합니다(아무도 사용하지 않는 것처럼 보입니다). 그러나 다시 설치하면 이러한 저용량 쓰기가 다시 트리거됩니다....

그래요매우이 배열에 무엇을 쓸 수 있는지 궁금합니다. 말했듯이 데이터만 들어 있고 실제로는 폴더이고 lost+found비어 있습니다...

답변1

풀질문을 다 입력해보니 범인을 찾은 것 같네요...

볼륨이 일주일 넘게 유지되었음에도 불구하고(다른 어레이의 경우 2주) 다른 프로세스 ext4lazyinit는 다음과 같습니다 .아직inode 초기화로 바쁜 중입니다(mkfs.ext4가 일반적으로 큰 볼륨에 대해 생성하는 미친 4조가 아닌 매우 정상적인 400만 개로 제한했습니다).

df -h -i:

Filesystem     Inodes IUsed IFree IUse% Mounted on
/dev/bcache1     4.1M  2.1K  4.1M    1% /mnt/raid5b

again 을 사용하여 볼륨을 다시 마운트한 후 init_itable=0iostat높은 볼륨을 제외하고 동일한 쓰기가 표시됩니다.

md8               0.00         0.00         0.00          0          0
bcache0           0.00         0.00         0.00          0          0
md9             101.50         0.00       584.00          0       1168
bcache1         101.50         0.00       584.00          0       1168

...이것은 실제로 여전히 inode를 초기화하는 중임을 확인하는 것 같습니다.

관련 정보