3.4. 배치 그룹 수
풀의 배치 그룹 수는 클러스터 피어링, 데이터 배포 및 재조정 방법에 중요한 역할을 합니다. 소규모 클러스터에서는 배치 그룹 수를 늘려 대규모 클러스터에 비해 성능 개선이 많지 않습니다. 그러나 동일한 OSD에 액세스하는 풀이 많은 클러스터는 Ceph OSD에서 리소스를 효율적으로 사용하도록 PG 수를 신중하게 고려해야 할 수 있습니다.
Red Hat은 OSD당 100개에서 200개의 PG를 권장합니다.
3.4.1. 배치 그룹 계산기 링크 복사링크가 클립보드에 복사되었습니다!
PG(배치 그룹) 계산기는 특정 사용 사례를 처리하는 배치 그룹 수를 계산합니다. PG 계산기는 Ceph Object Gateway와 같은 Ceph 클라이언트를 사용하는 경우 특히 유용하며 일반적으로 동일한 규칙(CRUSH 계층 구조)을 사용하는 풀이 있습니다. 소규모 클러스터의 배치 그룹 수 및 배치 그룹 수 계산에 있는 지침을 사용하여 PG를 수동으로 계산할 수 있습니다. 그러나 PG 계산기는 PG를 계산하는 데 선호되는 방법입니다.
자세한 내용은 Red Hat 고객 포털 의 풀 계산기당 Ceph PG(배치 그룹) 를 참조하십시오.
3.4.2. 기본 배치 그룹 수 구성 링크 복사링크가 클립보드에 복사되었습니다!
풀을 생성할 때 풀에 사용할 여러 배치 그룹도 생성합니다. 배치 그룹 수를 지정하지 않으면 Ceph는 기본값 8 을 사용하며 이는 허용되지 않을 수 있습니다. 풀의 배치 그룹 수는 늘릴 수 있지만 적절한 기본값도 설정하는 것이 좋습니다.
osd pool default pg num = 100 osd pool default pgp num = 100
osd pool default pg num = 100
osd pool default pgp num = 100
배치 그룹(total)과 오브젝트에 사용되는 배치 그룹 수(PG 분할에 사용됨)를 모두 설정해야 합니다. 이 둘은 동등해야 합니다.
3.4.3. 소규모 클러스터의 배치 그룹 수 링크 복사링크가 클립보드에 복사되었습니다!
소규모 클러스터는 많은 배치 그룹의 이점을 얻지 못합니다. OSD 수가 증가함에 따라 pg_num 및 pgp_num 에 대한 올바른 값을 선택하는 것이 클러스터의 동작에 중요한 영향을 미치고 문제가 발생할 때 데이터 확보에 큰 영향을 미치므로 더 중요합니다(즉, 심각한 이벤트가 데이터 손실을 초래할 가능성이 있음). 작은 클러스터가 있는 PG 계산기 를 사용하는 것이 중요합니다.
3.4.4. 배치 그룹 수 계산 링크 복사링크가 클립보드에 복사되었습니다!
50개 이상의 OSD가 있는 경우 리소스 사용량, 데이터 배포 및 배포 균형을 유지하기 위해 OSD당 약 50~100개의 배치 그룹을 사용하는 것이 좋습니다. OSD가 50개 미만인 경우 소규모 클러스터의 PG 개수 중에서 선택하는 것이 이상적입니다. 단일 개체 풀의 경우 다음 공식을 사용하여 기준을 가져올 수 있습니다.
(OSDs * 100)
Total PGs = ------------
pool size
(OSDs * 100)
Total PGs = ------------
pool size
여기서 풀 크기는 복제된 풀의 복제본 수 또는 경유 코딩 풀의 K+M 합계입니다( ceph osdperiodsure-code-profile get에 의해 반환됨).
그런 다음 Ceph 클러스터를 설계하여 데이터 배포, 데이터 배포를 극대화하고 리소스 사용량을 최소화할 수 있는 결과가 적합한지 확인해야 합니다.
결과는 두 가지의 가장 가까운 출력으로 반올림되어야 합니다. 반올림은 선택 사항이지만 placement groups 간에 오브젝트 수의 균형을 균등하게 조정하는 것이 좋습니다.
200개의 OSD가 있고 복제본 풀 크기가 3개인 클러스터의 경우 다음과 같이 PG 수를 추정합니다.
(200 * 100)
----------- = 6667. Nearest power of 2: 8192
3
(200 * 100)
----------- = 6667. Nearest power of 2: 8192
3
200개의 OSD에 걸쳐 8192개의 배치 그룹이 배포되어 OSD당 약 41개의 배치 그룹으로 평가됩니다. 또한 각 풀이 배치 그룹을 생성하므로 클러스터에서 사용할 풀 수를 고려해야 합니다. 적절한 최대 배치 그룹 수가 있는지 확인합니다.
3.4.5. 최대 배치 그룹 수 링크 복사링크가 클립보드에 복사되었습니다!
오브젝트 저장을 위해 여러 데이터 풀을 사용하는 경우, 적절한 총 배치 그룹에 도달할 수 있도록 풀당 배치 그룹 수와 OSD당 배치 그룹 수의 균형을 조정해야 합니다. 시스템 리소스를 부과하거나 피어링 프로세스의 속도가 너무 느려지지 않도록 OSD당 분산을 적절히 낮추는 것이 목표입니다.
10개의 풀로 구성된 예시적인 Ceph Storage 클러스터에서는 10개의 OSD에서 512개의 배치 그룹이 있는 풀로 구성된 총 5,120개의 배치 그룹이 10개의 OSD 또는 OSD당 512개의 배치 그룹이 있습니다. 하드웨어 구성에 따라 리소스가 너무 많이 사용되지 않을 수 있습니다. 반면, 512개의 배치 그룹이 포함된 풀을 각각 생성하는 경우 OSD는 각각 ~50,000개의 배치 그룹을 처리하고 더 많은 리소스가 필요합니다. OSD당 너무 많은 배치 그룹으로 작동하면 특히 재조정 또는 복구 중에 성능이 크게 저하될 수 있습니다.
Ceph Storage Cluster에는 OSD당 기본 최대 배치 그룹이 300개입니다. Ceph 구성 파일에서 다른 최대값을 설정할 수 있습니다.
mon pg warn max per osd
mon pg warn max per osd
Ceph Object Gateway는 10-15개의 풀로 배포되므로 OSD당 100개 미만의 PG를 사용하여 적절한 수에 도달하는 것이 좋습니다.