3.4. MCG Operator
MCG(Multicloud Object Gateway) Operator는 OpenShift Data Foundation Operator 및 Rook-Ceph 연산자와 함께 OpenShift Data Foundation의 운영자입니다. MCG Operator는 독립 실행형 운영자로 업스트림에서 사용할 수 있습니다.
MCG Operator는 다음과 같은 주요 기능을 수행합니다.
- OpenShift Data Foundation 내에서 MCG(Multicloud Object Gateway) 구성 요소를 제어하고 조정합니다.
- 개체 버킷 클레임, 버킷 클래스 및 백업 저장소와 같은 새 사용자 리소스를 관리합니다.
- 기본 기본 리소스를 생성합니다.
몇 가지 구성 및 정보는 OpenShift Data Foundation Operator를 통해 MCG Operator에 전달됩니다.
3.4.1. components
MCG Operator에는 하위 구성 요소가 없습니다. 그러나 이 루프는 제어되는 다양한 리소스에 대한 조정 루프로 구성됩니다.
MCG Operator에는 CLI(명령줄 인터페이스)가 있으며 OpenShift Data Foundation의 일부로 사용할 수 있습니다. 이를 통해 다양한 리소스를 생성, 삭제 및 쿼리할 수 있습니다. 이 CLI는 YAML 파일을 직접 적용하는 것과 달리 구성을 적용하기 전에 입력 종료 및 상태 검증 계층을 추가합니다.
3.4.2. 역할 및 리소스
MCG Operator는 CRD(사용자 정의 리소스 정의) 및 OpenShift Container Platform 엔터티를 조정합니다.
- 백업 저장소
- 네임스페이스 저장소
- bucket 클래스
- 오브젝트 버킷 클레임(OBC)
- NooBaa, Pod 상태 저장 세트 CRD
- Prometheus 규칙 및 서비스 모니터링
- HPA(수평 Pod 자동 스케일러)
백업 저장소
고객이 MCG 구성 요소에 연결된 리소스입니다. 이 리소스는 MCG에 프로비저닝된 버킷의 데이터를 그 위에 저장할 수 있는 기능을 제공합니다.
기본 백업 저장소는 OpenShift Container Platform이 실행 중인 플랫폼에 따라 배포의 일부로 생성됩니다. 예를 들어 OpenShift Container Platform 또는 OpenShift Data Foundation이 AWS(Amazon Web Services)에 배포된 경우 기본 백업 저장소인 AWS::S3 버킷이 생성됩니다. 마찬가지로 Microsoft Azure의 경우 기본 백업 저장소는 Blob 컨테이너입니다.
기본 백업 저장소는 OpenShift Container Platform과 함께 제공되는 클라우드 인증 정보 운영자의 CRD를 사용하여 생성됩니다. MCG에 추가할 수 있는 백업 저장소의 양에는 제한이 없습니다. 백업 저장소는 버킷 클래스 CRD에서 버킷의 다양한 정책을 정의하는 데 사용됩니다. 특정 OpenShift Data Foundation 버전의 설명서를 참조하여 지원되는 서비스 유형 또는 리소스 유형을 백업 저장소로 확인합니다.
네임스페이스 저장소
네임스페이스 버킷에 사용되는 리소스입니다. 배포 중에 기본값이 생성되지 않습니다.
BucketClass
새로 프로비저닝된 버킷의 기본 또는 초기 정책입니다. 다음 정책은 버킷 클래스로 설정됩니다.
- 배치 정책
버킷에 연결할 백업 저장소를 나타내며 버킷의 데이터를 작성하는 데 사용됩니다. 이 정책은 데이터 버킷과 캐시 정책에 따라 로컬 캐시 배치를 나타내는 데 사용됩니다. 배치 정책에는 다음 두 가지 모드가 있습니다.
- 확산됩니다. 정의된 백업 저장소 간의 데이터 제거
- 미러. 각 백업 저장소에서 전체 복제본 생성
- 네임스페이스 정책
- 집계 및 쓰기 대상에 사용되는 리소스를 정의하는 네임스페이스 버킷에 대한 정책입니다.
- 캐시 정책
- 버킷에 대한 정책으로, 허브(실제 소스)와 캐시 항목에 대한 TTL(TTL)을 설정합니다.
기본 버킷 클래스는 배포 중에 생성되며, 기본 백업 저장소를 사용하는 배치 정책으로 설정됩니다. 추가할 수 있는 버킷 클래스 수에는 제한이 없습니다.
지원되는 정책 유형을 확인하려면 특정 OpenShift Data Foundation 버전의 설명서를 참조하십시오.
오브젝트 버킷 클레임(OBC)
S3 버킷을 프로비저닝할 수 있는 CRD입니다. MCG를 사용하면 OBC에서 버킷의 초기 구성을 기록하도록 선택적 버킷 클래스를 수신합니다. 버킷 클래스를 제공하지 않으면 기본 버킷 클래스가 사용됩니다.
NooBaa, Pod 상태 저장 세트 CRD
DB Pod, 코어 Pod, 끝점과 같은 NooBaa 배포의 다양한 Pod를 제어하는 내부 CRD입니다. 이 CRD는 내부이므로 변경하지 않아야 합니다. 이 Operator는 다음 엔터티를 조정합니다.
- DB Pod SCC
- OpenShift Container Platform과 NooBaa 사용자 인터페이스 간의 SSO SSO SSO(Single Sign-On)를 허용하는 역할 바인딩 및 서비스 계정
- S3 액세스 경로
- OpenShift Container Platform에서 가져와 서명하고 S3 경로에 설정된 인증서
Prometheus 규칙 및 서비스 모니터링
이러한 CRD는 MCG에서 지원하는 Prometheus 및 경고 규칙에 대한 스크랩 지점을 설정합니다.
HPA(수평 Pod 자동 스케일러)
MCG 엔드 포인트와 통합되어 있습니다. 끝점 Pod는 CPU 부족(S3 트래픽 마운트)에 따라 확장 및 축소됩니다.
3.4.3. 고가용성
Operator에서 제공하는 고가용성만 OpenShift Container Platform에서 실패한 Pod를 다시 예약한다는 것입니다.
3.4.4. 관련 로그 파일
NooBa operator의 문제를 해결하려면 다음을 확인하십시오.
- must-gather를 통해서도 사용할 수 있는 Operator Pod 로그입니다.
- 서로 다른 CRD 또는 엔티티 및 must-gather를 통해 사용 가능한 해당 상태
3.4.5. 라이프 사이클
MCG Operator는 OpenShift Data Foundation을 배포한 후 제거될 때까지 실행 및 조정합니다.