CodeBlanks Logo Icon CodeBlanks

Meydan okuma - CRD

Özel kaynak için bir CRD YAML yazarsın.

Meydan okuma: Yedek CRD'si

Bu meydan okumada platform ekibi için Yedek adlı bir özel kaynak türü tanımlayacaksın. Geliştiriciler şu nesneyi yazarak veritabanı yedeği isteyecek:

apiVersion: platform.sirket.com/v1
kind: Yedek
metadata:
  name: magaza-db
  namespace: magaza
spec:
  veritabani: veri-db
  zamanlama: "0 2 * * *"
  saklamaGun: 30

CRD'nin grubu platform.sirket.com, çoğul adı yedekler, kısa adı yd olacak; nesneler namespace'e bağlı.

Uygulama CRD başlığı ve adlar

CRD YAML'ının ilk kısmını yaz: apiextensions.k8s.io/v1, CustomResourceDefinition; adı yedekler.platform.sirket.com; spec altında group: platform.sirket.com, scope: Namespaced ve names altında kind: Yedek, plural: yedekler, singular: yedek, shortNames: [yd].

Başlangıç kodu

terminal
# buraya yaz

Örnek çözüm

terminal
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: yedekler.platform.sirket.com
spec:
  group: platform.sirket.com
  scope: Namespaced
  names:
    kind: Yedek
    plural: yedekler
    singular: yedek
    shortNames: [yd]

Beklenen çıktı

# crd.yaml (ilk kısım) hazır; sürüm tanımı sonraki adımda eklenecek

Uygulama CRD'yi kullan

Dört komut yaz: crd.yaml'ı uygula; CRD'nin kaydını gör (kubectl get crd yedekler.platform.sirket.com); yedek.yaml'ı uygula; magaza'daki yedekleri kısa adla listele (kubectl get yd -n magaza).

Başlangıç kodu

terminal
# buraya yaz

Örnek çözüm

terminal
kubectl apply -f crd.yaml
kubectl get crd yedekler.platform.sirket.com
kubectl apply -f yedek.yaml
kubectl get yd -n magaza

Beklenen çıktı

customresourcedefinition.apiextensions.k8s.io/yedekler.platform.sirket.com created
NAME                           CREATED AT
yedekler.platform.sirket.com   2026-11-03T08:12:40Z
yedek.platform.sirket.com/magaza-db created
NAME        AGE
magaza-db   5s

Soru ve cevaplar

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

1 Bu CRD'nin metadata.name değeri ne olmalıdır?

  • yedekler.platform.sirket.com Doğru cevap
  • yedek
  • Yedek.platform.sirket.com
  • platform.sirket.com

Açıklama: CRD adı çoğul ad ile grubun birleşimidir.

2 Nesneleri namespace'e bağla.

Soru
  scope: ____
Cevap
  scope: Namespaced

Açıklama: Namespaced ya da Cluster olabilir.

3 Eşleştir.

Kavram Anlamı
group platform.sirket.com
plural yedekler
shortNames yd
kind Yedek

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