테스트 환경에서 cephfs 볼륨 생성이 매우 느림

테스트 환경에서 cephfs 볼륨 생성이 매우 느림

테스트를 위해 단일 가상 머신에 Ceph를 설치했습니다(ceph 자체를 테스트하지는 않지만 실행할 도구에 대한 ceph 엔드포인트가 필요합니다). 설치는 매우 간단했지만, ceph fs volume create tank제가 만들려고 했던 cephfs 파일 시스템( )을 사용할 수 있게 되기까지 오랜 시간이 걸렸습니다(여기서 "ever"는 "지금까지 최소 20분"을 의미함). 실행 중인 ceph mds status프로그램:

tank:1 {0=tank.ceph.znlhma=up:creating} 1 up:standby

실행 중인 ceph status프로그램:

  cluster:
    id:     0350c95c-e59a-11eb-be4b-52540085de8c
    health: HEALTH_WARN
            1 MDSs report slow metadata IOs
            Reduced data availability: 64 pgs inactive
            Degraded data redundancy: 64 pgs undersized
            OSD count 1 < osd_pool_default_size 3

  services:
    mon: 1 daemons, quorum ceph.storage (age 50m)
    mgr: ceph.storage.pealqx(active, since 50m)
    mds: 1/1 daemons up, 1 standby
    osd: 1 osds: 1 up (since 50m), 1 in (since 58m)

  data:
    volumes: 1/1 healthy
    pools:   2 pools, 64 pgs
    objects: 0 objects, 0 B
    usage:   6.1 MiB used, 100 GiB / 100 GiB avail
    pgs:     100.000% pgs not active
             64 undersized+peered

이는 증상이 있다고 가정하는 "느린 메타데이터 IO를 보고하는 1 MDS"를 제외하고는 대부분 예상되는 현상입니다. /dev/vdbNVME 디스크의 btrfs 파일 시스템으로 지원되는 100GB 가상 디스크( )에 OSD가 있습니다 .

생성 속도를 높이기 위해 할 수 있는 일이 있나요? Ceph가 특별히 성능이 좋을 필요는 없지만 이 테스트 환경을 더 짧은 시간에 가동할 수 있기를 원합니다.

답변1

대답은 기본적으로 ceph가 3개 미만의 복제본이 있는 OSD를 활성화하지 않는다는 것입니다. 해결 방법은 min_size해당 풀을 다음과 같이 설정하는 것입니다.

ceph osd pool set cephfs.tank.meta min_size 1
ceph osd pool set cephfs.tank.data min_size 1

( cephfs.tank.metacephfs.tank.data사용자 환경에 적합한 풀 이름으로 바꾸십시오.)

관련 정보