2.6.3. CRUSH 규칙 생성

기본 CRUSH 계층 구조와 마찬가지로 CRUSH 맵에는 기본 CRUSH 규칙도 포함되어 있습니다.

참고

기본 rbd 풀에서 이 규칙을 사용할 수 있습니다. 다른 풀에서 고객 데이터를 저장하는 데 기본 규칙을 삭제하지 마십시오.

CRUSH 규칙에 대한 자세한 내용은 Red Hat Ceph Storage 5용 스토리지 전략 가이드의 CRUSH 규칙 섹션을 참조하십시오. CRUSH 맵을 수동으로 편집하려면 Red Hat Ceph Storage 5용 Storage Strategies 가이드의 CRUSH 맵 편집 섹션을 참조하십시오.

각 CRUSH 계층 구조에 대해 CRUSH 규칙을 생성합니다. 다음 예제에서는. rgw.root 를 포함하여 서비스 풀을 저장할 CRUSH 계층 구조의 규칙을 보여줍니다. 이 예에서 루트 sas-ssd 는 주요 CRUSH 계층 구조 역할을 합니다. 이름 rgw-service 를 사용하여 기본 규칙과 구분합니다. 단계는 sas-ssd 행을 통해 풀에 CRUSH 루트 생성에서 생성된 sas-ssd 루트를 사용하도록 알립니다. 해당 하위 버킷에는 SAS 드라이브가 있는 OSD와 처리량이 높은 하드웨어 구성의 저널용 SSD 또는 NVMe 드라이브와 같은 고성능 스토리지 미디어가 포함됩니다. step selectleaf유형 rack 부분은 실패 도메인입니다. 다음 예제에서는 랙입니다.

##
# SERVICE RULE DECLARATION
##

rule rgw-service {
 type replicated
 min_size 1
 max_size 10
 step take sas-ssd
 step chooseleaf firstn 0 type rack
 step emit
}
참고

위 예제에서 데이터가 세 번 복제되는 경우 클러스터에 비슷한 개수의 OSD 노드를 포함하는 랙이 3개 이상 있어야 합니다.

작은 정보

복제된 유형에는 데이터 지속성, 복제본 수 또는 삭제 코딩과 관련된 NOTHING 이 있습니다. 복제된 상태만 지원됩니다.

다음 예제에서는 데이터 풀을 저장할 CRUSH 계층 구조의 규칙을 보여줍니다. 이 예에서 루트 sas-ssd 는 주요 CRUSH 계층 구조-서비스 규칙과 동일한 CRUSH 계층 구조입니다. rgw-throughput 을 사용하여 기본 규칙과 rgw-service 를 구분합니다. 단계는 sas-ssd 행을 통해 풀에 CRUSH 루트 생성에서 생성된 sas-ssd 루트를 사용하도록 알립니다. 해당 하위 버킷에는 SAS 드라이브가 있는 OSD와 처리량이 높은 하드웨어 구성의 SSD 또는 NVMe 드라이브와 같은 고성능 스토리지 미디어가 포함됩니다. step selectleaf호스트 부분은 실패 도메인입니다. 다음 예제에서는 호스트입니다. 규칙은 동일한 CRUSH 계층 구조이지만 다른 오류 도메인을 사용합니다.

##
# THROUGHPUT RULE DECLARATION
##

rule rgw-throughput {
 type replicated
 min_size 1
 max_size 10
 step take sas-ssd
 step chooseleaf firstn 0 type host
 step emit
}
참고

앞의 예에서 풀이 기본값보다 많은 수의 데이터 및 인코딩 청크를 사용하여 삭제 코딩을 사용하는 경우 삭제 코딩 청크를 용이하게 하려면 클러스터에 비슷한 개수의 OSD 노드를 포함하는 랙이 있어야 합니다. 소규모 클러스터의 경우 이는 실용적이지 않을 수 있으므로 위 예제는 host 를 CRUSH 장애 도메인으로 사용합니다.

다음 예제에서는 인덱스 풀을 저장할 CRUSH 계층 구조의 규칙을 보여줍니다. 이 예에서 루트 인덱스 는 기본 CRUSH 계층 구조 역할을 합니다. rgw-index 를 사용하여 rgw-servicergw-throughput 과 구분합니다. 단계에서는 CRUSH 루트 생성에서 생성된 인덱스 루트를 사용하도록 풀에 지시합니다. 해당 버킷 에는 OSD 저널을 저장하는 SSD 또는 NVMe 드라이브의 SSD 또는 NVMe 드라이브와 같은 고성능 스토리지 미디어가 포함됩니다. step selectleaf유형 rack 부분은 실패 도메인입니다. 다음 예제에서는 랙입니다.

##
# INDEX RULE DECLARATION
##

rule rgw-index {
 type replicated
 min_size 1
 max_size 10
 step take index
 step chooseleaf firstn 0 type rack
 step emit
}