10.3. mClock 작업 대기열에 영향을 미치는 요인
Red Hat Ceph Storage 내에서 mClock 작업 대기열의 영향을 줄일 수 있는 세 가지 요인이 있습니다.
- 클라이언트 작업의 shard 수입니다.
- 작업 시퀀스의 작업 수입니다.
- Ceph OSD용 분산 시스템 사용
클라이언트 작업의 shard 수
Ceph OSD에 대한 요청은 배치 그룹 식별자에 의해 분할됩니다. 각 shard에는 자체 mClock 큐가 있으며 이러한 대기열은 상호 작용하지도 않으며 해당 대기열 간에 정보를 공유하지 않습니다.
이러한 구성 옵션을 사용하여 shard 수를 제어할 수 있습니다.
-
osd_op_num_shards
-
osd_op_num_shards_hdd
-
osd_op_num_shards_ssd
더 적은 수의 shard는 mClock 큐의 영향을 증가시키지만 다른 손상에 영향을 미칠 수 있습니다.
설정 옵션 osd_op_num_shards
, osd_op_num_shards ,osd_op_nums_hdd ,
수를 사용합니다.
osd_op_num_shards
_sshards_ssd 로 정의된 기본 shard
작업 시퀀스의 작업 수
요청은 작업 대기열에서 처리되는 작업 시퀀스기로 전송됩니다. mClock 스케줄러는 작업 대기열에 있습니다. 작업 시퀀스로 전송할 작업을 결정합니다.
작업 시퀀스에 허용되는 작업 수는 복잡한 문제입니다. 목표는 작업 시퀀스에 충분한 작업을 유지하는 것입니다. 따라서 디스크 및 네트워크 액세스가 다른 작업을 완료하기 위해 대기하는 동안에는 항상 일부에서 작동합니다.
그러나 mClock은 더 이상 작업 시퀀스로 전송되는 작업을 제어할 수 없습니다. 따라서 mClock의 영향을 극대화하기 위해 목표는 가능한 한 작업 시퀀스에 몇 가지 작업을 유지하는 것입니다.
작업 시퀀스기의 작업 수에 영향을 미치는 구성 옵션은 다음과 같습니다.
-
bluestore_throttle_bytes
-
bluestore_throttle_deferred_bytes
-
bluestore_throttle_cost_per_io
-
bluestore_throttle_cost_per_io_hdd
-
bluestore_throttle_cost_per_io_ssd
bluestore_throttle_ bytes 및
옵션에 정의된 기본값을 사용합니다. 그러나 이러한 옵션은 벤치마킹 단계에서 확인할 수 있습니다.
bluestore_throttle
_deferred_bytes
Ceph OSD용 분산 시스템 사용
mClock 알고리즘의 영향에 영향을 미치는 세 번째 요소는 분산 시스템을 사용하는 것입니다. 여기서 여러 Ceph OSD에 대한 요청이 수행되고 각 Ceph OSD에는 여러 shard가 있을 수 있습니다. 그러나 Red Hat Ceph Storage는 현재 mClock의 분산 버전이 아닌 mClock 알고리즘을 사용합니다.
dmClock은 mClock의 분산 버전입니다.
추가 리소스
-
osd_op_num_shards_hdd
및osd_op_num_shards_ssd
매개변수에 대한 자세한 내용은 OSD(Object Storage Daemon) 구성 옵션을 참조하십시오. - BlueStore throttle 매개변수에 대한 자세한 내용은 BlueStore 구성 옵션을 참조하십시오.
- 자세한 내용은 OSD 수동 벤치마킹 을 참조하십시오.