12.2. 샘플 삭제 코드 풀 생성
삭제 코딩 풀을 생성하고 배치 그룹을 지정합니다. 다른 프로필을 지정하지 않는 한 ceph osd pool create 명령은 기본 프로필로 erasure-coded 풀을 생성합니다. 프로필은 두 개의 매개 변수 k 및 m 을 설정하여 데이터 중복성을 정의합니다. 이러한 매개변수는 데이터 조각이 분할되고 코딩 청크 수가 생성되는 청크 수를 정의합니다.
가장 간단한 삭제 코딩 풀은 RAID5와 동일하며 최소 4개의 호스트가 필요합니다. 2+2 프로필을 사용하여 삭제 코드 풀을 생성할 수 있습니다.
프로세스
2+2 구성이 있는 4개의 노드에서 삭제 코딩된 풀에 대해 다음 구성을 설정합니다.
구문
ceph config set mon mon_osd_down_out_subtree_limit host ceph config set osd osd_async_recovery_min_cost 1099511627776중요이는 일반적으로 삭제 코딩된 풀에는 필요하지 않습니다.
중요비동기 복구 비용은 복제본의 뒤에 있는 PG 로그 항목 수와 누락된 오브젝트 수입니다.
osd_target_pg_log_entries_per_osd는30000입니다. 따라서 하나의 PG가 있는 OSD에는30000개의 항목이 있을 수 있습니다.osd_async_recovery_min_cost는 64비트 정수이므로 2+2 구성이 있는 EC 풀의 경우osd_async_recovery_min_cost값을1099511627776으로 설정합니다.참고4개의 노드가 있는 EC 클러스터의 경우 K+M 값은 2+2입니다. 노드가 완전히 실패하면 4개의 청크로 복구되지 않으며 3개의 노드만 사용할 수 있습니다.
호스트다운 시나리오에서mon_osd_down_out_subtree_limit값을 host로 설정하면 OSD가 표시되지 않으므로 데이터가 재조정되지 않고 노드가 다시 가동될 때까지 대기합니다.2+2 구성을 사용하는 삭제 코드 풀의 경우 프로필을 설정합니다.
구문
ceph osd erasure-code-profile set ec22 k=2 m=2 crush-failure-domain=host예
[ceph: root@host01 /]# ceph osd erasure-code-profile set ec22 k=2 m=2 crush-failure-domain=host Pool : ceph osd pool create test-ec-22 erasure ec22erasure-coded 풀을 생성합니다.
예
[ceph: root@host01 /]# ceph osd pool create ecpool 32 32 erasure pool 'ecpool' created $ echo ABCDEFGHI | rados --pool ecpool put NYAN - $ rados --pool ecpool get NYAN - ABCDEFGHI32는 배치 그룹의 수입니다.