sunucu.com.tr

Kubernetes'te alan adı ve otomatik SSL ile uygulama yayınlama

Kümenizde giriş denetleyicisi (sınıf web) ve otomatik SSL (otomatik-ssl) hazır gelir. Bir uygulamayı https://uygulama.ornek.com.tr gibi bir adreste yayınlamak için üç şey yeter: uygulamanın kendisi, DNS kaydı ve bir Ingress tanımı.

Son güncelleme: 1 Kasım 2026

Rehberler ve içindekiler

Nasıl çalışır

  • Giriş denetleyicisi her düğümde 80 ve 443 portlarını dinler. Gelen isteği alan adına ve yola bakarak doğru Service'e iletir.
  • Ingress tanımına cert-manager.io/cluster-issuer: otomatik-ssl ek açıklamasını yazdığınızda, kümedeki sertifika sağlayıcısı alan adınız için ücretsiz bir SSL sertifikası ister, tls.secretName ile verdiğiniz Secret'a koyar ve süresi dolmadan yeniler.
  • Doğrulama HTTP üzerinden yapılır: sertifika otoritesi alan adınızın 80 portuna gelir. Bu yüzden DNS kaydı Ingress'ten önce ya da hemen sonra doğru düğümü göstermelidir.

1. Uygulamayı çalıştırın

Örnek olarak küçük bir web uygulamasını iki kopya çalıştırıp küme içinde 80 portundan açıyoruz. Kendi uygulamanızda imaj adını ve portu değiştirin.

Terminal

kubectl create deployment web --image=gcr.io/google-samples/hello-app:2.0 --replicas=2
kubectl expose deployment web --port=80 --target-port=8080
kubectl get pods -l app=web

İki pod Running olduğunda uygulama küme içinde web adıyla erişilebilir durumdadır.

2. Alan adını düğüme yönlendirin

Alan adınızın DNS yönetiminde (alan adını aldığınız yer ya da DNS sağlayıcınız) bir A kaydı açın. Değer olarak panelde küme sayfasındaki düğüm IP adreslerinden birini yazın.

AdTürDeğer
uygulamaADüğüm IP adresi (ör. yönetim ya da bir çalışan düğüm)

Birden çok düğümünüz varsa A kaydına birden çok düğüm IP'si ekleyebilirsiniz; istekler düğümler arasında dağılır. Bir düğümü çıkardığınızda IP'sini DNS'ten de silin.

Kayıt yayıldı mı?

nslookup uygulama.ornek.com.tr

Vekil (proxy) kapalı olsun

DNS sağlayıcınızda kayıt için vekil ya da CDN özelliği açıksa ilk sertifika doğrulaması başarısız olabilir. Sertifika alınana kadar kaydı yalnız DNS olarak bırakın.

3. Ingress ile yayınlayın

Ingress tanımında sınıf web, sertifika için otomatik-ssl kullanılır. Alan adını iki yerde (tls ve rules) aynı yazın.

Terminal

kubectl apply -f - <<'EOF'
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: web
  annotations:
    cert-manager.io/cluster-issuer: otomatik-ssl
spec:
  ingressClassName: web
  tls:
    - hosts: ["uygulama.ornek.com.tr"]
      secretName: web-tls
  rules:
    - host: uygulama.ornek.com.tr
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: web
                port:
                  number: 80
EOF

Komutu Windows'ta çalıştırıyorsanız YAML bölümünü ingress.yaml adıyla kaydedip kubectl apply -f ingress.yaml yazın.

4. Sertifikayı doğrulayın

Sertifika genellikle bir iki dakikada hazır olur. READY sütunu True olduğunda adres HTTPS ile açılır.

Terminal

kubectl get certificate web-tls
curl https://uygulama.ornek.com.tr

Hazır olmuyorsa ayrıntıya bakın: kubectl describe certificate web-tls ve kubectl get challenges çıktısı nedeni yazar.

BelirtiNeden ve çözüm
Doğrulama bekliyor, ilerlemiyorDNS kaydı henüz yayılmamış ya da başka bir IP'yi gösteriyor. nslookup ile kontrol edin, düzelince kendiliğinden yeniden denenir.
404 ya da varsayılan sayfaIngress'teki host ile tarayıcıdaki adres aynı değil, ya da ingressClassName: web eksik.
Çok sayıda başarısız denemeÜcretsiz sertifika otoritesinin deneme sınırları vardır. Önce DNS'i düzeltin, sonra tekrar deneyin; Ingress'i art arda silip açmayın.
Joker (*.ornek.com.tr) sertifikaHTTP doğrulaması joker sertifika vermez; her alt alan adını Ingress'e ayrı yazın.

Birden çok alan adı ve uygulama

Aynı Ingress'e birden çok host yazabilir ya da her uygulama için ayrı Ingress açabilirsiniz; hepsi aynı 80 ve 443 portlarını paylaşır. Sertifikayı her alan adı için ayrı Secret'ta tutmak, birini kaldırdığınızda diğerlerini etkilemez.

Yönetim panelleri gibi iç araçları internete açmak zorunda değilsiniz: kubectl port-forward ile yalnız kendi bilgisayarınızdan erişebilirsiniz.

Kümeniz yoksa

Giriş denetleyicisi ve otomatik SSL her kümede hazır gelir; ayrı kurulum ya da ücret yoktur.

  • Küme yönetimi ücretsiz; yalnız düğüm olarak kullanılan bulut sunucuların fiyatını ödersiniz.
  • Giriş denetleyicisi (sınıf web), otomatik SSL (otomatik-ssl), şifreli düğüm trafiği ve 12 saatte bir küme yedeği kurulumla gelir.
  • Tek sunucuyla başlar, büyüdükçe panelden çalışan düğüm eklersiniz.

Hazır yapılar ve canlı fiyat Kubernetes Kümesi sayfasında; kümeyi aynı sayfadaki hesaplayıcıdan oluşturursunuz.

Sık sorulan sorular

SSL sertifikası ücretli mi?

Hayır. otomatik-ssl ücretsiz bir sertifika otoritesinden alan adı doğrulamalı sertifika alır ve süresi dolmadan kendiliğinden yeniler.

Kendi satın aldığım sertifikayı kullanabilir miyim?

Evet. Sertifikayı kubectl create secret tls komutuyla bir Secret'a koyun ve Ingress'in tls bölümünde o Secret'ın adını verin; bu durumda otomatik-ssl ek açıklamasını yazmayın.

Alan adını hangi düğüme yönlendirmeliyim?

Herhangi birine; giriş denetleyicisi her düğümde çalışır ve isteği uygulamanın podlarına iletir. Birden çok düğüm IP'sini A kaydı olarak eklemek isteği düğümlere dağıtır.

Kubernetes'te Alan Adı ve Otomatik SSL · sunucu.com.tr