[Kubernetes] Operator pattern
Updated:
개요
- https://kubernetes.io/ko/docs/concepts/extend-kubernetes/operator/
- Operator는 사용자 지정 리소스를 사용하여 어플리케이션 및 해당 구성 요소를 관리하는 Kubernetes의 소프트웨어 확장
- Operator는 Kubernetes 원칙, 특히 제어 루프를 따름
- Operator pattern은 서비스 또는 서비스 셋을 관리하는 운영자의 주요 목표를 포착하는 것을 목표
- Operator pattern은 Kubernetes 자체가 제공하는 것 이상의 작업을 자동화하기 위해 코드를 작성하는 방법을 포착
Kubernetes의 Operator
- Kubernetes는 자동화를 위해 설계
- Kubernetes의 Operator pattern 개념을 통해 Kubernetes의 코드를 수정하지 않고 컨트롤러를 하나 이상의 사용자 정의 리소스에 연결하여 클러스터의 동작을 확장
- Operator는 사용자 정의 리소스의 컨트롤러 역할을 하는 Kubernetes API의 클라이언트
OperatorHub
Custom Operator
예시
- Jaeger Operator를 설치하면 관련 CR이 등록되고 아래와 같은 yaml을 apply하여 Jaeger 설치
apiVersion: jaegertracing.io/v1 kind: Jaeger metadata: name: simplest