CodeBlanks Logo Icon CodeBlanks

Operator nedir?

Operator pattern'ın insan bilgisini kodladığını öğrenirsin.

Operator nedir?

Operator, bir uygulamayı işletme bilgisini (kurulum, yedekleme, yükseltme, arıza geçişi) koda döken bir Kubernetes denetleyicisidir. Genellikle bir CRD ile birlikte gelir: kullanıcı yüksek seviyeli bir istek yazar ("3 kopyalı PostgreSQL, her gece yedek"), operator gereken StatefulSet, Service, Secret ve CronJob'ları oluşturup yönetir.

apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
  name: magaza-db
spec:
  instances: 3
  storage:
    size: 20Gi
# CloudNativePG operator'ü pod'ları, çoğaltmayı ve arıza geçişini yönetir

Yaygın operator'lar: CloudNativePG, Strimzi (Kafka), Prometheus Operator, cert-manager, ECK (Elasticsearch).

Operator kurmak

Operator'lar genellikle Helm ya da tek bir manifest ile kurulur; kurulum CRD'leri, operator Deployment'ını ve RBAC izinlerini getirir. Kurulumdan sonra operator'ün tanıttığı türlerle çalışılır:

kubectl apply --server-side -f https://raw.githubusercontent.com/cloudnative-pg/cloudnative-pg/release-1.24/releases/cnpg-1.24.1.yaml
kubectl get crds | grep cnpg
kubectl get deploy -n cnpg-system

Uygulama Operator'le veritabanı

CloudNativePG için bir Cluster YAML'ı yaz: apiVersion: postgresql.cnpg.io/v1; adı magaza-db, namespace'i magaza; spec.instances: 3; spec.storage.size: 20Gi.

Başlangıç kodu

terminal
# buraya yaz

Örnek çözüm

terminal
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
  name: magaza-db
  namespace: magaza
spec:
  instances: 3
  storage:
    size: 20Gi

Beklenen çıktı

cluster.postgresql.cnpg.io/magaza-db created
$ kubectl get cluster -n magaza
NAME        AGE   INSTANCES   READY   STATUS                     PRIMARY
magaza-db   2m    3           3       Cluster in healthy state   magaza-db-1

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Operator ile Helm chart arasındaki temel fark nedir?

  • Operator kurulumdan sonra da sürekli çalışıp uygulamayı yönetir; Helm yalnızca kurar/yükseltir Doğru cevap
  • Helm daha güçlüdür
  • Operator YAML kullanmaz
  • Fark yoktur

Açıklama: Arıza geçişi gibi işler sürekli gözlem ve tepki gerektirir.

2 Operator'ün yönettiği PostgreSQL küme sayısını belirt.

Soru
kind: Cluster
spec:
  ____: 3
Cevap
kind: Cluster
spec:
  instances: 3

Açıklama: CloudNativePG'de kopya sayısı instances'tır.

3 Operator'leri eşleştir.

Kavram Anlamı
CloudNativePG PostgreSQL
Strimzi Kafka
cert-manager Sertifikalar
ECK Elasticsearch

Uzman bölümündeki tüm dersler