0Pricing
DevOps Bootcamp · Ders

CI/CD'de Helm Grafikleri ve Kubernetes Manifestoları

Kubernetes dağıtımlarını Helm grafikleriyle paketleyip sürümleyin, yapılandırmayı her ortama göre şablonlayın ve grafik sürümlerinin GitHub Actions üzerinden yayımlanmasını otomatikleştirin.

CI/CD'de Helm Grafikleri ve Kubernetes Manifestoları, CoddyKit'te ücretsiz bir DevOps Bootcamp dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, DevOps Bootcamp öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. DevOps Bootcamp kursu toplamda 4 dersten oluşur.

Bildirim Dosyalarının Çoğalma Sorunu

Kubernetes'e dağıtım yapmak, çok sayıda YAML bildirimi yazmak anlamına gelir: dağıtımlar, hizmetler, ConfigMaps ve girişler. Bunları her ortam için kopyalamak kısa sürede yönetilemez hâle gelir.

Helm, bildirimleri yeniden kullanılabilir ve sürümlendirilmiş bir paket hâlinde paketleyerek bu sorunu çözer.

Helm Nedir

Helm, Kubernetes için paket yöneticisidir. Paket, şablonlaştırılmış bildirimler ile varsayılan değerlerden oluşan bir bütündür.

  • Chart.yaml — paket üstverileri ve sürümü
  • values.yaml — varsayılan yapılandırma
  • templates/ — bildirim şablonları

Paket Yapısı

Tipik bir paket dizini şöyle görünür. Helm, son Kubernetes YAML'ını üretmek için değerleri kullanarak şablonları işler.

mychart/
  Chart.yaml
  values.yaml
  templates/
    deployment.yaml
    service.yaml

Değerlerle Şablon Oluşturma

Şablonlar, values.yaml dosyasındaki değerleri alan yer tutucuları kullanır. Bu sayede tek bir şablon birçok ortama hizmet edebilir.

# templates/deployment.yaml
spec:
  replicas: {{ .Values.replicaCount }}
  image: {{ .Values.image.repository }}:{{ .Values.image.tag }}

Ortam Başına Değerler

Her ortam için ayrı bir değerler dosyası tutun ve bunu kurulum sırasında iletin. Hazırlık ortamı 1 kopya, üretim ortamı ise 5 kopya çalıştırabilir.

helm upgrade --install myapp ./mychart \
  -f values-prod.yaml \
  --namespace production

Kurulum ve Yükseltme

helm upgrade --install komutu eş işlemlidir: sürüm mevcut değilse kurar, mevcutsa yükseltir.

Bu tek komut, hem ilk hem de sonraki dağıtımlarda çalıştığı için CI/CD açısından idealdir.

CI'da Görüntü Etiketini Ayarlama

CI'da genellikle yeni oluşturulan görüntü etiketini (çoğu zaman işleme ait SHA'yı) --set kullanarak eklersiniz.

Bu, Kubernetes yayınını işlem hattınızın az önce oluşturduğu tam yapıtla ilişkilendirir.

  - run: |
      helm upgrade --install myapp ./mychart \
        --set image.tag=${{ github.sha }}

Paketleri Denetleme

Dağıtımdan önce paketi helm lint ile doğrulayın ve YAML veya şablon oluşturma hatalarını erkenden yakalamak için helm template ile işleyin.

  - run: helm lint ./mychart
  - run: helm template myapp ./mychart -f values-prod.yaml

Helm ile Geri Alma

Helm, her sürümü numaralandırılmış bir revizyon olarak izler. Bir dağıtımda sorun çıkarsa anında geri alabilirsiniz.

Bu yaklaşım, hızlı ve belirlenebilir olduğu için felaket kurtarma uygulamalarıyla iyi bir şekilde örtüşür.

helm history myapp
helm rollback myapp 3

Paketleme ve Yayımlama

Chart'lar, sürümlendirilmiş arşivler hâline getirilebilir ve tıpkı konteyner imajları gibi bir chart deposuna veya OCI kayıt deposuna gönderilebilir.

Bu sayede diğer ekipler chart'ınızı sürümüne göre kullanabilir.

helm package ./mychart
helm push myapp-1.2.0.tgz oci://registry.example.com/charts

Bir Helm Dağıtım İşi

Hepsini bir araya getirelim: kümeye kimlik doğrulaması yapın, Helm'i kurun, ardından yükseltme işlemini gerçekleştirin. Azure setup-helm action'ı, CLI'yi çalıştırıcıya kurar.

  - uses: azure/setup-helm@v4
  - run: |
      helm upgrade --install myapp ./mychart \
        -f values-prod.yaml \
        --set image.tag=${{ github.sha }} \
        --wait

Kısa Kontrol

CI/CD'de Helm anlayışınızı test edin.

Özet

Kubernetes uygulamalarını Helm ile dağıtmayı öğrendiniz.

  • Chart'lar, şablonlu bildirimleri ve values.yaml dosyasını paketler
  • Ortam başına değer dosyaları, hazırlık ve üretim ortamlarını yapılandırır
  • helm upgrade --install, CI dağıtımlarında kullanılan idempotent komuttur
  • Revizyonlar anında geri alma olanağı sağlar ve chart'lar da imajlar gibi yayımlanabilir

Helm, ham bildirimleri sürümlendirilmiş ve yeniden kullanılabilir sürümlere dönüştürür.

Sıkça Sorulan Sorular

“CI/CD'de Helm Grafikleri ve Kubernetes Manifestoları” dersi ücretsiz mi?

Evet — “CI/CD'de Helm Grafikleri ve Kubernetes Manifestoları” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve DevOps Bootcamp kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. DevOps Bootcamp kursu toplamda 4 dersten oluşur.

“CI/CD'de Helm Grafikleri ve Kubernetes Manifestoları” dersinde ne öğreneceğim?

Kubernetes dağıtımlarını Helm grafikleriyle paketleyip sürümleyin, yapılandırmayı her ortama göre şablonlayın ve grafik sürümlerinin GitHub Actions üzerinden yayımlanmasını otomatikleştirin. DevOps Bootcamp ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

DevOps Bootcamp öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te DevOps Bootcamp, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.

“CI/CD'de Helm Grafikleri ve Kubernetes Manifestoları” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu DevOps Bootcamp dersinde kod yazıp çalıştırabilir miyim?

Evet. Her DevOps Bootcamp dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Actions ile Docker Görüntüleri Oluşturma
  2. Görüntüleri Kayıt Depolarına Gönderme
  3. Actions ile Kubernetes'e Dağıtım
  4. CI/CD'de Helm Grafikleri ve Kubernetes Manifestoları
← DevOps Bootcamp Sayfasına Dön