테스트를 위해 단일 가상 머신에 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/vdb
NVME 디스크의 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.meta
및 cephfs.tank.data
사용자 환경에 적합한 풀 이름으로 바꾸십시오.)