2.5. Ceph CRUSH 규칙 세트
Ceph는 풀에 CRUSH 규칙 세트를 할당합니다. Ceph 클라이언트가 풀에 데이터를 저장하거나 검색할 때 Ceph는 CRUSH 규칙 세트, 규칙 내에서 규칙 내의 규칙, 데이터를 저장 및 검색하는 규칙의 최상위 버킷을 식별합니다. Ceph에서 CRUSH 규칙을 처리하면 개체의 배치 그룹이 포함된 기본 OSD를 식별합니다. 이를 통해 클라이언트는 OSD에 직접 연결하고 배치 그룹에 액세스하여 개체 데이터를 읽거나 쓸 수 있습니다.
배치 그룹을 OSD에 매핑하기 위해 CRUSH 맵은 계층적인 버킷 유형 목록을 정의합니다. 버킷 유형 목록은 생성된 CRUSH 맵의 유형에
있습니다. 버킷 계층 구조를 생성하는 목적은 장애 도메인 및/또는 성능 도메인(예: 드라이브 유형, 호스트, 섀시, 랙, 전원 분배 단위, 포드, 행, 공간, 데이터 센터)을 통해 리프 노드를 분리하는 것입니다.
OSD를 나타내는 리프 노드를 제외하고 나머지 계층 구조는 임의적입니다. 기본 유형이 요구 사항에 맞지 않는 경우 관리자는 자체 필요에 따라 정의할 수 있습니다. CRUSH는 일반적으로 계층 구조에서 Ceph OSD 노드를 모델링할 수 있는 보관기 그래프를 지원합니다. 따라서 Ceph 관리자는 단일 CRUSH 맵에 여러 루트 노드가 있는 여러 계층을 지원할 수 있습니다. 예를 들어 관리자는 고성능을 위해 높은 비용의 SSD를 나타내는 계층 구조와 SSD의 중간 성능을 위해 SSD 저널이 있는 비용이 낮은 하드 드라이브의 별도 계층을 생성할 수 있습니다.