2.6. CRUSH 계층 구조 개발

스토리지 관리자로서 Ceph 스토리지 클러스터와 오브젝트 게이트웨이를 배포할 때 일반적으로 Ceph Object Gateway에는 기본 영역 그룹 및 영역이 있습니다. Ceph 스토리지 클러스터에는 기본 풀이 있으므로 기본 CRUSH 계층 구조와 함께 CRUSH 맵과 기본 CRUSH 규칙이 사용됩니다.

중요

기본 rbd 풀은 기본 CRUSH 규칙을 사용할 수 있습니다. Ceph 클라이언트가 클라이언트 데이터를 저장하는 데 사용한 경우 기본 규칙이나 계층 구조를 삭제하지 마십시오.

프로덕션 게이트웨이는 일반적으로 게이트웨이의 사용 및 지리적 위치에 따라 이름이 지정된 영역, 영역 그룹 및 영역을 사용합니다. 또한 Ceph 스토리지 클러스터에는 CRUSH 계층 구조가 여러 개의 CRUSH 맵이 있습니다.

  • 서비스 풀: 하나 이상의 CRUSH 계층 구조는 서비스 풀 및 잠재적으로 데이터에 사용할 수 있습니다. 서비스 풀에는 .rgw.root 및 영역과 연결된 서비스 풀이 포함됩니다. 서비스 풀은 일반적으로 단일 CRUSH 계층 구조에 속하며 데이터 지속성에 복제를 사용합니다. 데이터 풀은 CRUSH 계층 구조를 사용할 수도 있지만, 일반적으로 이 풀은 데이터 지속성을 위해 삭제 코딩으로 구성됩니다.
  • 인덱스: CRUSH 계층 구조 SHOULD 는 하나 이상의 CRUSH 계층 구조가 SSD 또는 NVMe 드라이브와 같은 고성능 미디어에 매핑되는 인덱스 풀에 사용됩니다. 버킷 인덱스는 성능 병목이 될 수 있습니다. 이 CRUSH 계층 구조에서 SSD 또는 NVMe 드라이브를 사용하는 것이 좋습니다. Ceph OSD 저널에 사용되는 SSD 또는 NVMe 드라이브에서 인덱스용 파티션을 생성합니다. 또한 인덱스는 버킷 분할을 사용하여 구성해야 합니다.
  • 배치 풀: 각 배치 대상의 배치 풀에는 버킷 인덱스, 데이터 버킷 및 버킷 추가 기능이 포함됩니다. 이러한 풀은 별도의 CRUSH 계층 구조에 속할 수 있습니다. Ceph Object Gateway는 여러 스토리지 정책을 지원할 수 있으므로 스토리지 정책의 버킷 풀이 각각 최적화된 IOPS, 처리량 최적화 및 용량 최적화와 같은 다양한 사용 사례를 반영하여 다양한 CRUSH 계층 구조와 연결될 수 있습니다. 버킷 인덱스 풀 SHOULD 는 자체 CRUSH 계층 구조를 사용하여 버킷 인덱스 풀을 SSD 또는 NVMe 드라이브와 같은 고성능 스토리지 미디어에 매핑합니다.

2.6.1. CRUSH 루트 생성

관리 노드의 명령줄에서 각 CRUSH 계층 구조에 대한 CRUSH 맵에 CRUSH 루트를 생성합니다. 데이터 스토리지 풀도 제공할 수 있는 서비스 풀에는 CRUSH 계층 구조가 하나 이상 있어야 합니다. SHOULD 에는 버킷 인덱스 풀에 대한 CRUSH 계층이 하나 이상 있으며, SSD 또는 NVMe 드라이브와 같은 고성능 스토리지 미디어에 매핑됩니다.

CRUSH 계층 구조에 대한 자세한 내용은 Red Hat Ceph Storage Storage Strategies Guide 5 의 CRUSH 계층 구조를 참조하십시오.

CRUSH 맵을 수동으로 편집하려면 Red Hat Ceph Storage Storage Strategies Guide 5CRUSH 맵 편집 섹션을 참조하십시오.

다음 예에서 data0, data 1 및 data 2 라는 호스트는 동일한 물리적 호스트를 가리키는 CRUSH 맵에 있는 data0-sas-ssd, data0-index 등과 같은 확장 논리 이름을 사용합니다.

일반적인 CRUSH 루트는 저널의 SAS 드라이브 및 SSD로 노드를 나타낼 수 있습니다. 예를 들면 다음과 같습니다.

##
# SAS-SSD ROOT DECLARATION
##

root sas-ssd {
  id -1   # do not change unnecessarily
  # weight 0.000
  alg straw
  hash 0  # rjenkins1
  item data2-sas-ssd weight 4.000
  item data1-sas-ssd weight 4.000
  item data0-sas-ssd weight 4.000
}

버킷 색인의 CRUSH 루트 SHOULD 는 SSD 또는 NVMe 드라이브와 같은 고성능 미디어를 나타냅니다. OSD 저널을 저장하는 SSD 또는 NVMe 미디어에 파티션을 생성하는 것이 좋습니다. 예를 들면 다음과 같습니다.

##
# INDEX ROOT DECLARATION
##

root index {
  id -2    # do not change unnecessarily
  # weight 0.000
  alg straw
  hash 0  # rjenkins1
  item data2-index weight 1.000
  item data1-index weight 1.000
  item data0-index weight 1.000
}