ceph fs 애플리케이션 지연 시간이 너무 길어서 가상 머신 로드가 높아집니다.

ceph fs 애플리케이션 지연 시간이 너무 길어서 가상 머신 로드가 높아집니다.

내 ceph 클러스터에 몇 가지 문제가 있습니다. fs_apply_latency가 너무 높으면 qemu 가상 머신(ceph 이미지를 VHD로 사용)에서 로드가 높아지고 응답이 느려집니다. 설정은 다음과 같습니다:

  • 로그 장치로 HDD 4개와 SSD 1개가 있는 호스트 5개
  • 3x 1GBit 결합 인터페이스를 통한 상호 연결
  • 모든 ceph 트래픽에 대한 별도의 전용 네트워크

다음은 ceph osd perf의 출력입니다.

osd fs_commit_latency(ms) fs_apply_latency(ms) 
  0                    17                  551 
  1                     0                   18 
  2                    44                   61 
  3                     0                  915 
  4                     0                  912 
  5                    46                  646 
  6                     0                 1243 
  7                    84                  110 
  8                     1                   23 
  9                     2                  167 
 10                     0                  576 
 11                     1                 1188 
 12                     0                  105 
 13                     0                  199 
 14                     0                  536 
 15                     0                 1560 
 16                     0                  195 
 17                     0                  633 
 18                     0                  492 
 19                     0                  387

때로는 각 OSD가 최대 3초까지 소요되기도 합니다! 이 클러스터에는 과도한 읽기 또는 쓰기 작업이 없습니다. 그럼에도 불구하고 다양한 OSD에서 때때로 I/O 메시지 차단이 발생합니다.

임시 ceph.conf는 다음과 같습니다.

[global]
fsid = <removed>
mon host = mon1,mon2,mon3
mon addr = <removed>
mon initial_members = mon1,mon2,mon3
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
filestore_xattr_use_omap = true
osd pool default size = 3
public network = <private>/24
cluster network = <private>/24
rbd default format = 2

[osd]
osd journal size = 10240 # useless since we use partitions nowadays
osd recovery max active = 1
osd max backfills = 1

지연을 줄이기 위해 무엇을 할 수 있는지 아시나요? 몇 주 동안 웹을 탐색했지만 실제로 도움이 되는 내용을 찾을 수 없습니다.

관련 정보