CodeBlanks Logo Icon CodeBlanks

Custom resource

CRD'den özel kaynak oluşturmayı öğrenirsin.

Custom resource

CRD uygulandıktan sonra o türden nesneler (custom resource, CR) oluşturulur. apiVersion grup/sürüm, kind CRD'deki kind'dir:

apiVersion: ornek.com/v1
kind: Yedek
metadata:
  name: magaza-gece
  namespace: magaza
spec:
  veritabani: db
  takvim: "0 3 * * *"
  saklamaGun: 14
$ kubectl apply -f yedek.yaml
yedek.ornek.com/magaza-gece created
$ kubectl get yd -n magaza
NAME          AGE
magaza-gece   5s

Ek yazdırma sütunları

Varsayılan kubectl get çıktısında yalnızca NAME ve AGE vardır. CRD'ye additionalPrinterColumns eklenerek önemli alanlar tabloda gösterilir:

    - name: v1
      additionalPrinterColumns:
        - name: Veritabani
          type: string
          jsonPath: .spec.veritabani
        - name: Takvim
          type: string
          jsonPath: .spec.takvim

$ kubectl get yd -n magaza
NAME          VERITABANI   TAKVIM      AGE
magaza-gece   db           0 3 * * *   2m

Uygulama Bir Yedek oluştur

Bir Yedek nesnesinin YAML'ını yaz: apiVersion: ornek.com/v1, kind: Yedek; adı magaza-gece, namespace'i magaza; spec: veritabani: db, takvim: "0 3 * * *", saklamaGun: 14.

Başlangıç kodu

terminal
# buraya yaz

Örnek çözüm

terminal
apiVersion: ornek.com/v1
kind: Yedek
metadata:
  name: magaza-gece
  namespace: magaza
spec:
  veritabani: db
  takvim: "0 3 * * *"
  saklamaGun: 14

Beklenen çıktı

yedek.ornek.com/magaza-gece created

Soru ve cevaplar

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

1 CRD silinirse o türdeki tüm nesnelere ne olur?

  • default namespace'e taşınır
  • ConfigMap'e dönüşür
  • Hepsi silinir Doğru cevap
  • Kalır

Açıklama: CRD silmek geri alınamaz veri kaybıdır; üretimde dikkatle yapılır.

2 Özel kaynağın API sürümünü yaz.

Soru
apiVersion: ornek.com/____
kind: Yedek
Cevap
apiVersion: ornek.com/v1
kind: Yedek

Açıklama: apiVersion grup/sürüm biçimindedir.

3 Eşleştir.

Kavram Anlamı
apiVersion: ornek.com/v1 Grup ve sürüm
kind: Yedek CRD'deki kind
additionalPrinterColumns Tablo sütunları
jsonPath Gösterilecek alan

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