6.3. OpenShift Container Platform의 Operator
Operator는 OpenShift Container Platform의 가장 중요한 구성 요소 중 하나입니다. 컨트롤 플레인에서 서비스를 패키징, 배포 및 관리하는 데 선호되는 방법입니다. 또한 사용자가 실행하는 애플리케이션에 이점을 제공할 수 있습니다.
Operator는 Kubernetes API 및 kubectl
및 OpenShift CLI(oc
)와 같은 CLI 툴과 통합됩니다. 애플리케이션을 모니터링하고, 상태 점검 수행, OTA(Over-the-Air) 업데이트를 관리하며 애플리케이션이 지정된 상태로 유지되도록 합니다.
Operator에서는 더 세분화된 구성 환경도 제공합니다. 글로벌 구성 파일을 수정하는 대신 Operator가 표시하는 API를 수정하여 각 구성 요소를 구성합니다.
CRI-O 및 Kubelet은 모든 노드에서 실행되므로 Operator를 사용하여 거의 모든 다른 클러스터 기능을 컨트롤 플레인에서 관리할 수 있습니다. Operator를 사용하여 컨트롤 플레인에 추가되는 구성 요소에는 중요한 네트워킹 및 인증 정보 서비스가 포함됩니다.
두 가지 모두 유사한 Operator 개념과 목표를 따르지만 OpenShift Container Platform의 Operator는 목적에 따라 두 가지 다른 시스템에서 관리합니다.
- 클러스터 Operator
- CVO(Cluster Version Operator)에 의해 관리되고 클러스터 기능을 수행하기 위해 기본적으로 설치됩니다.
- 선택적 애드온 Operator
- OLM(Operator Lifecycle Manager)에서 관리하며 사용자가 애플리케이션에서 실행할 수 있도록 할 수 있습니다. OLM 기반 Operator라고도 합니다.
6.3.1. 클러스터 Operator
OpenShift Container Platform에서 모든 클러스터 기능은 일련의 기본 클러스터 Operator 로 나뉩니다. 클러스터 Operator는 클러스터 전체 애플리케이션 로깅, Kubernetes 컨트롤 플레인 관리 또는 머신 프로비저닝 시스템과 같은 특정 클러스터 기능 영역을 관리합니다.
클러스터 Operator는 ClusterOperator
오브젝트로 표시됩니다. 이 오브젝트는 클러스터 관리자가 관리
추가 리소스
6.3.2. 애드온 Operator
OLM(Operator Lifecycle Manager) 및 OperatorHub는 Kubernetes 네이티브 애플리케이션을 Operator로 관리하는 데 도움이 되는 OpenShift Container Platform의 기본 구성 요소입니다. 함께 클러스터에서 사용 가능한 선택적 애드온 Operator를 검색, 설치 및 관리하기 위한 시스템을 제공합니다.
OpenShift Container Platform 웹 콘솔의 OperatorHub를 사용하여 클러스터 관리자 및 권한이 부여된 사용자는 Operator 카탈로그에서 설치할 Operator를 선택할 수 있습니다. OperatorHub에서 Operator를 설치한 후에는 전역 또는 특정 네임스페이스에서 사용자 애플리케이션에서 실행할 수 있도록 할 수 있습니다.
Red Hat Operator, 인증된 Operator, 커뮤니티 Operator가 포함된 기본 카탈로그 소스를 사용할 수 있습니다. 클러스터 관리자는 사용자 정의 Operator 세트를 포함할 수 있는 자체 사용자 정의 카탈로그 소스를 추가할 수도 있습니다.
개발자는 Operator SDK를 사용하여 OLM 기능을 활용하는 사용자 정의 Operator를 작성할 수 있습니다. 그런 다음 Operator를 번들로 제공하고 사용자 정의 카탈로그 소스에 추가할 수 있습니다. 이 소스는 클러스터에 추가하고 사용자가 사용할 수 있도록 합니다.
OLM은 OpenShift Container Platform 아키텍처를 구성하는 클러스터 Operator를 관리하지 않습니다.
추가 리소스
- OpenShift Container Platform에서 애드온 Operator를 실행하는 방법에 대한 자세한 내용은 OLM( Operator Lifecycle Manager) 및 OperatorHub 에 대한 Operator 가이드 섹션을 참조하십시오.
- Operator SDK에 대한 자세한 내용은 Operator 개발을 참조하십시오.