3.3. Rook-Ceph Operator
Rook-Ceph Operator는 OpenShift Data Foundation에서 Ceph용 Rook operator입니다. Rook을 사용하면 OpenShift Container Platform에서 Ceph 스토리지 시스템을 실행할 수 있습니다.
Rook-Ceph Operator는 스토리지 클러스터를 자동으로 부트스트랩하고 스토리지 데몬을 모니터링하여 스토리지 클러스터가 정상인지 확인하는 간단한 컨테이너입니다.
3.3.1. components
Rook-Ceph Operator는 OpenShift Data Foundation 배포의 일부로 여러 구성 요소를 관리합니다.
- Ceph-CSI 드라이버
-
Operator는 두 드라이버 각각 RADOS 블록 장치(RBD) 및 Ceph 파일 시스템(CephFS) 및 두 드라이버 각각에 대한 볼륨 플러그인
데몬 세트를
포함하여 CSI 드라이버를 생성하고 업데이트합니다. - Ceph 데몬
- Mons
- 모니터(mons)는 Ceph의 핵심 메타데이터 저장소를 제공합니다.
- OSD
- 개체 스토리지 데몬(OSD)은 데이터를 기본 장치에 저장합니다.
- Mgr
- 관리자(mgr)는 메트릭을 수집하고 Ceph에 대한 기타 내부 기능을 제공합니다.
- RGW
- RADOS 게이트웨이(RGW)는 오브젝트 저장소에 S3 끝점을 제공합니다.
- MDS
- 메타데이터 서버(MDS)는 CephFS 공유 볼륨을 제공합니다.
3.3.2. 디자인 다이어그램
다음 이미지는 Ceph Rook이 OpenShift Container Platform과 통합하는 방법을 보여줍니다.
그림 3.3. Rook-Ceph Operator
OpenShift Container Platform 클러스터에서 Ceph를 실행하는 경우 OpenShift Container Platform 애플리케이션은 Rook-Ceph에서 관리하는 블록 장치 및 파일 시스템을 마운트하거나 오브젝트 스토리지에 S3/Swift API를 사용할 수 있습니다.
3.3.3. 역할
Rook-Ceph Operator는 스토리지 클러스터를 부트스트랩하고 모니터링하는 컨테이너입니다. 다음과 같은 기능을 수행합니다.
- 스토리지 구성 요소 구성 요소 자동화
- RADOS 스토리지 클러스터를 제공하기 위해 Ceph 모니터 Pod 및 Ceph OSD 데몬을 시작, 모니터링 및 관리합니다.
관리할 서비스를 실행하도록 포드 및 기타 아티팩트를 초기화합니다.
- 풀에 대한 CRD
- 오브젝트 저장소(S3/Swift)
- 파일 시스템
- Ceph mons 및 OSD를 모니터링하여 스토리지를 사용 가능하고 정상 상태로 유지합니다.
- 클러스터 크기에 따라 mon 구성을 조정하면서 Ceph mons 배치 배포 및 관리
- API 서비스에서 요청한 원하는 상태 변경 사항을 감시하고 변경 사항을 적용합니다.
- 스토리지 사용에 필요한 Ceph-CSI 드라이버 초기화
- 스토리지를 Pod에 마운트하도록 Ceph CSI 드라이버를 자동으로 구성
Rook-Ceph Operator 아키텍처
Rook-Ceph Operator 이미지에는 클러스터를 관리하는 데 필요한 모든 도구가 포함되어 있습니다. 데이터 경로에 대한 변경 사항은 없습니다. 그러나 Operator는 모든 Ceph 구성을 노출하지 않습니다. 배치 그룹 및 크러쉬 맵과 같은 많은 Ceph 기능은 사용자에게 숨겨져 있으며 물리적 리소스, 풀, 볼륨, 파일 시스템, 버킷 측면에서 사용자 환경이 향상되었습니다.
3.3.4. 리소스
Rook-Ceph Operator는 openshift-storage
네임스페이스에 생성하는 모든 리소스에 대한 소유자 참조를 추가합니다. 클러스터가 제거되면 소유자 참조에서 리소스가 모두 정리되었는지 확인합니다. 여기에는 configmaps
,시크릿
,서비스
,배포
,데몬 세트
등과 같은 OpenShift Container Platform 리소스가 포함됩니다.
Rook-Ceph Operator는 CR을 감시하여 CephCluster
,CephObjectStore
,CephFilesystem
및 CephBlockPool
를 포함하는 OpenShift Data Foundation에서 결정한 설정을 구성합니다.
3.3.5. 라이프 사이클
Rook-Ceph Operator는 Ceph 클러스터에서 다음 Pod의 라이프사이클을 관리합니다.
- Rook operator
- 클러스터 조정이 포함된 단일 Pod입니다.
- RBD CSI 드라이버
- 단일 배포로 관리하는 프로비저너 Pod 2개입니다.
-
daemonset
에서 관리하는 노드당 하나의 플러그인 Pod입니다.
- CephFS CSI 드라이버
- 단일 배포로 관리하는 프로비저너 Pod 2개입니다.
-
daemonset
에서 관리하는 노드당 하나의 플러그인 Pod입니다.
- 모니터 (mons)
각각 고유의 배포가 있는 세 개의 mon pod.
- 확장 클러스터
- 5개의 mon pod, 각각 다른 두 데이터 영역에 하나씩 중재자 영역과 두 개를 포함합니다.
- 관리자 (mgr)
클러스터용 단일 mgr 포드가 있습니다.
- 확장 클러스터
- mgr Pod는 두 개의 mgr pod (OpenShift Data Foundation 4.8로 시작)가 있으며 두 개의 비비트자 영역마다 하나씩 있습니다.
- 개체 스토리지 데몬(OSD)
- 클러스터에서 처음에 3개 이상의 OSD가 생성됩니다. 클러스터가 확장되면 더 많은 OSD가 추가됩니다.
- 메타데이터 서버(MDS)
- CephFS 메타데이터 서버에는 단일 포드가 있습니다.
- RADOS 게이트웨이(RGW)
- Ceph RGW 데몬에는 단일 Pod가 있습니다.