5.3. OpenShift Container Platform의 Operator

Operator는 OpenShift Container Platform의 가장 중요한 구성 요소 중 하나입니다. Operator는 컨트롤 플레인에서 서비스를 패키징, 배포 및 관리하는 기본 방법입니다. 또한 사용자가 실행하는 애플리케이션에 이점을 제공할 수 있습니다.

Operator는 kubectl 및 oc 명령과 같은 CLI 툴 및 Kubernetes API와 통합됩니다. 애플리케이션 모니터링, 상태 점검 수행, OTA(Over-The-Air) 업데이트 관리 및 애플리케이션이 지정된 상태로 유지되도록 하는 수단을 제공합니다.

Operator에서는 더 세분화된 구성 환경도 제공합니다. 글로벌 구성 파일을 수정하는 대신 Operator가 표시하는 API를 수정하여 각 구성 요소를 구성합니다.

CRI-O 및 Kubelet은 모든 노드에서 실행되므로 Operator를 사용하여 거의 모든 다른 클러스터 기능을 컨트롤 플레인에서 관리할 수 있습니다. Operator를 사용하여 컨트롤 플레인에 추가되는 구성 요소에는 중요한 네트워킹 및 인증 정보 서비스가 포함됩니다.

둘 다 유사한 Operator 개념 및 목표를 따르지만 OpenShift Container Platform의 Operator는 목적에 따라 두 개의 다른 시스템에서 관리합니다.

  • CVO(Cluster Version Operator)에서 관리하는 클러스터 Operator는 클러스터 기능을 수행하기 위해 기본적으로 설치됩니다.
  • OLM(Operator Lifecycle Manager)에서 관리하는 선택적 애드온 Operator는 사용자가 애플리케이션에서 실행할 수 있도록 액세스할 수 있습니다.

5.3.1. 클러스터 Operator

OpenShift Container Platform에서 모든 클러스터 기능은 일련의 기본 클러스터 Operator로 나뉩니다. 클러스터 Operator는 클러스터 전체 애플리케이션 로깅, Kubernetes 컨트롤 플레인 관리 또는 머신 프로비저닝 시스템과 같은 특정 클러스터 기능 영역을 관리합니다.

클러스터 Operator는 ClusterOperator 오브젝트로 표시되며, 클러스터 관리자는 관리 → 클러스터 설정 페이지에서 OpenShift Container Platform 웹 콘솔에서 볼 수 있습니다. 각 클러스터 Operator는 클러스터 기능을 결정하기 위한 간단한 API를 제공합니다. Operator는 해당 구성 요소의 라이프사이클 관리 세부사항을 숨깁니다. Operator는 단일 구성 요소 또는 수십 개의 구성 요소를 관리할 수 있지만 최종 목표는 항상 일반적인 작업을 자동화하여 운영 부담을 줄이는 것입니다.

5.3.2. Add-on 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를 관리하지 않습니다.

추가 리소스