Operator nedir?
- Docker & Kubernetes kursu
- Uzman
- Ders 13/47
- 4 dk
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önetirYaygı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-systemUygulama 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
# buraya yazÖrnek çözüm
apiVersion: postgresql.cnpg.io/v1
kind: Cluster
metadata:
name: magaza-db
namespace: magaza
spec:
instances: 3
storage:
size: 20GiBeklenen çı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.
kind: Cluster
spec:
____: 3
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 |