검색

4.6. Ceph Object Gateway

download PDF

자동 생성된 내부 항목은 더 이상 admin topic list 명령에 표시되지 않습니다.

이전에는 사용자가 생성한 것보다 더 많은 주제를 볼 수 있었기 때문에 주제 목록 명령을 통해 자동 생성된 내부 주제가 사용자에게 노출되었습니다.

이번 수정을 통해 admin topic list 명령에 내부 자동 생성 항목이 표시되지 않으며 사용자는 예상되는 주제 목록만 볼 수 있습니다.

Bugzilla:1954461

더 이상 사용되지 않는 버킷 이름 필드가 topic list 명령에 표시되지 않습니다.

이전에는 가져오기 모드 알림(pubsub)의 경우 알림이 버킷에 저장되었습니다. 그러나 이 모드는 더 이상 사용되지 않지만 항목 목록 명령에 빈 버킷 이름 필드가 계속 표시됩니다.

이번 수정으로 빈 버킷 이름 필드가 제거됩니다.

Bugzilla:1954463

이제 라이프사이클 전환 시 알림이 전송됨

이전에는 전환 시 디스패치하는 논리(종료와 구별)가 누락되었습니다. 이로 인해 전환 시 알림이 표시되지 않았습니다.

이번 수정으로 새로운 논리가 추가되어 라이프사이클 전환 시 알림이 전송됩니다.

Bugzilla:2166576

RGWCopyObjRequest 가 수정되었으며 이름 변경 작업이 예상대로 작동합니다.

이전에는 zipper 변환 후 RGWCopyObjRequest 의 잘못된 초기화가 파일 이름 작업을 중단했습니다. 이로 인해 많은 rgw_rename() 시나리오가 소스 개체를 복사하지 못했으며 보조 문제로 인해 복사가 실패한 경우에도 소스도 삭제됩니다.

이번 수정으로 RGWCopyObjRequest 가 수정되고 다른 이름 변경 작업에 대해 여러 단위 테스트 사례가 추가되었습니다.

Bugzilla:2217499

Ceph Object Gateway에서 더 이상 불법으로 액세스할 수 없음

이전에는 Ceph Object Gateway 역할을 나타내는 변수가 초기화되기 전에 액세스되어 segfault가 발생했습니다.

이번 수정을 통해 작업이 다시 정렬되고 불법 액세스 권한이 없습니다. 역할은 필요에 따라 적용됩니다.

Bugzilla:2252048

이제 잘못된 CSV 오브젝트 구조별로 오류 메시지가 표시됩니다.

이전에는 닫히지 않은 double-quotes가 있는 CSV 파일에 어설션이 발생한 후 크래시가 발생했습니다.

이번 수정을 통해 잘못된 CSV 오브젝트 구조별로 표시되는 오류 메시지가 표시됩니다.

Bugzilla:2252396

사용자가 Ceph 대시보드에서 사용자 관련 정보를 쿼리할 때 '사용자를 찾을 수 없음' 오류가 더 이상 발생하지 않음

이전 버전에서는 Ceph 대시보드에서 대시보드가 식별되지 않은 전체 user_id 에 네임스페이스가 있어 Ceph Object Gateway에서 사용자 관련 정보를 검색할 수 없어 "사용자를 찾을 수 없음" 오류가 발생했습니다.

이번 수정을 통해 테넌트,네임스페이스, user_id 를 포함하는 완전히 구성된 사용자 ID가 반환되고 사용자 정보를 가져오기 위해 GET 요청이 admin ops로 전송되면 각 필드가 개별적으로 반환됩니다. 이제 최종 사용자가 Ceph Object Gateway에서 다른 사용자 관련 정보를 추가로 가져오는 데 사용할 수 있는 올바른 user_id 를 검색할 수 있습니다.

Bugzilla:2255255

Ceph Object 게이트웨이는 새 스트림 인코딩 양식의 올바르게 구성된 페이로드를 사용하여 요청을 전달합니다.

이전에는 Ceph Object 게이트웨이에서 STREAMING-AWS4-HMAC-SHA256-PAYLOADSTREAMING-UNSIGNED-PAYLOAD-TRAILER 인코딩 양식을 인식하지 못했습니다.

이번 수정을 통해 새로운 인코딩 양식에 대해 제공되는 새로운 후행 요청 서명이 구현되었는지 확인하고, 구문 분석하고, 적용할 수 있는 논리가 구현되었습니다. 이제 Ceph Object 게이트웨이에서 새 스트림 인코딩 양식의 올바르게 구성된 페이로드가 있는 요청을 전달합니다.

Bugzilla:2256967

이제 radosgw 관리자 버킷 및 버킷 reshard stat 계산에 대한 통계 계산이 올바르게 되어 있습니다.

이전 버전에서는 코드 변경으로 인해 radosgw-admin 버킷 검사 통계 계산 및 버전화되지 않은 오브젝트가 있는 경우 버킷 재하드 통계 계산이 올바르지 않았습니다.

이번 수정을 통해 계산이 수정되고 잘못된 버킷 통계 출력이 더 이상 생성되지 않습니다.

Bugzilla:2257978

다중 파트 업로드 실패 중에 tail 오브젝트가 더 이상 손실되지 않음

이전 버전에서는 다중 파트 업로드 중에 시간 초과와 같은 시나리오로 인해 파트 업로드가 실패하고 업로드가 다시 시작되면 첫 번째 시도의 정리가 후속 시도에서 tail 오브젝트를 제거했습니다. 이로 인해 일부 tail 오브젝트가 누락되어 결과 Ceph Object Gateway multipart 오브젝트가 손상되었습니다. HEAD 요청에 응답하지만 GET 요청 중에 실패합니다.

이번 수정으로 코드는 첫 번째 시도를 올바르게 정리합니다. 결과 Ceph Object Gateway multipart 개체가 더 이상 손상되지 않으며 클라이언트에서 읽을 수 있습니다.

Bugzilla:2262650

CompleteMultipartUpload 의 etag 값과 해당 알림의 etag 값이 있습니다.

이전에는 알림과 관련된 변경으로 다중 파트 업로드에 해당하는 오브젝트 처리로 인해 생성된 ETag가 포함되지 않았습니다. 이로 인해 CompleteMultipartUpload 및 해당 알림의 결과로 다중 파트 업로드를 완료하기 위해 ETags가 존재하지 않았습니다. (올바른 ETag가 계산되어 저장되었으므로 후속 작업에는 올바른 ETag 결과가 포함되어 있습니다.)

이번 수정으로 CompleteMultipartUpload 는 오브젝트를 새로 고치고 예상대로 출력합니다. CompleteMultipartUpload 의 etag 값과 해당 알림이 있습니다.

Bugzilla:2266579

swift를 통해 컨테이너(bucket)를 나열해도 더 이상 Ceph Object Gateway 충돌이 발생하지 않음

이전에는 swift-object-storage 호출 경로에 해당 버킷(zipper 백포트 문제)으로 오브젝트 처리를 업데이트하는 호출이 누락되었습니다. 이로 인해 swift를 통해 컨테이너(bucket)를 나열하면 동일한 버킷에 대해 S3 웹 사이트를 구성할 때 Ceph Object Gateway가 충돌하게 됩니다.

이번 수정을 통해 필요한 zipper 논리가 추가되어 충돌이 더 이상 발생하지 않습니다.

Bugzilla:2269038

라이프사이클 정책이 없는 버킷에서 라이프사이클이 충돌하지 않음

이전 버전에서는 라이프사이클 정책 없이 버킷에서 라이프사이클을 수동으로 처리하려고 하면 null 포인터 참조가 발생하여 radosgw-admin 프로그램이 충돌했습니다.

이번 수정으로 충돌을 방지하기 위해 처리에서 작동하기 전에 null 버킷 처리를 확인합니다.

Bugzilla:2270402

데이터 풀의 영역 세부 정보를 수정할 수 있음

rgw::zone_create() 함수는 영역 생성 시 기본 배치 대상 및 풀 이름을 초기화합니다. 이 기능은 이전에 exclusive=false 로 설정된 radosgw-admin 영역에 사용되었습니다. 그러나 영역 세트에서 는 STANDARD 스토리지 클래스의 data_pool을 수정할 수 없습니다.

이번 수정을 통해 이미 존재하고 데이터 풀의 영역 세부 정보를 예상대로 수정할 수 있는 경우 default-placement 대상을 덮어쓰지 않아야 합니다.

Bugzilla:2254480

부동 소수점 숫자에 대한 modulo 작업이 올바른 결과를 반환

이전에는 부동 소수점 숫자에 대한 modulo 작업이 잘못된 결과를 반환했습니다.

이번 수정으로 SQL 엔진은 부동 소수점에서 modulo 작업을 처리하고 올바른 결과를 반환하도록 향상되었습니다.

Bugzilla:2254125

SQL 문에서는 대소문자를 구분하지 않는 부울 식에 대한 결과를 올바르게 반환합니다.

이전에는 SQL 문에 구문의 일부에 대문자가 있는 부울 표현식이 포함되어 있어 잘못된 해석 및 잘못된 결과가 발생했습니다.

이번 수정을 통해 문 해석은 대소문자를 구분하지 않으므로 모든 경우에 대해 올바른 결과가 반환됩니다.

Bugzilla:2254122

SQL 엔진은 올바른 NULL 값을 반환합니다.

이전에는 SQL 문이 NULL의 형식으로 캐스팅되어 NULL을 반환하는 대신 잘못된 결과가 반환되었습니다.

이 수정으로 SQL 엔진은 NULL에서 캐스트를 식별하고 NULL을 반환합니다.

Bugzilla:2254121

ETags 값이 CompleteMultipartUpload 및 해당 알림에 표시됨

이전 버전에서는 알림과 관련된 변경 사항으로 인해 결과 ETag가 포함되지 않은 다중 파트 업로드에 해당하는 오브젝트 처리가 발생했습니다. 결과적으로 ETags가 CompleteMultipartUpload 및 해당 알림에 대해 존재하지 않았습니다. (올바른 ETag가 계산되어 저장되었으므로 후속 작업에는 올바른 ETag 결과가 포함되어 있습니다.)

이번 수정으로 CompleteMultipartUpload 는 오브젝트를 새로 고치고 예상대로 출력합니다. 이제 Etag 값이 CompleteMultipartUpload 및 해당 알림에 표시됩니다.

Bugzilla:2249744

오브젝트 이름에 임베디드 백슬래시(/)를 사용하여 워크로드를 cloud-sync로 전송해도 더 이상 동기화 실패가 발생하지 않음

이전에는 가상 디렉터리 경로가 사용된 경우 이름에 백슬래시(/)가 포함된 오브젝트가 포함된 경우 클라우드 동기화 중에 잘못된 URL로 인해 동기화 실패가 발생했습니다.

이번 수정을 통해 잘못된 이스케이프가 수정되고 오브젝트 이름에 백슬래시(/)가 포함된 워크로드를 예상대로 cloud-sync로 보낼 수 있습니다.

Bugzilla:2249068

부울 식을 포함하는 SQL 문에서는 부울 유형을 반환합니다.

이전에는 부울 표현식( projection)을 포함하는 SQL 문에서 부울 유형 대신 문자열 유형을 반환했습니다.

이번 수정을 통해 문 구문에 따라 문자열을 부울 표현식으로 식별하고 엔진은 부울 유형(true/false)을 성공적으로 반환합니다.

Bugzilla:2254582

이제 작업 스케줄러가 should_work 함수에서 다음 날짜를 고려합니다.

이전 버전에서는 라이프사이클이 현재 실행 중이어야 하는지 여부를 결정하는 should_work 함수에 사용된 논리가 다음 날짜 표기법을 고려하지 않았습니다. 결과적으로 AB < XY:TW-AB:CD"를 사용하면 사용자 정의 작업 시간 "XY:TW-AB:CD"가 수명 주기 처리를 중단하게 됩니다.

이번 수정으로 작업 스케줄러는 이제 다음 날짜를 고려하여 다양한 사용자 정의 라이프사이클 작업 일정이 예상대로 작동합니다.

Bugzilla:2255938

merge_and_store_attrs() 메서드로 인해 더 이상 속성 업데이트 작업이 실패하지 않음

이전에는 변경된 조정 및 변경되지 않은 버킷 인스턴스 속성을 처리하는 merge_and_store_attrs() 메서드의 버그로 인해 일부 속성 업데이트 작업이 자동으로 실패했습니다. 이로 인해 버킷 서브 세트에 대한 일부 메타데이터 작업이 실패했습니다. 예를 들어, 버킷 소유자 변경은 속도 제한이 설정된 버킷에서 실패합니다.

이번 수정으로 merge_and_store_attrs() 방법이 수정되어 영향을 받는 모든 시나리오가 올바르게 작동합니다.

Bugzilla:2262919

체크섬 및 잘못된 형식의 분쇄는 더 이상 충돌을 유발할 수 없습니다.

이전에는 java AWS4Test.testMultipartUploadWithPauseAWS4 중에 AWSv4ComplMulti 의 예외로 인해 체크섬 단축을 사용하는 클라이언트 입력에 의해 충돌이 발생했습니다.

이번 수정으로 예외 처리기가 do_aws4_auth_completion() 에 구현됩니다. 체크섬 및 잘못된 형식의 분쇄는 더 이상 충돌을 유발할 수 없습니다.

Bugzilla:2266092

후행 청크 경계 탐지 기능 개선

이전에는 0 길이의 후행 청크 경계 형식의 하나의 유효한 형식이 처리되지 않았습니다. 이로 인해 Ceph Object Gateway에서 후행 청크 시작을 올바르게 인식하지 못하여 403 오류가 발생했습니다.

이번 수정으로 개선된 후행 청크 경계 탐지가 구현되고 익명 액세스 사례에서 예기치 않은 403 오류가 더 이상 발생하지 않습니다.

Bugzilla:2266411

Kafka 메시지 및 유휴 시간 초과의 기본값이 더 이상 중단되지 않음

이전에는 Kafka 메시지 및 유휴 시간 초과의 기본값으로 인해 Kafka 브로커를 기다리는 동안 자주 중단되었습니다.

이번 수정을 통해 시간 초과가 조정되고 더 이상 중단되지 않습니다.

Bugzilla:2269381

버킷 태그 삭제가 더 이상 실패하지 않음

이전 버전에서는 RADOS SAL merge_and_store_attrs() 의 잘못된 논리로 인해 삭제된 속성이 구체화되지 않았습니다. 이는 DeleteLifecycle 에도 영향을 미쳤습니다. 결과적으로 순수 속성 삭제는 일부 코드 경로에 적용되지 않았습니다.

이번 수정을 통해 merge_and_store_attrs() 대신 버킷 태그를 저장하는 논리가 RADOS SAL put_info() 를 사용합니다. 이제 버킷 태그 지정이 예상대로 성공합니다.

Bugzilla:2271806

오브젝트 mtimeS3 PutACL 에서 진행되고 ACL 변경 복제가 올바르게 변경되었습니다.

이전에는 S3 PutACL 작업이 오브젝트 mtime 을 업데이트하지 않았습니다. 이로 인해 타임스탬프 기반 오브젝트 변경 검사에서 false를 잘못 반환했기 때문에 적용된 ACL 변경 사항이 복제되지 않았습니다.

이번 수정으로 오브젝트 mtime 은 항상 S3 PutACL 을 켜고 ACL이 올바르게 복제됩니다.

Bugzilla:2271938

모든 전환 사례에서 알림을 디스패치 가능

이전에는 전환 시 알림을 디스패치하는 논리가 풀 전환 시 알림이 전송되지 않았기 때문에 실수로 클라우드 전환 케이스로 범위가 지정되었습니다.

이번 수정을 통해 풀 전환 범위에 알림 디스패치가 추가되고 모든 전환 사례에서 알림을 디스패치할 수 있습니다.

Bugzilla:2279607

2106년 이후 RetainUntilDate 는 더 이상 잘리지 않으며 새로운 PutObjectRetention 요청에 대해 예상대로 작동합니다.

이전에는 2106년 이후 RetainUntilDate 를 지정하는 PutObjectRetention 요청이 줄어 개체 잠금 적용에 사용되는 이전 날짜가 생성되었습니다. 이는 'PutBucketObjectLockConfiguration' 요청에는 영향을 미치지 않았으며, 여기서 기간은 일 단위로 지정됩니다.

이번 수정으로 RetainUntilDate 가 이제 새 PutObjectRetention 요청에 대해 예상대로 작동하고 작동합니다. 이전에 존재하는 요청은 자동으로 복구되지 않습니다. 기존 요청을 수정하려면 x-amz-object-lock-retain-until-date 를 기반으로 HeadObject 요청을 사용하여 요청을 식별하고 RetainUntilDate.

자세한 내용은 S3 put 오브젝트 보존을 참조하십시오.

Bugzilla:2265890

버킷 라이프사이클 처리 규칙이 더 이상 중지되지 않음

이전에는 버킷에 대한 라이프사이클 규칙의 동시 제거와 관련된 논리 오류가 포함되어 있었습니다. 이로 인해 shard가 해당 shard의 처리를 중단하여 일부 버킷 라이프사이클 규칙이 처리되지 않는 상태가 될 수 있었습니다.

이번 수정을 통해 열거는 제거된 항목을 건너 뛰고 이 문제와 관련된 라이프사이클 처리가 해결됩니다.

Bugzilla:2270334

버전이 지정된 버킷에서 오브젝트를 삭제하면 통계가 일치하지 않음

현재 개체와 유효하지 않은 오브젝트가 혼합되어 버전화된 버킷으로 인해 오브젝트를 삭제하면 로컬 및 원격 사이트의 버킷 및 사용자 통계 불일치가 발생할 수 있습니다. 이는 두 사이트에서 오브젝트 누수를 유발하지 않으며 통계가 일치하지 않습니다.

Bugzilla:1871333

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.