5.2. 코드 프로필 삭제


Ceph는 프로필이 있는 삭제 코드된 풀 정의합니다. Ceph는 인출 코드된 풀 및 연결된 CRUSH 규칙을 생성할 때 프로필을 사용합니다.

Ceph는 클러스터를 초기화할 때 기본 삭제 코드 프로필을 생성하고 복제된 풀에서 두 개의 사본과 동일한 수준의 중복을 제공합니다. 그러나 스토리지 용량이 25% 더 적게 사용됩니다. 기본 프로필은 k=2m=2 를 정의합니다. 즉, Ceph는 4개의 OSD(k+m=4)에 오브젝트 데이터를 분산하고 Ceph는 데이터 손실 없이 이러한 OSD 중 하나를 손실할 수 있습니다.

기본 삭제 코드 프로필은 단일 OSD의 손실을 유지할 수 있습니다. 이는 크기가 2TB인 복제된 풀과 동일하지만 1TB의 데이터를 저장하는 데 1.5TB가 아닌 1.5TB가 필요합니다. 기본 프로필을 표시하려면 다음 명령을 사용합니다.

Copy to Clipboard Toggle word wrap
$ ceph osd erasure-code-profile get default
k=2
m=2
plugin=jerasure
technique=reed_sol_van

원시 스토리지 요구 사항을 늘리지 않고 중복성을 개선하기 위해 새 프로필을 생성할 수 있습니다. 예를 들어, k=8 m=4 인 프로필은 12개(k+m=12) OSD에서 오브젝트를 배포하여 4개의 (m=4) OSD의 손실을 유지할 수 있습니다. Ceph는 개체를 8 개의 청크로 분할하고 복구할 수 있도록 4 개의 코딩 청크를 계산합니다. 예를 들어 개체 크기가 8MB인 경우 각 데이터 청크는 1MB이고 각 코딩 청크의 크기는 데이터 청크와 크기가 1MB입니다. OSD 4개가 동시에 실패하더라도 오브젝트는 손실되지 않습니다.

프로필의 가장 중요한 매개 변수는 스토리지 오버헤드와 데이터 내구성을 정의하기 때문에 k,mcrush-failure-domain 입니다.

중요

풀을 생성한 후에는 프로필을 변경할 수 없으므로 올바른 프로필을 선택하는 것이 중요합니다. 프로필을 수정하려면 다른 프로필을 사용하여 새 풀을 생성하고 이전 풀에서 새 풀로 오브젝트를 마이그레이션해야 합니다.

예를 들어 원하는 아키텍처에서 스토리지 오버헤드가 40% 오버헤드인 두 개의 랙의 손실을 유지해야 하는 경우 다음 프로필을 정의할 수 있습니다.

Copy to Clipboard Toggle word wrap
$ ceph osd erasure-code-profile set myprofile \
   k=4 \
   m=2 \
   crush-failure-domain=rack
$ ceph osd pool create ecpool 12 12 erasure *myprofile*
$ echo ABCDEFGHIJKL | rados --pool ecpool put NYAN -
$ rados --pool ecpool get NYAN -
ABCDEFGHIJKL

기본 OSD는 NYAN 오브젝트를 4개의 (k=4) 데이터 청크로 나누고 두 개의 추가 청크(m=2)를 만듭니다. m 값은 데이터를 손실하지 않고도 동시에 손실될 수 있는 OSD 수를 정의합니다. crush-failure-domain=rack 은 두 개의 청크가 동일한 랙에 저장되지 않도록 CRUSH 규칙을 생성합니다.

코드 삭제
중요

Red Hat은 km 에 대한 다음과 같은 제조형 코딩 값을 지원합니다.

  • k=8 m=3
  • k=8 m=4
  • k=4 m=2
중요

OSD 수가 코딩 청크(m) 수와 동일한 경우 삭제 코딩 풀의 일부 배치 그룹은 불완전한 상태가 됩니다. 손실된 OSD 수가 m 보다 작으면 배치 그룹이 불완전한 상태가 되지 않습니다. 어떠한 경우에도 데이터 손실이 발생하지 않습니다. 배치 그룹이 불완전한 상태인 경우 복원된 풀의 min_size 를 임시로 줄이면 복구가 가능합니다.

5.2.1. OSD deletedsure-code-profile Set

새 삭제 코드 프로필을 생성하려면 다음을 수행합니다.

Copy to Clipboard Toggle word wrap
ceph osd erasure-code-profile set <name> \
         [<directory=directory>] \
         [<plugin=plugin>] \
         [<stripe_unit=stripe_unit>] \
         [<crush-device-class>]\
         [<crush-failure-domain>]\
         [<key=value> ...] \
         [--force]

다음과 같습니다.

디렉터리
설명
삭제 코드 플러그인이 로드된 디렉터리 이름을 설정합니다.
유형
문자열
필수 항목
아니요.
기본값
/usr/lib/ceph/erasure-code
plugin
설명
삭제 코드 플러그인을 사용하여 코딩 청크를 계산하고 누락된 청크를 복구합니다. 자세한 내용은 Erasure Code Plug-ins 섹션을 참조하십시오.
유형
문자열
필수 항목
아니요.
기본값
jerasure
stripe_unit
설명
스트라이프당 데이터 청크의 데이터 양입니다. 예를 들어 2개의 데이터 청크와 스트라이프_unit=4K 가 있는 프로필은 0-4K 범위를 청크 0, 4K-8K로 청크 1에 배치한 다음 청크 0에 8K-12K를 다시 설정합니다. 최상의 성능을 위해 4K 중 여러 개여야 합니다. 풀이 생성되면 모니터 구성 옵션 osd_pool_erasure_code_stripe_unit 에서 기본값을 가져옵니다. 이 프로필을 사용하는 풀의 스트라이프_width는 이 스트라이프_unit 을 곱한 데이터 청크 수입니다.
유형
문자열
필수 항목
아니요.
기본값
4K
crush-device-class
설명
hdd 또는 ssd 와 같은 장치 클래스입니다.
유형
문자열
필수 항목
없음
기본값
아니요, CRUSH는 클래스에 관계없이 모든 장치를 사용합니다.
crush-failure-domain
설명
호스트 또는 과 같은 실패 도메인.
유형
문자열
필수 항목
없음
기본값
host
key
설명
나머지 키-값 쌍의 의미는 삭제 코드 플러그인으로 정의됩니다.
유형
문자열
필수 항목
아니요.
--force
설명
동일한 이름으로 기존 프로필을 재정의합니다.
유형
문자열
필수 항목
아니요.

5.2.2. OSD 삭제-code-profile Remove

삭제 코드 프로파일을 제거하려면 다음을 수행합니다.

Copy to Clipboard Toggle word wrap
ceph osd erasure-code-profile rm <name>

풀에서 프로필을 참조하는 경우 삭제가 실패합니다.

주의

osd erasure-code-profile rm 명령을 사용하여 삭제 코드 프로필을 제거해도 삭제 코드 프로필과 관련된 관련 CRUSH 규칙이 자동으로 삭제되지는 않습니다. Red Hat은 ceph osd crush 규칙을 사용하여 관련 CRUSH 규칙을 수동으로 제거하여 예기치 않은 동작을 방지하기 위해 RULE_NAME 명령을 제거하는 것이 좋습니다.

5.2.3. OSD erasure-code-profile Get

삭제 코드 프로필을 표시하려면 다음을 수행합니다.

Copy to Clipboard Toggle word wrap
ceph osd erasure-code-profile get <name>

5.2.4. OSD monthssure-code-profile 목록

모든 삭제 코드 프로필의 이름을 나열하려면 다음을 수행합니다.

Copy to Clipboard Toggle word wrap
ceph osd erasure-code-profile ls
맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat, Inc.