8.0 릴리스 노트
Red Hat Ceph Storage 8.0 릴리스 노트
초록
보다 포괄적 수용을 위한 오픈 소스 용어 교체
Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 용어를 교체하기 위해 최선을 다하고 있습니다. 먼저 마스터(master), 슬레이브(slave), 블랙리스트(blacklist), 화이트리스트(whitelist) 등 네 가지 용어를 교체하고 있습니다. 이러한 변경 작업은 작업 범위가 크므로 향후 여러 릴리스에 걸쳐 점차 구현할 예정입니다. 자세한 내용은 CTO Chris Wright의 메시지를 참조하십시오.
Red Hat Ceph Storage 설명서에 대한 피드백 제공
문서 개선을 위한 의견을 보내 주십시오. Red Hat이 어떻게 이를 개선할 수 있는지 알려 주십시오. 이렇게 하려면 Bugzilla 티켓을 생성합니다.
+ . Bugzilla 웹 사이트로 이동합니다. . 구성 요소 드롭다운에서 문서를 선택합니다. Sub-Component 드롭다운 목록에서 적절한 하위 구성 요소를 선택합니다. 문서의 적절한 버전을 선택합니다. 요약 및 설명 필드에 개선을 위한 제안 사항을 입력하십시오. 관련 문서의 해당 부분에 대한 링크를 포함합니다. 선택 사항: 있는 경우 첨부 파일을 추가합니다. 버그 제출을 클릭합니다.
1장. 소개
Red Hat Ceph Storage는 Ceph 스토리지 시스템의 가장 안정적인 버전을 Ceph 관리 플랫폼, 배포 유틸리티 및 지원 서비스와 결합하는 대규모 확장이 가능한 오픈 소프트웨어 정의 스토리지 플랫폼입니다.
Red Hat Ceph Storage 문서는 https://access.redhat.com/documentation/en-us/red_hat_ceph_storage/8 에서 확인할 수 있습니다.
2장. 감사 인사
Red Hat Ceph Storage 버전 8.0에는 Red Hat Ceph Storage 팀의 많은 기여가 포함되어 있습니다. 또한 Ceph 프로젝트는 Ceph 커뮤니티의 개인 및 조직의 품질 및 기여 횟수가 크게 증가하고 있습니다. Red Hat Ceph Storage 팀의 모든 구성원, Ceph 커뮤니티의 개별 기여자 모두 다음과 같은 조직의 기여도에 대해 감사의 말씀을 전합니다.
- Intel®
- Fujitsu®
- UnitedStack
- Yahoo ™
- Ubuntu Kylin
- Mellanox ®
- CERN ™
- Deutsche Telekom
- Mirantis ®
- SanDisk ™
- SUSE ®
3장. 새로운 기능
이 섹션에는 Red Hat Ceph Storage 릴리스에 도입된 모든 주요 업데이트, 개선 사항 및 새로운 기능이 나열되어 있습니다.
3.1. Cephadm 유틸리티
Grafana, Prometheus 및 Alertmanager 모니터링 스택에 대해 고가용성을 배포할 수 있습니다.
이러한 향상된 기능을 통해 cephadm mgmt-gateway
서비스는 개별 인스턴스가 실패하는 경우에도 이러한 중요한 서비스가 원활하게 작동할 수 있으므로 더 나은 안정성을 제공하고 중단없는 모니터링을 보장합니다. 고가용성은 Ceph 클러스터의 상태 및 성능을 유지하고 모든 문제에 즉시 대응하는 데 중요합니다.
지속적인 중단 없는 작업에 고가용성을 사용하여 Ceph 클러스터의 안정성과 복원력을 개선합니다.
자세한 내용은 Ceph 관리 게이트웨이 사용을 참조하십시오.
Ceph Object Gateway용 EC 풀에 대한 새로운 간소화 배포
Ceph Object Gateway manager 모듈에서는 이제 rgw
서비스에 대한 풀을 생성할 수 있습니다. 풀 내에서 데이터 풀은 제공된 사양에 따라 속성을 수신할 수 있습니다.
이번 개선된 기능을 통해 Ceph Object Gateway에서 복제본 대신 EC를 사용하는 Ceph Object Gateway 풀을 원하는 사용자에게 배포가 간소화됩니다.
지정된 속성을 사용하여 데이터 풀을 생성하려면 다음 명령을 사용합니다.
ceph rgw realm bootstrap -i <path-to-spec-file> --start-radosgw
현재 이 사양의 EC 프로파일 필드는 k
,m
,pg_num
및 crush-device-class
속성만 사용합니다. 다른 속성이 설정되거나 풀 유형이 복제되면 키 값 쌍이 ceph osd pool create
명령에 전달됩니다. Ceph Object Gateway 영역의 다른 풀(예: 버킷 인덱스 풀)은 모두 기본 설정으로 복제된 풀로 생성됩니다.
자체 서명된 인증서는 Ceph Object Gateway 서비스 사양 내에서 cephadm에서 생성할 수 있습니다.
이번 개선된 기능을 통해 Ceph Object Gateway 서비스 사양 파일에 generate_cert: true
를 추가하면 cephadm 에서 Ceph Object Gateway 서비스에 대한 자체 서명 인증서를 생성할 수 있습니다. 이 작업은 수동으로 인증서를 생성하고 사양 파일에 삽입하는 대신 수행할 수 있습니다.
generate_cert: true
를 사용하면 Ceph Object Gateway 사양 파일에 포함된 zonegroup_hostnames
매개변수를 기반으로 하는 SAN 수정을 포함하여 Ceph Object Gateway 서비스에 대해 작동합니다.
다음은 Ceph Object Gateway 사양 파일의 예입니다.
service_type: rgw service_id: bar service_name: rgw.bar placement: hosts: - vm-00 - vm-02 spec: generate_cert: true rgw_realm: bar_realm rgw_zone: bar_zone rgw_zonegroup: bar_zonegroup ssl: true zonegroup_hostnames: - s3.example.com - s3.foo.com
이 사양 파일은 다음 출력을 포함하는 자체 서명된 인증서를 생성합니다.
X509v3 Subject Alternative Name: DNS:s3.example.com, DNS:s3.foo.com
Ceph Object Gateway 데몬 사용자의 rgw_run_sync_thread
를 'false'로 설정
이 향상된 기능을 통해 Cephadm은 Ceph Object Gateway 사양의 spec
섹션에서 disable_multisite_sync_traffic
를 'true'로 설정하여 해당 서비스의 Ceph Object Gateway 데몬의 경우 rgw_run_sync_thread
설정을 'false'로 설정합니다. 이렇게 하면 Ceph Object Gateway 데몬이 스레드를 생성하지 못하도록 데이터 및 메타데이터의 동기화를 처리합니다. Ceph Object Gateway 데몬 사용자의 rgw_run_sync_thread
를 'false'로 설정하는 프로세스가 이제 Ceph Object Gateway 사양 파일을 통해 자동화됩니다.
cephadm 은 HTTP 모드가 아닌 TCP에서 수신 서비스의 haproxy
데몬을 사용하여 Ceph Object Gateway를 통해 수신을 배포할 수 있습니다.
TCP 모드에서
를 설정하면 메시지 내용을 이해할 필요 없이 암호화된 메시지를 haproxy
haproxy
를 통해 Ceph Object Gateway로 직접 전달할 수 있습니다. 이를 통해 수신 및 Ceph Object Gateway 설정에 대한 엔드 투 엔드 SSL이 가능합니다.
이번 개선된 기능을 통해 사용자는 이제 수신 서비스가 아닌 rgw
서비스에 대한 인증서를 지정할 수 있습니다. HTTP 모드가 아닌 TCP 모드에서 해당 서비스에 대해 배포된 haproxy
데몬을 가져오려면 Ingress 사양에서 use_tcp_mode_over_rgw
를 True
로 지정합니다.
CephFS에 대해 생성된 고유한 사용자 ID가 포함된 새로운 cmount_path
옵션
이번 개선된 기능을 통해 cmount_path
옵션을 추가하고 각 Ceph 파일 시스템에 대해 고유한 사용자 ID를 생성할 수 있습니다. 고유한 사용자 ID를 사용하면 여러 Ganesha 내보내기에서 CephFS 클라이언트를 공유할 수 있습니다. 클라이언트 간 내보내기를 줄이면 단일 CephFS 클라이언트의 메모리 사용량도 줄어듭니다.
동일한 FSAL 블록을 공유하는 내보내기에는 단일 Ceph 사용자 클라이언트가 연결되어 있습니다.
이전 버전에서는 업그레이드된 클러스터에서 내보내기 생성에 "Error EPERM: Failed to update caps" 메시지와 함께 실패했습니다.
이번 개선된 기능을 통해 동일한 Ceph File System Abstraction Layer(FSAL) 블록을 공유하는 모든 내보내기에 연결된 단일 Ceph 사용자 클라이언트만 포함되도록 내보내기를 생성할 때 사용자 키 생성이 수정됩니다. 이번 개선된 기능을 통해 NFS Ganesha의 메모리 사용량 문제도 방지할 수 있습니다.
3.2. Ceph 대시보드
데몬이 중단된 시기에 대한 상태 경고 추가
이전에는 mgr
,mds
, rgw
데몬이 중단되었는지 알리는 상태 경고 및 경고가 없었습니다.
이번 개선된 기능을 통해 mgr
,mds
, rgw
데몬이 다운될 때 상태 경고가 생성됩니다.
Bugzilla:2138386
Ceph Object Gateway NFS 내보내기 관리를 Ceph 대시보드를 통해 사용 가능
이전에는 Ceph Object Gateway NFS 내보내기 관리를 명령줄 인터페이스를 통해서만 사용할 수 있었습니다.
이번 개선된 기능을 통해 Ceph 대시보드는 선택한 Ceph Object Gateway 사용자를 기반으로 생성된 내보내기 관리도 지원합니다.
버킷 편집에 대한 자세한 내용은 Ceph 대시보드에서 NFS Ganesha 내보내기 관리를 참조하십시오.
기본 영역, 영역 및 영역 그룹을 사용하여 향상된 다중 사이트 생성
이전에는 기본 영역, 영역 또는 영역 그룹이 있는 다중 사이트를 생성한 후 Ceph Object Gateway 서비스에 수동 재시작이 필요했습니다.
이번 개선된 기능을 통해 새로운 다중 사이트 복제 마법사가 도입되었으므로 필요한 모든 서비스 다시 시작이 자동으로 수행됩니다.
Ceph Dashboard에서 EC 8+6 프로필 지원
이번 개선된 기능을 통해 대시보드는 삭제 코딩 8+6 프로필을 지원합니다.
버킷 생성 중 다중 사이트 구성에서 버킷의 복제 활성화 또는 비활성화
Ceph Object Gateway 버킷 생성 양식에 새 복제 확인란이 추가됩니다. 이번 개선된 기능을 통해 다중 사이트 구성의 특정 버킷에서 복제를 활성화하거나 비활성화할 수 있습니다.
Ceph 대시보드를 통한 새 동기화 정책 관리
이전에는 Ceph 대시보드에서 동기화 정책을 관리할 수 없었습니다.
이번 개선된 기능을 통해 Object>Multi-site로 이동하여 Ceph 대시보드에서 직접 동기화 정책을 관리할 수 있습니다.
Ceph 대시보드의 서버 측 암호화 구성 환경 개선
이번 개선된 기능을 통해 탐색 메뉴에서 Objects>Configuration으로 이동하여 서버 측 암호화를 쉽게 찾을 수 있습니다.
생성 중 풀에서 미러링을 활성화하는 새로운 옵션
이전에는 풀을 생성하는 동안 풀에서 미러링을 활성화할 수 있는 옵션이 없었습니다.
이번 개선된 기능을 통해 풀 생성 양식에서 직접 미러링을 활성화할 수 있습니다.
중앙 집중식 로깅의 Ceph Object Gateway 운영 및 감사 로그의 출력 강화
이번 개선된 기능을 통해 Ceph 대시보드 중앙 집중식 로그에서 Ceph Object Gateway ops 및 audit log recollection을 확인할 수 있습니다.
Ceph 대시보드를 사용하여 삭제 코딩된 풀을 생성할 때의 경험 개선
이전에는 HDD, SSD 등과 같은 삭제 코딩(EC) 프로필을 생성할 때 Ceph 클러스터의 장치가 자동으로 선택되었습니다. EC 풀로 장치 클래스를 지정하면 배치 그룹이 하나만 있고 자동 스케일러가 작동하지 않았습니다.
이번 개선된 기능을 통해 장치 클래스를 수동으로 선택해야 하며 모든 장치를 자동으로 선택하고 사용할 수 있습니다.
Ceph 대시보드에서 향상된 다중 클러스터 보기
이전에는 다중 클러스터 설정에 연결된 클러스터에 대해 Ceph Cluster Grafana 대시보드가 표시되지 않고 대시보드를 통해 mTLS로 멀티 클러스터를 완전히 구성할 수 없었습니다.
이러한 향상된 기능을 통해 사용자는 두 클러스터에서 mTLS가 활성화된 다중 클러스터 설정을 연결할 수 있습니다. 또한 사용자는 특정 클러스터 행을 확장하여 개별 클러스터 Grafana 대시보드를 볼 수 있습니다. 다중 클러스터 행으로 이동 > 클러스터 관리.
이제 NFS 내보내기 생성 양식에서 CephFS 하위 볼륨 그룹 및 하위 볼륨을 직접 선택할 수 있습니다.
이전 버전에서는 CephFS NFS 내보내기를 생성할 때 NFS 내보내기를 생성하기 전에 기존 하위 볼륨 및 하위 볼륨을 알고 해당 정보를 양식에 수동으로 입력해야 했습니다.
향상된 기능을 사용하면 볼륨이 선택되면 관련 하위 볼륨 그룹과 하위 볼륨을 사용하여 Create NFS 내보내기 양식에서 원활하게 선택할 수 있습니다.
Ceph Object Gateway에 기본이 아닌 영역 동기화 상태가 표시됨
이전에는 기본 영역 동기화 상태만 Ceph 대시보드의 Object>Overview 동기화 상태에 표시되었습니다.
이번 개선된 기능을 통해 기본이 아닌 영역에 있는 경우에도 선택한 Object Gateway의 동기화 상태가 표시됩니다.
Grafana의 새로운 RGW 동기화 개요 대시보드
이번 릴리스에서는 Grafana의 새로운 RGW 동기화 개요 대시보드 내에서 shard당 시간에 대한 복제 차이점을 추적할 수 있습니다.
Ceph 대시보드를 통한 새로운 S3 버킷 라이프사이클 관리
이번 릴리스에서는 Ceph 대시보드의 Edit Bucket 양식을 통해 버킷 라이프사이클을 관리할 수 있습니다.
버킷 편집에 대한 자세한 내용은 대시보드에서 Ceph Object Gateway 버킷 편집을 참조하십시오.
3.3. Ceph 파일 시스템
snapdiff
API는 두 스냅샷 간의 파일 차이점만 동기화
이번 개선된 기능을 통해 snapdiff
API는 두 스냅샷 간의 파일 차이점만 동기화하는 데 사용됩니다. 차이점만 동기화하면 증분 스냅샷 동기화 중에 대량 복사를 방지할 수 있으므로 snapdiff
delta만 동기화되므로 성능이 향상됩니다.
데이터 복제 모니터링 논리에 대한 새 메트릭
이번 개선된 기능을 통해 복제 시작 및 엔드 알림에 대해 레이블이 지정된 추가 지표가 제공됩니다.
새 레이블이 지정된 지표는 last_synced_start
,last_synced_end
,last_synced_duration
, last_synced_bytes
입니다.
피어 상태의 출력 원격 메타데이터 정보 개선
이번 개선된 기능을 통해 원격 스냅샷에 잘못된 메타데이터가 있는 경우 피어 상태 출력에 state
,failed
, 'failure_reason'이 표시됩니다.
NFS-Ganesha async FSAL에 대한 새로운 지원
이번 개선된 기능을 통해 Ceph File System Abstraction Layer (FSAL) 또는 async가 도입되었습니다. FSAL은 스레드 사용률을 줄이고 성능을 개선하며 리소스 사용률을 줄입니다.
subvolumes에 대한 새로운 지원
이전에는 Ceph 스토리지 시스템에서 동일한 하위 볼륨 내에서 사용되는 혼합 프로토콜을 지원하지 않았습니다. 혼합 프로토콜을 사용하려고 하면 데이터가 손상될 수 있습니다.
이번 개선된 기능을 통해 하위 볼륨에 프로토콜 격리가 있습니다. 격리는 데이터 무결성 문제를 방지하고 SMB 및 NFS와 같은 다중 프로토콜 환경 관리의 복잡성을 줄입니다.
3.4. Ceph Object Gateway
이제 CopyObject
API를 사용하여 스토리지 클래스 간에 오브젝트를 복사할 수 있습니다.
이전에는 동일한 스토리지 클래스 내에서만 오브젝트를 복사할 수 있었습니다. 이로 인해 CopyObject
함수의 범위가 제한되었습니다. 사용자는 오브젝트를 다운로드한 다음 다른 스토리지 클래스에 다시 업로드해야 합니다.
이번 개선된 기능을 통해 서버 측에서 동일한 Ceph Object Gateway 클러스터 내의 모든 스토리지 클래스에 오브젝트를 복사할 수 있습니다.
Ceph Object Gateway의 읽기 작업 개선
이번 개선된 기능을 통해 Ceph Object Gateway에 읽기 선호도가 추가됩니다. 읽기 선호도를 사용하면 플래그를 추가하고 올바른 CRUSH 위치를 설정하여 가장 가까운 OSD에 대한 읽기 호출을 수행할 수 있습니다.
S3 요청은 종료 중 전송 중 더 이상 차단되지 않습니다.
이전에는 S3 요청에 대한 문제가 발생할 수 있었습니다. S3 요청이 종료되는 동안 대기하지 않고 전송 중 끊어지고 있습니다.
이번 개선된 기능을 통해 기본적으로 S3 요청을 구성하여 Ceph Object Gateway 프로세스를 완전히 종료하기 전에 rgw_exit_timeout_secs
매개변수가 완료될 때까지 기다릴 수 있습니다. Ceph Object Gateway는 무조건 종료되기 전에 모든 진행 중인 S3 요청이 완료될 때까지 최대 120초(구성 가능)까지 기다립니다. 이 기간 동안에는 새로운 S3 요청이 승인되지 않습니다.
컨테이너화된 배포에서 --stop-timeout=120
(또는 기본값이 아닌 경우 rgw_exit_timeout_secs
매개변수 값)의 추가 extra_container_args
매개변수 구성도 필요합니다.
copy-object
API를 사용하여 암호화된 오브젝트의 복사가 지원됨
이전에는 Ceph Object 게이트웨이에서 서버 측 암호화 지원 이후 copy-object API를 사용하여 암호화된 오브젝트의 복사가 지원되지 않았습니다.
이번 개선된 기능을 통해 복사 오브젝트 API를 사용하여 암호화된 오브젝트 복사가 지원되고 복사 오브젝트 작업을 사용하는 워크로드도 서버 측 암호화를 사용할 수 있습니다.
새로운 S3 추가 체크섬
이번 릴리스에서는 S3 추가 체크섬에 대한 지원이 추가되었습니다. 이 새로운 지원은 전송 중 및 미사용 데이터에 대한 향상된 데이터 무결성을 제공합니다. 추가 지원을 통해 SHA256과 같은 오브젝트 데이터의 강력한 체크섬 및 S3 작업에서 체크섬 어설션을 사용할 수 있습니다.
S3 GetObjectAttributes
API에 대한 새로운 지원
GetObjectAttributes
API는 S3 오브젝트에 대한 기존 및 비 기존 메타데이터를 반환합니다. 메타데이터 반환에는 원래 다중 파트 업로드로 저장된 오브젝트 및 오브젝트 부분에 대한 S3 추가 체크섬이 포함됩니다. GetObjectAttributes
는 AWS CLI에 노출됩니다.
여러 위치에서 Ceph Object Gateway 클러스터의 효율성 개선
이 릴리스에서는 가능한 경우 배치 그룹의 가장 가까운 물리적 OSD 인스턴스에서 데이터를 읽습니다.
결과적으로 로컬 읽기는 여러 물리적 위치에 걸쳐 있는 Ceph Object Gateway 클러스터의 효율성을 향상시킵니다.
이벤트 레코드에서 테넌트 소유자에 대해 관찰된 형식 변경 사항: ownerIdentity
-> principalId
이번 릴리스에서는 버킷 알림에서 ownerIdentity
내부의 principalId
에 이제 테넌트 ID가 접두사인 완전한 사용자 ID가 포함됩니다.
클라이언트 ID를 추가하고 Ceph Object Gateway 내의 기존 OIDC 공급자에서 지문 목록을 업데이트할 수 있습니다.
이전에는 사용자가 새 클라이언트 ID를 추가하거나 OIDC 공급자 내에서 지문 목록을 업데이트할 수 없었습니다.
이번 개선된 기능을 통해 사용자는 OIDC 공급자 내에서 새 클라이언트 ID를 추가하거나 지문 목록을 업데이트할 수 있으며 기존 지문 목록이 교체됩니다.
3.5. 다중 사이트 Ceph Object Gateway
새로운 다중 사이트 구성 헤더
이번 릴리스에서는 다중 사이트 구성으로 작성된 오브젝트에 대한 GetObject 및 HeadObject 응답에는 x-amz-replication-status: PENDING
헤더가 포함됩니다. 복제에 성공하면 헤더의 값이 COMPLETED
로 변경됩니다.
주제 및 알림 메타데이터에 대한 새로운 notification_v2 영역 기능
이번 개선된 기능을 통해 새로운 설치 배포(Greenfield)에 저장된 버킷 알림 및 항목에는 해당 정보가 영역 간에 동기화됩니다.
Red Hat Ceph Storage 8.0으로 업그레이드할 때 notification_v2 기능을 활성화하여 이 개선 사항을 추가해야 합니다.
3.6. RADOS
이제 클러스터에서 균형 잡힌 기본 배치 그룹을 확인할 수 있습니다.
이전 버전에서는 사용자는 오프라인 osdmaptool
으로만 우선 순위를 조정할 수 있었습니다.
이번 개선된 기능을 통해 upmap
밸런서에서 자동 밸런싱을 사용할 수 있습니다. 이제 사용자가 upmap-read' 또는 'read
모드 중 하나를 선택할 수 있습니다. upmap-read
모드는 동시에 upmap 및 읽기 최적화를 제공합니다. 읽기
모드를 사용하여 읽기를 최적화할 수 있습니다.
자세한 내용은 Ceph manager 모듈 사용을 참조하십시오.
인코딩된 풀 삭제에 대한 새로운 MSR CRUSH 규칙
MSR(Multi-step-retry)은 스토리지 장치에 데이터가 배포되는 방법을 정의하는 Ceph 클러스터의 CRUSH 규칙 유형입니다. MSR은 효율적인 데이터 검색, 분산 및 내결함성을 보장합니다.
이 향상된 기능을 통해 생성 중에 erasure-coded (EC) 풀에 대해 crush-osds-per-failure-domain
s 및 crush-num-failure-domains
를 지정할 수 있습니다. 이러한 풀은 새로 도입된 MSR crush 규칙을 사용하여 각 실패 도메인에 여러 OSD를 배치합니다. 예를 들어 14개의 OSD는 4개의 호스트로 나뉩니다.
자세한 내용은 Ceph 삭제 코딩을 참조하십시오.
세 개의 가용성 영역에 대한 새로운 일반 확장 클러스터 구성
이전에는 확장 모드를 활성화하지 않고 다른 버킷에서 작동하는 OSD가 충분하지 않은 경우 배치 그룹(PG)이 활성화되지 않도록 확장 피어 규칙을 적용할 수 없었습니다.
세 개의 가용성 영역에 대한 일반화된 확장 클러스터 구성을 사용하면 각 사이트마다 데이터 복사본을 두 개 보유하고 있는 데이터 센터 3개가 지원됩니다. 이렇게 하면 데이터 센터 중단 중에도 데이터에 액세스할 수 있고 다른 사이트에서 쓸 수 있는 상태로 유지됩니다. 이 구성을 사용하면 풀 복제 크기는 6이고 min_size 풀은 3입니다.
자세한 내용은 세 가지 가용성 영역에 대한 일반화된 확장 클러스터 구성을참조하십시오.
3.7. RADOS 블록 장치(RBD)
다른 클러스터에서 이미지 실시간 가져오기 지원 추가
이번 개선된 기능을 통해 다른 Ceph 클러스터에서 다양한 이미지 형식 또는 레이아웃 간에 마이그레이션할 수 있습니다. 실시간 마이그레이션이 시작되면 소스 이미지가 대상 이미지에 깊이 복사되어 가능한 모든 데이터 할당을 유지하면서 모든 스냅샷 기록을 가져옵니다.
자세한 내용은 이미지 실시간 마이그레이션을 참조하십시오.
사용자 유형 스냅샷이 아닌 이미지 복제에 대한 새로운 지원
이번 개선된 기능을 통해 비 사용자 유형의 스냅샷에서 Ceph Block Device 이미지 복제 지원이 추가되었습니다. rbd group snap create
명령을 사용하여 생성된 그룹 스냅샷에서 새 그룹을 복제하는 것은 rbd clone
명령에 추가된 --snap-id
옵션을 사용하여 지원됩니다.
자세한 내용은 블록 장치 스냅샷 복제를 참조하십시오.
Ceph Block Device에 새 명령이 추가되었습니다.
Ceph Block Device 사용을 개선하기 위해 두 개의 새 명령이 추가되었습니다. rbd group info
명령은 그룹에 대한 정보를 표시합니다. rbd group snap info
명령은 그룹 스냅샷에 대한 정보를 표시합니다.
NBD 내보내기에서 이미지를 실시간 가져오기 위한 새로운 지원
이번 개선된 기능을 통해 암호화가 포함된 이미지는 NBD 내보내기에서 실시간 마이그레이션을 지원합니다.
자세한 내용은 스트림을 참조하십시오.
3.8. RBD 미러링
rbd 미러 풀
의 새로운 선택적 --remote-namespace
인수
이번 개선된 기능을 통해 Ceph Block Device에는 rbd 미러 풀 enable
명령에 새로운 선택적 --remote-namespace
인수가 있습니다. 이 인수는 풀의 네임스페이스가 다른 클러스터의 동일한 이름의 풀에서 다른 네임스페이스에 미러링되는 옵션을 제공합니다.
4장. 버그 수정
이 섹션에서는 이 Red Hat Ceph Storage 릴리스에서 수정된 사용자에게 상당한 영향을 미치는 버그에 대해 설명합니다. 또한 섹션에는 이전 버전에서 발견된 수정된 알려진 문제에 대한 설명이 포함되어 있습니다.
4.1. Cephadm 유틸리티
original_weight
필드가 OSD 제거 대기열의 속성으로 추가됩니다.
이전에는 cephadm osd 제거 대기열에 original_weight에 대한 매개변수가 없었습니다. 결과적으로 OSD를 제거하는 동안 cephadm 모듈이 충돌했습니다. 이번 수정으로 original_weight 필드가 osd 제거 대기열의 속성으로 추가되고 OSD 제거 중에 cephadm이 더 이상 충돌하지 않습니다.
cephadm이 대규모 배포 중에 더 이상 오프라인으로 호스트를 표시하지 않음
이전에는 Cephadm에 대규모 배포에 짧은 명령 시간 초과가 있는 경우 호스트 확인 중에 호스트가 오프라인으로 표시되었습니다.
이번 수정을 통해 짧은 시간 초과가 제거됩니다. 이제 cephadm 은 mgr/cephadm/default_cephadm_command_timeout
설정에 지정된 타임아웃을 사용합니다.
ssh_keepalive_interval
간격과 ssh_keepalive_count_max
설정도 이제 mgr/cephadm/ssh_keepalive_interval
및 mgr/cephadm/ssh_keepalive_count_max
설정을 통해 구성할 수 있습니다.
이러한 설정을 사용하면 사용자가 Cephadm 관리 클러스터에서 호스트가 오프라인으로 표시되는 방식을 보다 효과적으로 제어할 수 있으며 대규모 배포 중에 Cephadm은 더 이상 오프라인으로 호스트를 표시하지 않습니다.
Bugzilla:2308688
사용자 정의 Webhook가 이제 custom-receiver
수신자 아래에 지정됩니다.
이전에는 Alertmanager 구성 파일의 기본
수신자 내에 사용자 정의 Alertmanager Webhook가 지정되었습니다. 이로 인해 경고가 다른 수신자와 일치하지 않는 한 사용자 정의 경고가 지정된 Webhook로 전송되지 않았습니다.
이번 수정을 통해 이제 사용자 정의 Webhook가 custom-receiver
수신자에 지정됩니다. 경고가 다른 수신자와 일치하더라도 이제 경고가 사용자 정의 Webhook로 전송됩니다.
Bugzilla:2313614
4.2. Ceph 대시보드
네트워크 보안 검사 중에 Cherry
Py가 더 이상 중단되지 않음
이전에는 cheroot 패키지의 버그로 인해 cherrypy
가 네트워크를 스캔한 일부 보안 검사 중에 중단되었습니다. 그 결과 Ceph 대시보드가 응답하지 않았으며 mgr 모듈을 다시 시작해야 했습니다.
이번 수정을 통해 cheroot 패키지가 업데이트되고 문제가 해결되었습니다.
이제 영역 스토리지 클래스 세부 정보에 올바른 압축 정보가 표시됨
이전에는 영역 세부 정보에 잘못된 압축 정보가 설정되었습니다. 결과적으로 스토리지 클래스 섹션의 영역 세부 정보에 잘못된 압축 정보가 표시되었습니다.
이번 수정을 통해 스토리지 클래스에 대한 정보가 수정되고 영역 세부 정보에 올바른 압축 정보가 표시됩니다.
이제 영역 스토리지 클래스 세부 정보 값이 올바르게 설정됨
이전에는 영역 세부 사항의 스토리지 클래스에 대해 잘못된 데이터 풀 값이 설정되었습니다. 결과적으로 여러 스토리지 클래스가 생성될 때 사용자 인터페이스에서 데이터 풀 값이 올바르지 않았습니다.
이번 수정을 통해 영역 세부 사항의 스토리지 클래스에 대해 올바른 값이 설정됩니다.
_nogroup
에 하위 볼륨이 없는 경우에도 Subvolume Group 목록에 _nogroup
이 나열됩니다.
이전 버전에서는 하위 볼륨을 복제하는 동안 _nogroup
에 하위 볼륨이 없는 경우 _nogroup
하위 볼륨이 나열되지 않았습니다. 결과적으로 사용자는 하위 볼륨 그룹으로 _nogroup
을 선택할 수 없었습니다.
이번 수정을 통해 하위 볼륨을 복제하는 동안 _nogroup
은 _nogroup
에 하위 볼륨이 없는 경우에도 Subvolume Group 목록에 나열됩니다.
이름에 $
가 포함된 올바른 UID가 대시보드에 표시됩니다.
이전에는 CLI를 통해 사용자를 생성할 때 이름에 $
가 포함된 잘못된 UID가 Ceph 대시보드에 표시되었습니다.
이번 수정을 통해 이름에 $
를 포함하는 사용자가 CLI를 사용하여 생성되는 경우에도 올바른 UID가 표시됩니다.
File 및 Object 의 NFS에 별도의 라우팅이 있음
이전에는 오브젝트의 File 및 NFS 모두에서 동일한 경로가 사용되었습니다. 이로 인해 File 및 Object 에서 NFS의 탐색 링크가 강조 표시되어 있으므로 사용성 관점에서 문제가 발생했습니다. 사용자가 보기, File 및 Object 둘 다에 대한 스토리지 백엔드를 선택해야 했습니다.
이번 수정으로 File 및 Object 의 NFS에는 별도의 라우팅이 있으며 사용자에게 스토리지 백엔드에 진입하도록 요청하지 않아 사용성이 향상됩니다.
의사 경로에 대한 검증 및 CephFS 경로를 추가하는 경우 NFS 내보내기 생성 중 추가됨
이전에는 NFS 내보내기를 생성하는 동안 psuedo 경로를 수동으로 입력해야 했습니다. 결과적으로 CephFS 경로를 검증할 수 없었습니다.
이번 수정을 통해 사용자가 경로를 입력할 수 있도록 pseudo path 필드가 비어 있으며 CephFS 경로는 선택한 하위 볼륨 그룹 및 하위 볼륨에서 업데이트된 경로를 가져옵니다. 이제 CephFS 경로에 유효하지 않은 값에 대한 검증도 추가되었습니다. 사용자가 CephFS 경로를 잘못된 값으로 변경하려고 하면 내보내기 생성이 실패합니다.
이제 내보내기를 생성할 때 사용자에게 경로를 입력하라는 메시지가 표시됩니다.
이전에는 내보내기 생성에 경로를 입력하라는 메시지가 표시되지 않았으며 기본적으로 /
가 입력되었습니다.
이번 수정으로 파일 시스템에서 직접 내보내기를 생성하려고 할 때 경로를 입력하라는 메시지가 표시됩니다. 잘못된 경로가 입력되면 생성이 허용되지 않습니다. 또한 CephFS 파일 시스템의 경로를 직접 입력할 때 "Export on CephFS volume '/' not allowed"라는 경고가 표시됩니다.
이름에 "." 및 "/"가 포함된 스냅샷을 삭제할 수 없습니다.
이름이 "."인 스냅샷을 생성하면 삭제할 수 없습니다.
이 문제를 해결하려면 사용자가 "." 및 "/"를 사용하여 스냅샷 이름을 생성하지 않도록 해야 합니다.
다중 사이트로 마이그레이션한 후 기간 업데이트 커밋이 추가되었습니다.
이전에는 다중 사이트 양식으로 마이그레이션을 완료한 후 기간 커밋이 수행되지 않았습니다. 결과적으로 구성 중인 엔드포인트에도 불구하고 끝점이 표시되지 않는 마스터 영역에 대한 경고가 표시됩니다.
이번 수정을 통해 다중 사이트 양식으로 마이그레이션한 후 기간 업데이트 커밋이 추가되고 경고가 수행되지 않습니다.
성능 통계 대기 시간 그래프에 올바른 데이터가 표시됨
이전에는 Object > Overview > Performance 통계의 대기 시간 그래프가 코드에서 NaN 값을 처리하는 방식으로 인해 데이터를 표시하지 않았습니다.
이번 수정을 통해 대기 시간 그래프에 예상대로 올바른 데이터가 표시됩니다.
이제 영역을 삭제할 때 " 영역 삭제" 대화 상자가 표시됩니다.
이전에는 "Delete realm"을 클릭할 때 손상된 것처럼 삭제 영역 대화 상자가 표시되지 않았습니다.
이번 수정을 통해 삭제 영역 대화 상자가 올바르게 로드되고 사용자가 영역을 삭제할 수 있습니다.
Ceph Object Gateway 데몬을 배포하기 전에 rgw_realm
,rgw_zonegroup
, rgw_zone
과 같은 구성 값을 설정합니다.
이전에는 Ceph Object Gateway 데몬을 배포한 후 rgw_realm
,rgw_zonegroup
, rgw_zone
과 같은 구성 값이 설정되었습니다. 이로 인해 Ceph Object Gateway 데몬이 지정된 구성이 아닌 기본 영역, 영역 그룹 및 영역 구성에 배포됩니다. 이를 위해서는 올바른 영역, 영역 그룹 및 영역 구성에 배포하려면 를 다시 시작해야 합니다.
이번 수정을 통해 Ceph Object Gateway 데몬을 배포하기 전에 구성 값이 설정되고 사양의 지정된 영역, 영역 그룹 및 영역에 배포됩니다.
4.3. Ceph 파일 시스템
cephfs-top
중 예외가 수정됨
이전 버전에서는 터미널에 공간이 충분하지 않은 경우 cephfs-top
명령에 실행할 충분한 공간이 없으며 예외가 발생했습니다.
이번 수정을 통해 크고 작은 창에서 cephfs-top
명령을 실행하는 동안 발생하는 예외가 수정되었습니다.
제한된 cephx
인증 정보가 더 이상 제거된 디렉터리 스냅샷에서 권한 검사에 실패하지 않음
이전에는 스냅샷을 통해 액세스한 연결되지 않은 디렉터리의 익명 경로에 경로 제한 검사가 구성되었습니다. 그 결과 디렉터리의 제거된 스냅샷에서 cephx
인증 정보가 제한된 경로의 권한 검사에 실패했습니다.
이번 수정을 통해 액세스 검사를 위해 구성된 경로는 스냅샷 시 디렉터리의 원래 경로에서 구성되며 액세스 검사가 성공적으로 전달됩니다.
Bugzilla:2293353
MDS에서 더 이상 불필요한 권한 부여 PIN을 요청하지 않음
이전에는 MDS에서 일부 워크로드에 대해 원격 권한 부여 PIN을 불필요하게 확보하여 메타데이터 작업의 속도가 느려졌습니다.
이번 수정으로 MDS에서 불필요한 권한 부여 PIN을 더 이상 요청하지 않아 일반 메타데이터 성능이 향상됩니다.
커널 드라이버의 잘못된 패치가 적절하게 처리되고 MDS가 더 이상 무한 루프에 들어가지 않습니다.
이전 버전에서는 커널 드라이버에 잘못된 패치로 인해 MDS를 통해 MDS를 대체로 사용할 수 없게 되므로 작업이 무한 루프 처리되었습니다.
이번 수정으로 커널 드라이버의 잘못된 메시지가 적절하게 처리되고 MDS가 더 이상 무한 루프에 들어가지 않습니다.
Bugzilla:2303693
이제 blocklisted 또는 fails 시 미러 데몬을 다시 시작할 수 있습니다.
이전에는 걸린 시간 차이로 인해 음수 초가 발생하고 임계값에 도달하지 않았습니다. 결과적으로 차단 목록 또는 실패 시 미러 데몬이 재시작되지 않았습니다.
이번 수정을 통해 시간 차이 계산이 수정되었습니다.
ceph fs status
명령의 JSON 출력이 이제 순위 필드를 올바르게 출력함
이전에는 ceph fs status
명령의 JSON 출력의 버그로 인해 standby-replay MDS 데몬의 순위 필드가 올바르지 않았습니다. {rank}-s
형식 대신 {rank}는 standby-replay가 다음에 있는 활성 MDS이며 임의의 {rank}가 표시되었습니다.
이번 수정으로 ceph fs status
명령의 JSON 출력은 '{rank}-s' 형식으로 standby-replay MDS의 순위 필드를 올바르게 출력합니다.
sync_duration
이 초 단위로 계산됩니다.
이전에는 동기화 기간이 밀리초 단위로 계산되었습니다. 다른 모든 계산이 몇 초 내에 있기 때문에 이 경우 사용성 문제가 발생합니다.
이번 수정으로 sync_duration
이 이제 초 단위로 표시됩니다.
공유 데이터 구조에 대한 액세스를 보호하기 위해 잠금이 구현됨
이전 버전에서는 잠금이 없는 공유 데이터 구조에 대한 액세스로 인해 애플리케이션이 CephFS 클라이언트 라이브러리를 사용하여 오류가 발생했습니다.
이번 수정을 통해 Ceph 클라이언트 라이브러리가 예상대로 작동하는 공유 데이터 구조 및 애플리케이션에 대한 액세스를 보호하기 위해 뮤지션이라는 잠금이 구현됩니다.
snap-schedule manager
모듈은 글로벌 mds_max_snaps_per_dir
설정 옵션을 올바르게 적용합니다.
이전에는 구성 값이 MDS에서 올바르게 검색되지 않았습니다. 결과적으로 snap-schedule manager
모듈은 mds_max_snaps_per_dir
설정을 적용하지 않고 기본 제한을 100으로 적용합니다.
이번 수정으로 구성 항목이 MDS에서 올바르게 가져옵니다. snap-schedule manager
모듈은 글로벌 mds_max_snaps_per_dir
구성 옵션을 올바르게 적용합니다.
CephFS FUSE 클라이언트가 지정된 mds auth caps
경로에 올바르게 액세스할 수 있음
이전 버전에서는 mds auth caps
FUSE 클라이언트가 mds auth caps
에 대해 rw
로 지정된 경우에도 특정 경로에 액세스할 수 없는 동안 경로를 구문 분석할 때 있었습니다.
이번 수정을 통해 mds auth caps
를 검증하는 동안 경로의 구문 분석 문제가 수정되었으며 경로에 예상대로 액세스할 수 있습니다.
4.4. Ceph Object Gateway
JSON 문의 SQL 쿼리가 더 이상 키
배열
또는 오브젝트
와 혼동되지 않음
이전 버전에서는 JSON 구조에 대한 SQL 문의 결과 키가
배열
또는 오브젝트
와 혼동되는 경우도 있었습니다. 그 결과 'venue 오브젝트의 키
값으로 id
를 정의하고 전체 JSON 오브젝트를 트래버스합니다.
이번 수정으로 SQL 엔진은 키
간에 배열
또는 개체
를 혼합하고 올바른 결과를 반환하는 잘못된 결과를 피하기 위해 수정되었습니다.
로컬 인증 엔진의 오류 코드가 올바르게 반환됩니다.
이전에는 인증 순서에서 마지막으로 로컬 인증 엔진을 지정하고 이전 인증 엔진을 적용할 수 없는 경우 잘못된 오류 코드가 반환되었습니다. 그 결과 잘못된 오류 코드가 반환되었습니다.
이번 수정을 통해 이전 외부 인증 엔진이 요청을 인증하는 데 적용되지 않고 올바른 오류 코드가 반환되는 경우 코드는 로컬 인증 엔진의 오류 코드를 반환합니다.
"Date"를 포함하는 규칙에 대해 라이프사이클 전환이 작동합니다.
이전 버전에서는 라이프사이클 전환 코드의 버그로 인해 "Date"가 포함된 규칙이 처리되지 않아 기준을 충족하는 오브젝트가 다른 스토리지 클래스로 전환되지 않았습니다.
이번 수정을 통해 "Date"가 포함된 규칙에 대해 라이프사이클 전환이 작동합니다.
이제 라이프사이클 전환 시 알림이 전송됨
이전에는 전환 시 디스패치하는 논리(종료와 구별)가 누락되었습니다. 이로 인해 전환 시 알림이 표시되지 않았습니다.
이번 수정으로 새로운 논리가 추가되어 라이프사이클 전환 시 알림이 전송됩니다.
IAM 정책 권한으로 배치 오브젝트 삭제가 허용됨
이전 버전에서는 명시적 또는 암시적 거부가 없는 경우 IAM 정책의 잘못된 평가로 인해 배치 삭제 프로세스 중에 다중 오브젝트 삭제 프로세스 중에 AccessDenied
출력이 반환되었습니다. AccessDenied
는 허용 권한이 있는 경우에도 발생했습니다. 결과적으로 AccessDenied
오류와 함께 일괄 삭제가 실패합니다.
이번 수정을 통해 IAM 정책이 활성화되면 정책이 예상대로 평가되고 배치 삭제가 성공합니다.
S3 오브젝트를 제거하면 스토리지 공간을 올바르게 확보할 수 있습니다.
이전 버전에서는 CopyObject를 제거할 때 크기가 4MB보다 크면 개체에서 해당 개체에서 사용한 모든 스토리지 공간을 제대로 해제하지 않았습니다. 이번 수정을 통해 소스 및 대상 처리는 다양한 RGWRados 호출 경로로 전달되고 스토리지가 예상대로 해제됩니다.
assume-roles의 할당량 및 속도 제한 설정은 임시 인증 정보가 있는 S3 요청에 적절히 적용됩니다.
이전 버전에서는 assume-role을 사용하는 사용자의 정보가 S3 요청을 처리하는 데 임시 인증 정보를 사용하는 경우 백엔드 저장소에서 제대로 로드되지 않았습니다. 결과적으로 사용자 할당량 또는 속도 제한 설정이 임시 인증 정보를 사용하여 적용되지 않았습니다.
이번 수정을 통해 임시 인증 정보를 사용하여 인증하는 경우에도 백엔드 저장소에서 정보가 로드되고 모든 설정이 성공적으로 적용됩니다.
이제 Keystone EC2 인증으로 사전 서명된 URL 허용
이전에는 올바르게 구성된 사전 서명된 HTTP PUT URL이 예기치 않게 실패했으며 403/Access Denied
오류가 발생했습니다. 이는 CORS가 포함된 HTTP OPTIONS 요청 처리 변경으로 인해 Keystone EC2(Swift S3 에뮬레이션)를 통해 사전 서명된 일부 URL에 대한 일부 사전 서명된 URL에 대한 암시적 AWSv4 요청 서명 계산이 변경되었기 때문입니다.
이번 수정을 통해 Keystone EC2 케이스에 대해 CORS HTTP OPTIONS의 새로운 워크플로우가 도입되고 사전 서명된 URL이 더 이상 예기치 않게 실패하지 않습니다.
radosgw-admin 알림 출력의 잘못된 형식의 JSON이 수정됨
이전 버전에서는 버킷 알림이 메타데이터 및 태그 필터로 구성되면 get/list 출력에 대한 radosgw-admin
알림의 출력이 잘못된 JSON이었습니다. 결과적으로 jquery와 같은 JSON 구문 분석기가 출력을 읽는 데 실패했습니다.
이번 수정으로 radosgw-admin
의 JSON 출력이 수정되었습니다.
이제 QAT 및 비QAT Ceph Object Gateway 데몬을 사용하여 클러스터를 구성할 수 있습니다.
이전에는 QAT를 새 설정에서만 구성할 수 있었습니다(Greenfield만 해당). 결과적으로 QAT Ceph Object Gateway 데몬은 비QAT(일반) Ceph Object Gateway 데몬과 동일한 클러스터에서 구성할 수 없었습니다.
이번 수정을 통해 QAT 및 비QAT Ceph Object Gateway 데몬을 동일한 클러스터에 구성할 수 있습니다.
Ceph Object Gateway는 체크섬 및 기타 가상 트래픽과 함께 minio SDK를 허용합니다.
이전에는 일부 minio 클라이언트 SDK 버전에는 multipart 오브젝트에 대한 추가 부분 번호가 누락되었습니다. 이로 인해 다중 업로드에 대한 예기치 않은 오류가 발생합니다.
이번 수정을 통해 부분 번호 접미사가 있거나 없는 체크섬이 허용됩니다. 또한 이 수정을 통해 체크섬이 부분적으로 업로드되지 않는 경우 init-multipart에서 체크섬 유형을 유추할 수 있습니다.
빈 인스턴스가 있는 최신이 아닌 오브젝트에 대한 라이프사이클 전환이 더 이상 실패하지 않음
이전 버전에서는 버킷 버전 관리를 활성화하면 원시 헤드/오브 오브젝트에서 인스턴스를 "null"으로 업데이트하여 이전 일반 오브젝트 항목이 versioned로 변환되었습니다. 이로 인해 인스턴스가 비어 있는 최신이 아닌 오브젝트에서 라이프사이클 전환이 실패했습니다.
이번 수정으로 버킷 인덱스 항목을 업데이트하는 동안 인스턴스를 비워 두도록 코드가 수정되고 버전이 지정된 모든 일반 항목에 대해 라이프사이클 전환이 작동합니다.
AST 구조 SQL 문으로 더 이상 크래시가 발생하지 않음
이전에는 Parquet 흐름과 결합된 잘못된 의미 체계로 인해 SQL 엔진에 의해 생성된 AST 생성이 잘못되어 문제가 발생하여 충돌이 발생했습니다.
이번 수정을 통해 AST 구조에 대해 더 많은 안전 검사가 수행되고 문 처리 시간이 수정되어 충돌을 방지할 수 있습니다.
버킷 정책 권한 부여가 예상대로 작동함
이전에는 버킷 소유자만 버킷에서 버킷 알림에 대한 구성을 설정, 가져오기 및 삭제할 수 있었습니다. 버킷 정책에 이러한 작업을 실행할 수 있는 다른 사용자에게 권한이 있는 경우에도 마찬가지입니다.
이번 수정으로 버킷 알림 구성에 대한 권한 부여가 예상대로 작동합니다.
버킷 정책 평가가 이제 예상대로 작동하고 정책에서 허용하는 작업에 대한 테넌트 간 액세스를 허용합니다.
이전 버전에서는 잘못된 값 버킷 테넌트로 인해 버킷 정책 평가 액세스 중에 버킷 정책 평가 액세스가 버킷 정책에서 명시적으로 허용된 경우에도 S3 작업에 대해 정의되었습니다. 결과적으로 버킷 정책 평가에 실패하고 버킷 정책에서 허용하는 것으로 표시된 S3 작업이 거부되었습니다.
이번 수정을 통해 백엔드 저장소에서 버킷 정책을 가져올 때 요청된 버킷 테넌트 이름이 올바르게 전달됩니다. 그러면 테넌트가 S3 작업 요청의 일부로 전달된 버킷 테넌트와 일치하며 S3 작업이 예상대로 작동합니다.
SSL 세션에서 여러 오브젝트 업로드에 대한 연결을 재사용할 수 있음
이전에는 SSL을 사용하여 연속 오브젝트를 업로드하는 동안 각 오브젝트에 대해 암호화 협상이 발생했습니다. 결과적으로 초당 전송률당 오브젝트 성능이 저하됩니다.
이번 수정으로 SSL 세션 재사용 메커니즘이 활성화되어 클라이언트가 기존 SSL 연결을 재사용하여 여러 오브젝트를 업로드할 수 있습니다. 이렇게 하면 각 오브젝트에 대해 SSL 연결을 다시 협상하는 성능 저하가 방지됩니다.
4.5. 다중 사이트 Ceph Object Gateway
두 번째 사이트에서 null 버전 ID가 삭제된 오브젝트
이전에는 null 버전 ID가 있는 오브젝트가 두 번째 사이트에서 삭제되지 않았습니다. 다중 사이트 환경에서 사이트 중 하나에 null 버전 ID가 있는 오브젝트를 삭제해도 두 번째 사이트의 개체가 삭제되지 않았습니다.
이번 수정으로 두 번째 사이트에서 null 버전 ID가 삭제된 오브젝트입니다.
보조 영역에 버킷 생성이 더 이상 실패하지 않음
이전 버전에서는 보조 영역이 위치 제약 조건을 사용하여 create_bucket
요청을 전달할 때 버킷에서 content_length
을 0이 아닌 값으로 설정했습니다. 그러나 보조 영역에서 전달되면 content_length
이 기본 영역에서 구문 분석되지 않았습니다. 결과적으로 create_bucket
작업을 실행하고 content_length
이 기존 페이로드 해시가 있는 0
이면 버킷을 복제하지 못했습니다.
이번 수정으로 CreateBucket
작업이 기본 영역으로 전달되고 버킷이 예상대로 생성될 때 요청 본문이 포함됩니다.
이제 CopyObject 요청이 예상대로 복제됨
이전에는 copy_object
가 기본적으로 소스 속성을 유지했습니다. 그 결과 RGW_ATTR_OBJ_REPLICATION_TRACE
를 확인하는 동안 대상 영역이 이미 있는 경우 NOT_MODIFIED
오류가 발송되었습니다. 이로 인해 복사된 오브젝트를 복제하지 못했습니다.
이번 수정으로 소스 오브젝트 RGW_ATTR_OBJ_REPLICATION_TRACE
속성이 copy_object
중에 제거되고 CopyObject
요청은 예상대로 복제됩니다.
4.6. RADOS
새로 추가된 용량이 더 이상 할당된 것으로 표시되지 않음
이전에는 새로 추가된 용량이 할당된 대로 자동으로 표시되었습니다. 그 결과 디스크 용량이 추가되어 사용 가능한 공간이 추가되지 않았습니다.
이번 수정을 통해 추가 용량은 사용 가능하며 사용 가능한 것으로 표시되고 재시작된 OSD는 새로 추가된 용량이 예상대로 추가 공간으로 인식됩니다.
Bugzilla:2296247
이제 BlueStore가 OSD에서 예상대로 작동함
이전에는 ceph-bluestore-tool show-label
이 마운트된 OSD에서 작동하지 않았으며 ceph-volume lvm zap
명령으로 OSD의 ID를 지울 수 없었습니다. 이번 수정을 통해 show-label
속성에 디스크에 대한 배타적 액세스 권한이 필요하지 않습니다. 또한 ceph-volume
명령에서 ceph-bluestore-tool zap
을 사용하여 OSD 장치를 지웁니다.
BlueStore에서 더 이상 레이블을 덮어쓰지 않음
이전에는 BlueFS가 레이블용으로 예약된 위치를 통해 기록되었습니다. 결과적으로 OSD가 예상대로 시작되지 않았습니다.
이번 수정을 통해 레이블 위치가 reserved로 표시되고 덮어쓰지 않습니다. BlueStore가 이제 마운트되고 OSD가 예상대로 시작됩니다.
rocksdb 파일은 이제 필요한 만큼의 공간을 차지합니다.
이전에는 RocksDB 파일이 비정상적으로 사전 할당되었지만 잘리지 않았습니다. 이로 인해 사용되지 않는 파일에 할당된 디스크 공간이 손실되었습니다.
이번 수정을 통해 사용되지 않은 할당을 다시 사용 가능한 풀로 이동하여 적절한 잘림이 구현됩니다.
충돌 또는 종료 테스트 중에 모니터가 더 이상 선택 해제되지 않음
이전에는 MonitorMap의 disallowed_leaders
속성이 stretch_mode
를 입력할 때만 조건부로 채워져 있었습니다. 그러나 방금 재조정한 모니터가 probing
상태에 있기 때문에 바로 stretch_mode
에 들어가지 않는 인스턴스가 있었습니다. 이로 인해 클러스터 전체의 모니터 간에 disallowed_leaders
설정이 일치하지 않았습니다. 이로 인해 모니터가 리더를 선택하지 못하고 선택 사항이 발생하여 Ceph가 응답하지 않습니다.
이번 수정을 통해 disallowed_leaders
속성을 채우기 위해 Monitor가 stretch_mode
에 있을 필요가 없습니다. 충돌 또는 종료 테스트 중에 모니터가 더 이상 선택 항목에 고정되지 않습니다.
4.7. RADOS 블록 장치(RBD)
삭제 I/O 요청을 처리할 때 librbd
가 더 이상 충돌하지 않음
이전 버전에서는 구현 결함으로 인해 저널링 기능이 활성화된 이미지에서 여러 RADOS 오브젝트를 중단하는 삭제 I/O 요청을 처리할 때 librbd
가 충돌했습니다. 이 작업은 rbd_skip_partial_discard 옵션 설정을
'false'로 설정하는 것이었습니다(기본값은 'true').
이번 수정을 통해 구현 결함이 수정되고 librbd
가 더 이상 충돌하지 않으며 해결 방법이 더 이상 필요하지 않습니다.
0 크기의 블록 장치 이미지가 발생하면 RBD du
명령이 더 이상 충돌하지 않음
이전 버전에서는 구현 결함으로 인해 0sized RBD 이미지가 발생하면 rbd du
명령이 충돌했습니다.
이번 수정을 통해 구현 결함이 수정되고 0 크기의 RBD 이미지가 발생하면 rbd du
명령이 더 이상 충돌하지 않습니다.
rbd_diff_iterate2()
API는 LUKS 암호화가 로드된 블록 장치 이미지에 대한 올바른 결과를 반환합니다.
이전 버전에서는 구현 결함으로 인해 rbd_diff_iterate2()
API에서 LUKS 암호화가 로드된 RBD 이미지에 대한 잘못된 결과를 반환했습니다.
이번 수정으로 rbd_diff_iterate2()
API는 LUKS 암호화가 로드된 RBD 이미지에 대한 올바른 결과를 반환합니다.
Bugzilla:2292562
암호화된 이미지 암호 해독은 가져오기 또는 실시간 마이그레이션 후 더 이상 건너뛰지 않습니다.
이전 버전에서는 구현 결함으로 인해 실시간 마이그레이션 또는 가져온 암호화된 이미지에서 읽을 때 암호 해독을 건너뛰었습니다. 결과적으로 실제 저장된 데이터(plaintext) 대신 암호화된 버퍼(ciphertext)가 사용자에게 반환되었습니다.
이번 수정을 통해 실시간 마이그레이션 또는 가져오는 암호화된 이미지에서 읽을 때 암호 해독이 더 이상 건너뛰지 않고 실제 저장된 데이터(plaintext)가 예상대로 사용자에게 반환됩니다.
Bugzilla:2303528
암호화 사양이 항상 마이그레이션 소스로 전파됨
이전 버전에서는 구현 결함으로 인해 실시간 마이그레이션 또는 가져오는 암호화된 복제 이미지를 열 때 암호화 사양이 마이그레이션 소스로 전파되지 않았습니다. 결과적으로 실시간 마이그레이션 또는 가져온 암호화된 복제 이미지가 열려 있지 않습니다. 사용자가 유일한 해결 방법은 암호화 사양을 중복하여 두 번 전달하는 것입니다.
이번 수정으로 암호화 사양은 항상 마이그레이션 소스로 전파됩니다.
Bugzilla:2308345
4.8. RBD 미러링
RBD-mirror
데몬은 오래된 PoolRe Cryostat 인스턴스를 올바르게 해석
합니다.
이전 버전에서는 구현 결함으로 인해 rbd-mirror
데몬이 미러 피어 구성을 새로 고칠 때 오래된 Pool
Re Cryostat 인스턴스를 올바르게 구성하지 않았습니다. 이로 인해 불필요한 리소스 소비와 Pool
Re Cryostat 인스턴스가 서로 경쟁하여 rbd-mirror
데몬 상태가 ERROR로 보고되고 경우에 따라 복제가 중단되었습니다. 복제를 다시 시작하려면 관리자가 rbd-mirror
데몬을 다시 시작해야 했습니다.
이번 수정을 통해 구현 결함이 수정되고 rbd-mirror 데몬이 오래된 Pool
Re Cryostat 인스턴스가 올바르게 표시됩니다.
4.9. NFS Ganesha
구성 다시 로드 프로세스에서 사용하는 모든 메모리가 릴리스됨
이전 버전에서는 구성 다시 로드 프로세스에서 사용하는 모든 메모리를 다시 로드하지 않아 메모리 공간이 늘어났습니다.
이번 수정을 통해 구성 다시 로드 프로세스에서 사용하는 모든 메모리가 해제되어 메모리 사용량이 줄어듭니다.
reap_expired_client_list
에서 더 이상 교착 상태를 유발하지 않음
이전에는 reap_expired_client_list
에서 교착 상태를 만들 수 있는 경우도 있었습니다. 이는 잠금을 얻기 위해 서로 대기 중인 두 스레드로 인해 발생합니다.
이번 수정을 통해 잠금 순서가 해결되고 교착 상태가 발생하지 않습니다.
파일 구문 분석 및 시작 시간이 크게 단축됨
이전에는 구문 분석된 토큰 관리가 부족하여 구성 파일 구문 분석 속도가 너무 느렸습니다.
이번 수정을 통해 토큰 조회가 AVL 트리로 교체되어 구문 분석 시간과 시작 시간이 줄어듭니다.
5장. 기술 프리뷰
이 섹션에서는 이 Red Hat Ceph Storage 릴리스에서 도입되거나 업데이트된 기술 프리뷰 기능에 대한 개요를 제공합니다.
기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원하지 않으며, 기능상 완전하지 않을 수 있어 프로덕션에 사용하지 않는 것이 좋습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능 지원 범위에 대한 자세한 내용은 https://access.redhat.com/support/offerings/techpreview/를 참조하십시오.
사용자는 이전 데이터를 AWS 버킷에 저장할 수 있습니다.
이번 릴리스에서는 라이프사이클 구성의 일부로 AWS(Amazon Web Services)와 같은 원격 클라우드 서비스로 데이터 전환을 활성화할 수 있습니다. 자세한 내용은 Amazon S3 클라우드 서비스로 데이터 이전 을 참조하십시오.
S3 선택 애플리케이션을 Apache Parquet 형식으로 확장
이번 릴리스에서는 CSV 및 Parquet에 대해 하나씩 CSV 및 Parquet용으로 두 개의 S3 선택 워크플로우가 있으며, 이는 CSV 및 Parquet 오브젝트에 S3 선택 작업을 제공합니다. 자세한 내용은 Red Hat Ceph Storage 개발자 가이드에서 S3 선택 작업을 참조하십시오.
버킷 세분화된 다중 사이트 동기화 정책 지원
Red Hat은 버킷 세분화된 다중 사이트 동기화 정책을 지원합니다. 자세한 내용은 Red Hat Ceph Storage Object Gateway 가이드 의 다중 사이트 동기화 정책 사용 섹션을 참조하십시오.
server-Side 암호화 지원
이번 릴리스에서는 Red Hat에서 Server-Side 암호화를 관리할 수 있는 지원을 제공합니다. 이를 통해 S3 사용자는 SSE-S3 관리형 암호화 키(SSE-S3)를 사용하여 Server-Side 암호화를 통해 고유한 키로 데이터를 보호할 수 있습니다.
사용자는 PutBucketEncryption S3
기능을 사용하여 오브젝트 암호화를 적용할 수 있습니다.
이전에는 데이터를 보호하기 위해 오브젝트 암호화를 적용하기 위해 사용자는 모든 경우에 불가능한 각 요청에 헤더를 추가해야 했습니다.
이번 릴리스에서는 PutBucketEncryption S3
작업을 지원하도록 Ceph Object Gateway가 업데이트되었습니다. 사용자는 각 요청에 헤더를 추가하지 않고 Ceph Object Gateway에서 PutBucketEncryption S3
기능을 사용할 수 있습니다. Ceph Object Gateway에서 처리합니다.
5.1. Cephadm 유틸리티
새로운 Ceph Management 게이트웨이 및 OAuth2 프록시 서비스(통합 액세스 및 고가용성 지원)
이번 개선된 기능을 통해 Ceph 대시보드에 Ceph 관리 게이트웨이(mgmt-gateway
)와 OAuth2 프록시 서비스(oauth2-proxy
)가 도입되었습니다. SSO(Single Sign-On)가 구성된 경우, Ceph 관리 게이트웨이(mgmt-gateway
) 및 OAuth2 프록시(oauth2-proxy
)를 사용하여 oauth2-proxy
를 통해 사용자를 구성된 ID 공급자(IdP)로 자동으로 전달합니다.
5.2. Ceph 대시보드
새 OAuth2 SSO
OAuth2 SSO는 oauth2-proxy
서비스를 사용하여 Ceph 관리 게이트웨이(mgmt-gateway
)에서 작동하므로 통합 액세스 및 향상된 사용자 환경을 제공합니다.
5.3. Ceph Object Gateway
Ceph Object Gateway에 대한 새로운 버킷 로깅 지원
버킷 로깅은 버킷에 대한 모든 액세스를 로깅하는 메커니즘을 제공합니다. 로그 데이터를 사용하여 버킷 활동을 모니터링하고, 무단 액세스를 감지하고, 버킷 사용에 대한 통찰력을 얻고, 로그를 버킷 변경의 저널로 사용할 수 있습니다. 로그 레코드는 별도의 버킷의 오브젝트에 저장되며 나중에 분석할 수 있습니다. 로깅 구성은 버킷 수준에서 수행되며 언제든지 활성화 또는 비활성화할 수 있습니다. 로그 버킷은 여러 버킷의 로그를 누적할 수 있습니다. 구성된 접두사
를 사용하여 로그를 다른 버킷과 구별할 수 있습니다.
성능상의 이유로 로그 레코드가 영구 스토리지에 기록되지만 로그 오브젝트는 구성 가능한 시간 후에만 또는 최대 오브젝트 크기에 128MB인 경우에만 로그 버킷에 표시됩니다. 로그 버킷에 로그 오브젝트를 추가하는 작업은 오브젝트에 더 이상 레코드가 없는 경우 구성된 시간이 경과한 후에도 로그 버킷 외부에 남아 있을 수 있도록 수행됩니다.
표준
및 저널
이라는 두 가지 로깅 유형이 있습니다. 기본 로깅 유형은 표준
입니다.
표준으로
설정하면 버킷 작업이 완료된 후 로그 레코드가 로그 버킷에 기록됩니다. 이로 인해 클라이언트를 표시하지 않고 로깅 작업이 실패할 수 있습니다.
journal
로 설정하면 버킷 작업이 완료되기 전에 레코드가 로그 버킷에 기록됩니다. 결과적으로 로깅 작업이 실패하고 오류가 클라이언트에 반환되는 경우 작업이 실행되지 않습니다.
다음 버킷 로깅 작업(활성화, 비활성화, 가져오기)을 완료할 수 있습니다.
IAM(Identity and Access Management)을 통한 사용자 계정 지원
이번 릴리스에서는 Ceph Object Gateway가 AWS Identity and Access Management(IAM)의 사용자와 유사한 사용자, 그룹 및 역할을 셀프 서비스 관리를 활성화하는 선택적 기능으로 사용자 계정을 지원합니다.
클라우드 복원 기능을 사용하여 원격 클라우드 엔드포인트로 다시 전환된 개체 복원
이번 릴리스에서는 클라우드 복원 기능이
구현됩니다. 이 기능을 사용하면 사용자는 S3 restore-object API를 사용하거나 읽기-스루 옵션을 사용하여 재구성하여 원격 클라우드 엔드포인트로 전환된 오브젝트를 Ceph Object 게이트웨이로 복원할 수 있습니다.
6장. 확인된 문제
이 섹션에서는 이 Red Hat Ceph Storage 릴리스에서 발견된 알려진 문제에 대해 설명합니다.
6.1. Cephadm 유틸리티
수신 사양에 haproxy_qat_support
설정을 사용하면 haproxy 데몬이 배포에 실패합니다.
현재는 haproxy_qat_support
가 존재하지만 Ingress 사양에서는 작동하지 않습니다. 이는 haproxy가 QAT 하드웨어가 있는 시스템에서 암호화 작업을 오프로드하여 성능을 개선할 수 있도록 하기 위해 추가되었습니다. 불완전한 코드 업데이트로 인해 추가된 함수가 의도한 대로 작동하지 않습니다. haproxy_qat_support
설정을 사용하는 경우 haproxy 데몬이 배포되지 않습니다.
이 문제를 방지하려면 이후 릴리스에서 수정될 때까지 이 설정을 사용하지 마십시오.
Cephadm이 Prometheus를 처음 배포할 때 PROMETHEUS_API_HOST
가 설정되지 않을 수 있습니다.
현재 Cephadm이 Prometheus를 처음 배포할 때 PROMETHEUS_API_HOST
를 설정하지 못할 수 있습니다. 이 문제는 --skip-monitoring-stack
을 사용하여 클러스터를 부트스트랩한 다음 나중에 Prometheus를 배포할 때 가장 일반적으로 표시됩니다. 이로 인해 일부 모니터링 정보를 사용할 수 없습니다.
이 문제를 해결하려면 ceph orch redeploy prometheus
명령을 사용하여 Prometheus 데몬을 재배포할 때 PROMETHEUS_API_HOST
를 설정합니다. 또한 ceph 대시보드 set-prometheus-api-host <value
> 명령을 사용하여 값을 수동으로 설정할 수 있습니다.
6.2. Ceph Manager 플러그인
경우에 따라 ceph-mgr
모듈을 일시적으로 사용할 수 없으며 명령이 실패합니다.
때때로 balancer 모듈은 ceph-mgr
재시작 후 로드하는 데 시간이 오래 걸리는 경우가 있습니다. 결과적으로 다른 ceph-mgr
모듈을 일시적으로 사용할 수 없게 되고 명령이 실패합니다.
예를 들면 다음과 같습니다.
[ceph: root@host01 /]# ceph crash ls Error ENOTSUP: Warning: due to ceph-mgr restart, some PG states may not be up to date Module 'crash' is not enabled/loaded (required by command 'crash ls'): use `ceph mgr module enable crash` to enable it
이 문제를 해결하려면 ceph-mgr
재시작 후 특정 ceph-mgr
모듈의 명령이 실패하고 ceph balancer status
명령을 사용하여 밸런서의 상태를 확인합니다. 예를 들어 업그레이드 중에 이러한 문제가 발생할 수 있습니다. * 밸런서가 이전에 활성 상태인 "active": true
이지만 "active": false
로 표시된 경우 다시 활성화될 때까지 상태를 확인한 다음 다른 ceph-mgr 모듈 명령을 재실행합니다. * 다른 경우에는 balancer ceph-mgr
모듈을 끕니다. 밸런서
를 해제한 후 다른 ceph-mgr
모듈 명령을 재실행합니다.
6.3. Ceph 대시보드
다중 사이트 구성 후에는 Ceph Object Gateway 페이지가 로드되지 않음
대시보드가 다중 사이트 구성 중에 새 영역에 대한 올바른 액세스 키와 시크릿 키를 찾을 수 없기 때문에 Ceph Object Gateway 페이지가 로드되지 않습니다.
이 문제를 해결하려면 ceph dashboard set-rgw-credentials
명령을 사용하여 키를 수동으로 업데이트합니다.
하위 볼륨 탭을 탐색할 때 CephFS 경로가 올바른 하위 볼륨 경로로 업데이트됨
CephFS의 NFS 내보내기 생성 양식에서 CephFS 경로는 하위 볼륨 대신 하위 볼륨 그룹 경로를 업데이트하고 있습니다.
현재는 해결방법이 없습니다.
다중 사이트 자동화 마법사에서는 Red Hat 및 IBM Storage Ceph 제품 모두에 대해 다중 클러스터를 언급합니다.
다중 사이트 자동화 마법사 내에서 멀티 클러스터 참조에 Red Hat 및 IBM Storage Ceph 제품이 모두 언급되어 있습니다. IBM Storage Ceph만 다중 클러스터를 지원합니다.
더 이상 사용되지 않는 iSCSI 기능이 Ceph 대시보드에 표시됩니다.
현재 iSCSI는 더 이상 사용되지 않는 기능이지만 Ceph 대시보드에 표시됩니다.
iSCSI 기능의 UI를 사용할 수 없습니다.
6.4. Ceph Object Gateway
Swift SLO로 업로드된 오브젝트는 익명 사용자가 다운로드할 수 없습니다.
Swift SLO로 업로드된 오브젝트는 익명 사용자가 다운로드할 수 없습니다.
현재 이 문제에 대한 해결방법이 없습니다.
일부 적격 읽기는 로컬에서 수행할 수 없습니다.
현재 RADOS 오브젝트가 최근 생성되고 경우에 따라 수정된 경우 로컬 읽기를 즉시 수행할 수 없습니다. 올바르게 구성 및 작동하는 경우에도 자격이 있는 모든 읽기를 로컬에서 수행할 수 있는 것은 아닙니다. 이는 RADOS 프로토콜의 제한 때문입니다. 테스트 환경에서는 많은 오브젝트가 생성되고 읽기-로컬 I/O의 표시되지 않는 샘플을 쉽게 생성할 수 있습니다.
6.5. 다중 사이트 Ceph Object Gateway
테넌트 사용자가 생성한 버킷이 올바르게 복제되지 않음
현재 테넌트 사용자가 생성한 버킷은 올바르게 복제되지 않습니다.
이 문제를 방지하려면 버킷 소유자는 테넌트된 사용자를 사용하여 보조 영역에서 버킷을 생성하지 않도록 해야 합니다. 대신 마스터 영역에서만 생성합니다.
Red Hat Ceph Storage 8.0을 실행하는 보조 영역이 사전8.0 메타데이터 마스터 영역에서 사용자 메타데이터를 복제하는 경우 해당 사용자의 액세스 키는 잘못 "활성"으로 표시됩니다.
현재 Red Hat Ceph Storage 8.0을 실행하는 보조 영역이 사전8.0 메타데이터 마스터 영역에서 사용자 메타데이터를 복제하는 경우 해당 사용자의 액세스 키는 잘못 "활성"으로 표시됩니다. 비활성 키는 요청을 인증하는 데 사용할 수 없으므로 해당 사용자는 보조 영역에 대한 액세스를 거부합니다.
이 문제를 해결하려면 다른 사이트보다 먼저 현재 기본 영역을 업그레이드해야 합니다.
6.6. RADOS
upmap-
및 읽기 밸런서 모드에서 배치 그룹이 축소되지 않음read
현재는 병합 보류 중인 배치 그룹(PG)에 대해 pg-upmap-primary
항목이 제대로 제거되지 않습니다. 예를 들어, 풀에서 대량 플래그가 제거되거나 풀의 PG 수가 감소하는 경우입니다. 결과적으로 PG 스케일 다운 프로세스가 중단되고 영향을 받는 풀의 PG 수가 예상대로 감소하지 않습니다.
이 문제를 해결하려면 영향을 받는 풀의 OSD 맵에서 pg_upmap_primary
항목을 제거하십시오. 항목을 보려면 ceph osd dump
명령을 실행한 다음 ceph osd rm-pg-upmap-primary PG_ID
를 실행하여 영향을 받는 풀의 PG에 연결합니다.
해결방법을 사용한 후 PG 스케일 다운 프로세스가 예상대로 재개됩니다.
7장. 비동기 에라타 업데이트
이 섹션에서는 z-stream 릴리스의 버그 수정, 알려진 문제 및 개선 사항에 대해 설명합니다.
7.1. Red Hat Ceph Storage 8.0z1
Red Hat Ceph Storage 릴리스 8.0z1이 공개되었습니다. 업데이트에 포함된 보안 업데이트 및 버그 수정 목록은 RHSA-2024:10956 및 RHSA-2024:10957 권고에 설명되어 있습니다.
8장. 소스
업데이트된 Red Hat Ceph Storage 소스 코드 패키지는 다음 위치에서 사용할 수 있습니다.
- Red Hat Enterprise Linux 9의 경우: https://ftp.redhat.com/redhat/linux/enterprise/9Base/en/RHCEPH/SRPMS/