11.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_hdd
, osd_op_num_shards_ssd
.
작업 시퀀스의 작업 수
요청은 작업 큐에서 해당 요청이 처리되는 작업 시퀀스러로 전송됩니다. 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(오브젝트 스토리지 데몬) 구성 옵션을 참조하십시오. - BlueStore throttle 매개변수에 대한 자세한 내용은 BlueStore 구성 옵션을 참조하십시오.
- 자세한 내용은 OSD 수동 벤치마킹 을 참조하십시오.