부록 F. OSD(오브젝트 스토리지 데몬) 구성 옵션
다음은 배포 중에 설정할 수 있는 Ceph OSD(오브젝트 스토리지 데몬) 구성 옵션입니다.
ceph config set osd CONFIGURATION_OPTION VALUE
명령을 사용하여 이러한 구성 옵션을 설정할 수 있습니다.
- osd_uuid
- 설명
- Ceph OSD의 UUID(Universally unique identifier)입니다.
- 유형
- UUID
- 기본
- UUID입니다.
- 참고
-
osd uuid
는 단일 Ceph OSD에 적용됩니다.fsid
는 전체 클러스터에 적용됩니다.
- osd_data
- 설명
OSD 데이터의 경로입니다. Ceph를 배포할 때 디렉터리를 생성해야 합니다. 이 마운트 지점에 OSD 데이터의 드라이브를 마운트합니다.
IMPORTANT: Red Hat does not recommend changing the default.
- 유형
- 문자열
- 기본
-
/var/lib/ceph/osd/$cluster-$id
- osd_max_write_size
- 설명
- 쓰기 크기(MB)의 최대 크기입니다.
- 유형
- 32비트 정수
- 기본
-
90
- osd_client_message_size_cap
- 설명
- 메모리에서 허용되는 가장 큰 클라이언트 데이터 메시지입니다.
- 유형
- 64비트 정수 서명되지 않음
- 기본
-
500MB 기본값.
500*1024L*1024L
- osd_class_dir
- 설명
- RADOS 클래스 플러그인의 클래스 경로입니다.
- 유형
- 문자열
- 기본
-
$libdir/rados-classes
- osd_max_scrubs
- 설명
- Ceph OSD의 최대 동시 scrub 작업 수입니다.
- 유형
- 32비트 Int
- 기본
-
1
- osd_scrub_thread_timeout
- 설명
- scrub 스레드를 타이밍하기 전의 최대 시간(초)입니다.
- 유형
- 32비트 정수
- 기본
-
60
- osd_scrub_finalize_thread_timeout
- 설명
- scrub가 스레드를 종료하기 전의 최대 시간(초)입니다.
- 유형
- 32비트 정수
- 기본
-
60*10
- osd_scrub_begin_hour
- 설명
-
이렇게 하면 스크럽이 하루 또는 그 이후 시간으로 제한됩니다.
osd_scrub_begin_hour = 0
및osd_scrub_end_hour = 0
을 사용하여 하루 전체의 스크럽을 허용합니다.osd_scrub_end_hour
과 함께 스크러블이 발생할 수 있는 시간 창을 정의합니다. 그러나 배치 그룹의 scrub 간격이osd_scrub_max_interval
을 초과하는 한 시간 창 허용 여부에 관계없이 scrub가 수행됩니다. - 유형
- 정수
- 기본
-
0
- 허용되는 범위
-
[0,23]
- osd_scrub_end_hour
- 설명
-
이렇게 하면 스크러블링이 이 시간 이전 시간으로 제한됩니다.
osd_scrub_begin_hour = 0
및osd_scrub_end_hour = 0
을 사용하여 하루 동안 스크럽을 허용합니다.osd_scrub_begin_hour
과 함께 스크럽이 발생할 수 있는 시간 창을 정의합니다. 그러나 배치 그룹의 scrub 간격이osd_scrub_max_interval
을 초과하는 한 시간 창 허용 여부에 관계없이 scrub가 수행됩니다. - 유형
- 정수
- 기본
-
0
- 허용되는 범위
-
[0,23]
- osd_scrub_load_threshold
- 설명
-
최대 로드입니다. 시스템 로드(
getloadavg()
함수에 의해 정의됨)가 이 수보다 높으면 Ceph는 스크럽하지 않습니다. 기본값은0.5
입니다. - 유형
- 플로트
- 기본
-
0.5
- osd_scrub_min_interval
- 설명
- Red Hat Ceph Storage 클러스터 로드가 낮은 경우 Ceph OSD를 스크럽하는 최소 간격(초)입니다.
- 유형
- 플로트
- 기본
-
하루에 한 번.
60*60*24
- osd_scrub_max_interval
- 설명
- 클러스터 로드와 관계없이 Ceph OSD를 스크럽하는 최대 간격(초)입니다.
- 유형
- 플로트
- 기본
-
일주일에 한 번.
7*60*60*24
- osd_scrub_interval_randomize_ratio
- 설명
-
osd scrub
min 간격과
.osd scrub max 간격 사이의 예약된 srub
비율을 무작위로 사용합니다 - 유형
- 플로트
- 기본
-
0.5
.
- mon_warn_not_scrubbed
- 설명
-
osd_scrub_interval
에서 스크럽되지 않은 PG에 대해 경고하는 시간(초)입니다. - 유형
- 정수
- 기본
-
0
(경고 없음).
- osd_scrub_chunk_min
- 설명
-
오브젝트 저장소는 해시 경계에서 끝나는 청크로 분할됩니다. 청크의 경우 Ceph는 해당 청크에 대해 쓰기가 차단된 상태에서 한 번에 하나의 청크로 오브젝트를 스크럽합니다.
osd scrub chunk min
설정은 scrub할 최소 청크 수를 나타냅니다. - 유형
- 32비트 정수
- 기본
-
5
- osd_scrub_chunk_max
- 설명
- scrub를 최대 청크 수입니다.
- 유형
- 32비트 정수
- 기본
-
25
- osd_scrub_sleep
- 설명
- 딥 스크럽 작업 사이에 잠드는 시간.
- 유형
- 플로트
- 기본
-
0
(또는 off).
- osd_scrub_during_recovery
- 설명
- 복구 중에 스크럽을 허용합니다.
- 유형
- bool
- 기본
-
false
- osd_scrub_invalid_stats
- 설명
- 추가 스크러브가 유효하지 않은 것으로 표시된 통계를 수정하도록 강제 시행합니다.
- 유형
- bool
- 기본
-
true
- osd_scrub_priority
- 설명
- scrub 작업과 클라이언트 I/O의 대기열 우선 순위를 제어합니다.
- 유형
- 서명되지 않은 32비트 정수
- 기본
-
5
- osd_requested_scrub_priority
- 설명
-
작업 대기열에서 사용자가 요청한 scrub의 우선순위 세트입니다. 이 값이
osd_client_op_priority
보다 작으면 scrub가 클라이언트 작업을 차단하는 경우osd_client_op_priority
값을 높일 수 있습니다. - 유형
- 서명되지 않은 32비트 정수
- 기본
-
120
- osd_scrub_cost
- 설명
- 큐 스케줄링을 위해 스크럽 작업 비용(MB)입니다.
- 유형
- 서명되지 않은 32비트 정수
- 기본
-
52428800
- osd_deep_scrub_interval
- 설명
-
모든 데이터를 완전히 읽고 있는 깊은 스크럽 간격입니다.
osd scrub load threshold
매개변수는 이 설정에 영향을 미치지 않습니다. - 유형
- 플로트
- 기본
-
일주일에 한 번.
60*60*24*7
- osd_deep_scrub_stride
- 설명
- 깊은 스크러브를 할 때 크기를 읽으십시오.
- 유형
- 32비트 정수
- 기본
-
512KB.
524288
- mon_warn_not_deep_scrubbed
- 설명
-
osd_deep_scrub_interval
이후의 모든 PG는 스크럽되지 않은 PG에 대해 경고하는 시간(초)입니다. - 유형
- 정수
- 기본
-
0
(경고 없음)
- osd_deep_scrub_randomize_ratio
- 설명
-
scrubs가 무작위로 깊은 스크러브가 되는 비율 (
osd_deep_scrub_interval
이 통과되기 전에도) - 유형
- 플로트
- 기본
-
0.15
또는 15 %
- osd_deep_scrub_update_digest_min_age
- 설명
- scrub가 전체 오브젝트 다이제스트를 업데이트하기 전에 몇 초 동안 오래된 오브젝트를 사용해야 합니까.
- 유형
- 정수
- 기본
-
7200
(120시간)
- osd_deep_scrub_large_omap_object_key_threshold
- 설명
- 이 보다 더 많은 OMAP 키가 있는 오브젝트에 경고.
- 유형
- 정수
- 기본
-
200000
- osd_deep_scrub_large_omap_object_value_sum_threshold
- 설명
- 이 보다 더 많은 OMAP 키 바이트가 있는 오브젝트에 경고합니다.
- 유형
- 정수
- 기본
-
1 G
- osd_delete_sleep
- 설명
- 다음 제거 트랜잭션 전에 유휴 시간(초)입니다. 이 설정은 배치 그룹 삭제 프로세스를 제한합니다.
- 유형
- 플로트
- 기본
-
0.0
- osd_delete_sleep_hdd
- 설명
- HDD의 다음 제거 트랜잭션 전에 유휴 시간(초)입니다.
- 유형
- 플로트
- 기본
-
5.0
- osd_delete_sleep_ssd
- 설명
- SSD의 다음 제거 트랜잭션 전에 유휴 시간(초)입니다.
- 유형
- 플로트
- 기본
-
1.0
- osd_delete_sleep_hybrid
- 설명
- Ceph OSD 데이터가 HDD 및 OSD 저널 또는 WAL 및 DB가 SSD에 있을 때 다음 제거 트랜잭션 전에 유휴 시간(초)입니다.
- 유형
- 플로트
- 기본
-
1.0
- osd_op_num_shards
- 설명
- 클라이언트 작업의 shard 수입니다.
- 유형
- 32비트 정수
- 기본
-
0
- osd_op_num_threads_per_shard
- 설명
- 클라이언트 작업의 shard당 스레드 수입니다.
- 유형
- 32비트 정수
- 기본
-
0
- osd_op_num_shards_hdd
- 설명
- HDD 작업의 shard 수입니다.
- 유형
- 32비트 정수
- 기본
-
5
- osd_op_num_threads_per_shard_hdd
- 설명
- HDD 작업의 shard당 스레드 수입니다.
- 유형
- 32비트 정수
- 기본
-
1
- osd_op_num_shards_ssd
- 설명
- SSD 작업의 shard 수입니다.
- 유형
- 32비트 정수
- 기본
-
8
- osd_op_num_threads_per_shard_ssd
- 설명
- SSD 작업의 shard당 스레드 수입니다.
- 유형
- 32비트 정수
- 기본
-
2
- osd_op_queue
- 설명
- Ceph OSD 내에서 작업의 우선 순위를 지정하는 데 사용할 대기열 유형을 설정합니다. OSD 데몬을 다시 시작해야 합니다.
- 유형
- 문자열
- 기본
-
wpq
- 유효한 선택 사항
-
wpq
,mclock_scheduler
,debug_random
mClock OSD 스케줄러는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있으며 Red Hat은 해당 기능을 프로덕션용으로 사용하지 않는 것이 좋습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다. 자세한 내용은 Red Hat 기술 프리뷰 기능에 대한 지원 범위를 참조하십시오.
osd_op_queue_cut_off
- 설명
엄격한 큐로 전송되고 일반 큐로 전송되는 우선 순위 작업을 선택합니다. OSD 데몬을 다시 시작해야 합니다.
낮은 설정은 모든 복제와 더 높은 작업을 엄격한 큐로 보내는 반면, 높은 옵션은 복제 확인 작업만 엄격한 큐에 보냅니다.
높은 설정은 클러스터의 일부 Ceph OSD가 사용량이 많은 경우 특히
osd_op_queue
설정에서wpq
옵션과 결합할 때 유용합니다. 복제 트래픽을 매우 많이 처리하는 Ceph OSD는 이러한 OSD에서 기본 클라이언트 트래픽을 소모할 수 있습니다.- 유형
- 문자열
- 기본
-
높음
- 유효한 선택 사항
-
low
,high
,debug_random
- osd_client_op_priority
- 설명
-
클라이언트 작업에 대해 설정된 우선순위입니다. 이는
osd 복구 op 우선순위
를 기준으로 합니다. - 유형
- 32비트 정수
- 기본
-
63
- 유효한 범위
- 1-63
- osd_recovery_op_priority
- 설명
-
복구 작업에 설정된 우선순위입니다.
osd 클라이언트 op priority
를 기준으로 합니다. - 유형
- 32비트 정수
- 기본
-
3
- 유효한 범위
- 1-63
- osd_op_thread_timeout
- 설명
- Ceph OSD 작업 스레드 시간(초)입니다.
- 유형
- 32비트 정수
- 기본
-
15
- osd_op_complaint_time
- 설명
- 지정된 시간(초)이 경과한 후 작업이 불만을 제기합니다.
- 유형
- 플로트
- 기본
-
30
- osd_disk_threads
- 설명
- 백그라운드 디스크 집약적 OSD 작업을 수행하는 데 사용되는 디스크 스레드 수(예: 스크러블링 및 스냅 트림)입니다.
- 유형
- 32비트 정수
- 기본
-
1
- osd_op_history_size
- 설명
- 추적할 완료된 작업의 최대 수입니다.
- 유형
- 32비트 서명되지 않은 정수
- 기본
-
20
- osd_op_history_duration
- 설명
- 추적하기 위한 가장 오래된 완료된 작업입니다.
- 유형
- 32비트 서명되지 않은 정수
- 기본
-
600
- osd_op_log_threshold
- 설명
- 한 번에 표시할 작업 로그 수입니다.
- 유형
- 32비트 정수
- 기본
-
5
- osd_op_timeout
- 설명
- OSD 작업을 실행하는 시간(초)입니다.
- 유형
- 정수
- 기본
-
0
클라이언트가 결과를 처리할 수 없는 한 osd op 시간 초과
옵션을 설정하지 마십시오. 예를 들어 가상 머신이 가상 머신에서 실행되는 클라이언트에 이 매개변수를 설정하면 가상 머신이 이 시간 초과를 하드웨어 오류로 해석하기 때문에 데이터가 손상될 수 있습니다.
- osd_max_backfills
- 설명
- 단일 OSD에 또는 단일 OSD에서 허용되는 최대 백필 작업 수입니다.
- 유형
- 64비트 서명되지 않은 정수
- 기본
-
1
- osd_backfill_scan_min
- 설명
- 백필 스캔당 최소 오브젝트 수입니다.
- 유형
- 32비트 정수
- 기본
-
64
- osd_backfill_scan_max
- 설명
- 백필 스캔당 최대 오브젝트 수입니다.
- 유형
- 32비트 정수
- 기본
-
512
- osd_backfill_full_ratio
- 설명
- Ceph OSD의 전체 비율이 이 값보다 높은 경우 백필 요청을 거부합니다.
- 유형
- 플로트
- 기본
-
0.85
- osd_backfill_retry_interval
- 설명
- 백필 요청을 다시 시도하기 전에 대기하는 시간(초)입니다.
- 유형
- double
- 기본
-
30.000000
- osd_map_dedup
- 설명
- OSD 맵에서 중복 제거를 활성화합니다.
- 유형
- 부울
- 기본
-
true
- osd_map_cache_size
- 설명
- OSD 맵 캐시의 크기(MB)입니다.
- 유형
- 32비트 정수
- 기본
-
50
- osd_map_cache_bl_size
- 설명
- OSD 데몬의 메모리 내 OSD 맵 캐시의 크기입니다.
- 유형
- 32비트 정수
- 기본
-
50
- osd_map_cache_bl_inc_size
- 설명
- OSD 데몬에서 메모리 내 OSD 맵 캐시의 크기가 증가합니다.
- 유형
- 32비트 정수
- 기본
-
100
- osd_map_message_max
- 설명
- MOSDMap 메시지당 허용되는 최대 맵 항목입니다.
- 유형
- 32비트 정수
- 기본
-
40
- osd_snap_trim_thread_timeout
- 설명
- snap trim 스레드를 타이밍하기 전의 최대 시간(초)입니다.
- 유형
- 32비트 정수
- 기본
-
60*60*1
- osd_pg_max_concurrent_snap_trims
- 설명
- 최대 병렬 스냅 트리/PG 수입니다. 이는 한 번에 트리밍할 PG당 오브젝트 수를 제어합니다.
- 유형
- 32비트 정수
- 기본
-
2
- osd_snap_trim_sleep
- 설명
- PG 문제를 처리하는 모든 트리 사이에 절전을 삽입합니다.
- 유형
- 32비트 정수
- 기본
-
0
- osd_snap_trim_sleep_hdd
- 설명
- HDD에 대한 다음 스냅샷 트리밍 전에 유휴 시간(초)입니다.
- 유형
- 플로트
- 기본
-
5.0
- osd_snap_trim_sleep_ssd
- 설명
- NVMe를 포함하여 SSD OSD의 다음 스냅샷 트리밍 작업 전에 유휴 시간(초)입니다.
- 유형
- 플로트
- 기본
-
0.0
- osd_snap_trim_sleep_hybrid
- 설명
- OSD 데이터가 HDD에 있고 OSD 저널 또는 WAL 및 DB가 SSD에 있을 때 다음 스냅샷 트리밍 작업 전에 유휴 시간(초)입니다.
- 유형
- 플로트
- 기본
-
2.0
- osd_max_trimming_pgs
- 설명
- 최대 트리밍 PG 수
- 유형
- 32비트 정수
- 기본
-
2
- osd_backlog_thread_timeout
- 설명
- 백로그 스레드를 타이밍하기 전의 최대 시간(초)입니다.
- 유형
- 32비트 정수
- 기본
-
60*60*1
- osd_default_notify_timeout
- 설명
- OSD 기본 알림 제한 시간(초)입니다.
- 유형
- 32비트 정수 서명되지 않음
- 기본
-
30
- osd_check_for_log_corruption
- 설명
- 로그 파일에 손상이 있는지 확인합니다. 계산적으로 비용이 많이 들 수 있습니다.
- 유형
- 부울
- 기본
-
false
- osd_remove_thread_timeout
- 설명
- OSD 스레드를 삭제하는 데 걸리는 최대 시간(초)입니다.
- 유형
- 32비트 정수
- 기본
-
60*60
- osd_command_thread_timeout
- 설명
- 명령 스레드를 타이밍하기 전의 최대 시간(초)입니다.
- 유형
- 32비트 정수
- 기본
-
10*60
- osd_command_max_records
- 설명
- 반환될 손실된 오브젝트 수를 제한합니다.
- 유형
- 32비트 정수
- 기본
-
256
- osd_auto_upgrade_tmap
- 설명
-
이전 개체의
omap
에tmap
을 사용합니다. - 유형
- 부울
- 기본
-
true
- osd_tmapput_sets_users_tmap
- 설명
-
디버깅에만
tmap
을 사용합니다. - 유형
- 부울
- 기본
-
false
- osd_preserve_trimmed_log
- 설명
- 트리밍된 로그 파일을 유지하지만 더 많은 디스크 공간을 사용합니다.
- 유형
- 부울
- 기본
-
false
- osd_recovery_delay_start
- 설명
- 피어링이 완료되면 오브젝트 복구를 시작하기 전에 지정된 시간(초) 동안 Ceph가 지연됩니다.
- 유형
- 플로트
- 기본
-
0
- osd_recovery_max_active
- 설명
- 한 번에 OSD당 활성 복구 요청 수입니다. 더 많은 요청으로 인해 복구 속도가 빨라지지만 요청이 클러스터에서 로드를 늘리게 됩니다.
- 유형
- 32비트 정수
- 기본
-
0
- osd_recovery_max_active_hdd
- 설명
- 기본 장치가 HDD인 경우 한 번에 Ceph OSD당 활성 복구 요청 수입니다.
- 유형
- 정수
- 기본
-
3
- osd_recovery_max_active_ssd
- 설명
- 기본 장치가 SSD인 경우 한 번에 Ceph OSD당 활성 복구 요청 수입니다.
- 유형
- 정수
- 기본
-
10
- osd_recovery_sleep
- 설명
- 다음 복구 또는 백필 작업 전에 유휴 시간(초)입니다. 이 값을 늘리면 클라이언트 작업이 덜 영향을 미치는 동안 복구 작업이 느려집니다.
- 유형
- 플로트
- 기본
-
0.0
- osd_recovery_sleep_hdd
- 설명
- HDD의 다음 복구 또는 백필 작업 전에 유휴 시간(초)입니다.
- 유형
- 플로트
- 기본
-
0.1
- osd_recovery_sleep_ssd
- 설명
- SSD의 다음 복구 또는 백필 작업 전에 유휴 시간(초)입니다.
- 유형
- 플로트
- 기본
-
0.0
- osd_recovery_sleep_hybrid
- 설명
- Ceph OSD 데이터가 HDD 및 OSD 저널 또는 WAL 및 DB가 SSD에 있을 때 다음 복구 또는 백필 작업 전에 유휴 시간(초)입니다.
- 유형
- 플로트
- 기본
-
0.025
- osd_recovery_max_chunk
- 설명
- 푸시할 데이터 청크의 최대 크기입니다.
- 유형
- 64비트 정수 서명되지 않음
- 기본
-
8388608
- osd_recovery_threads
- 설명
- 데이터 복구를 위한 스레드 수입니다.
- 유형
- 32비트 정수
- 기본
-
1
- osd_recovery_thread_timeout
- 설명
- 복구 스레드를 타이밍하기 전의 최대 시간(초)입니다.
- 유형
- 32비트 정수
- 기본
-
30
- osd_recover_clone_overlap
- 설명
-
복구 중에 복제 중복을 유지합니다. 항상
true
로 설정해야 합니다. - 유형
- 부울
- 기본
-
true
- rados_osd_op_timeout
- 설명
- RADOS가 RADOS 작업에서 오류를 반환하기 전에 OSD의 응답을 기다리는 시간(초)입니다. 값이 0이면 제한이 없음을 의미합니다.
- 유형
- double
- 기본
- 0