Black Friday · 27 Kasım 2026

Seçili sertifikalarda %90'a varan indirim.

Çok değerli bir kariyer hedefi için tek seferlik fırsat. Sınırlı sayıda kupon, önce bekleme listesine.

Ücretsiz ders · CKA Hazırlık Programı · Modül 4: Servisler ve ağ

Trafiği Ağ Politikalarıyla Kapatmak

Politikasız her pod her podla konuşur. Ağ Politikası güvenlik duvarını ekler; bu ders tam gereken akışlara izin veren kuralları yazar, gerisinin kapalı olduğunu kanıtlar.

13 dk okuma

Kazanımlar

  • Varsayılan izin tabanını ve politikanın neyi değiştirdiğini açıklamak
  • Pod, ad alanı ve IP seçicili giriş artı çıkış kuralları yazmak
  • Tek ad alanını yalıtıp adlı istemcileri adlı portlara indirmek
  • Politikanın çalıştığını izinli ve yasaklı podlardan bağlantı sınamalarıyla kanıtlamak

Neden önemli

Düz ağ varsayılandır ve sınav bildiğini varsayar: bir şey hayır demedikçe her pod her pod IP adresine ulaşır. Ağ Politikası o hayırdır ve CNI eklentisi uygular. Politikalar izin listesidir; beceri meşru akışları eksiksiz saymaktır, çünkü unutulan ilk akış kilit sonrası ilk kesintidir.

Kavramlar

Politika koruduğu podları seçer (podSelector, boşu ad alandaki hepsini seçer) ve izinli giriş artı çıkış girdilerini listeler. İzin verilmeyen, podu seçen en az bir politika varken reddedilir: politika yoksa açık, bir politika varsa varsayılan ret artı istisnalar. Girdiler üç eş türünü birleştirir: podSelector (etiketli podlar, eşleşmedikçe aynı ad alanı), namespaceSelector (tüm ad alanları) ve ipBlock (dış CIDRler, çoğunlukla çıkış). Portlar her girdiyi protokol artı numaraya daraltır.

Klasik devreye alış önce hepsini reddetmektir (tüm podlarda boş giriş artı boş çıkış), sonra uygulama başına izin kuralları, her birinden sonra sınama. kube-system DNS çıkışı (UDP 53) unutulan kuraldır; küme çapı ad çözümlemeyi bozar: açıkça izin ver, yoksa her arama zaman aşımına uğrar.

Uygulamalı örnek

Demo ad alanı kilitli, APIye yalnız önyüz 8080. porttan ulaşır, DNS çalışır:

# 1. hepsini reddet tabanı
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata: { name: deny-all, namespace: demo }
spec:
  podSelector: {}
  policyTypes: [Ingress, Egress]
# 2. meşru akışlar
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata: { name: api-allow, namespace: demo }
spec:
  podSelector: { matchLabels: { app: api } }
  policyTypes: [Ingress, Egress]
  ingress:
  - from: [{ podSelector: { matchLabels: { app: frontend } } }]
    ports: [{ protocol: TCP, port: 8080 }]
  egress:
  - to: [{ namespaceSelector: {}, podSelector: { matchLabels: { k8s-app: kube-dns } } }]
    ports: [{ protocol: UDP, port: 53 }]

İki taraftan kanıtla: önyüz içinden kubectl exec APIye rahat ulaşır, üçüncü hata ayıklama podu zaman aşımına uğrar. Yasaklı poddan zaman aşımı artı izinliden başarı sınamanın tamamıdır.

Sınav notları

Politikalar uygulayan CNI ister: olmayanda sessizce yok sayılır; sınamaya güvenmeden önce uygulamayı doğrula. podSelector: {} ad alandaki her podu korur; tek uygulamayı kasteden yazarı şaşırtır. Ve büyük yanıtlarda TCP 53 DNS de önemlidir: güvenli olmak için UDP ve TCP 53e izin ver.

Mini kontrol

4 soruluk öz kontrol. Yanıtların cihazında kalır, saklanmaz ve gönderilmez. Yalnızca geçen skor (ör. 4 soruda 3) kaydedilir ve yalnızca ders ilerlemesinin kilidini açmak için: bir dersin tamamlanmış sayılması için en az 3 doğru gerekir. Hiçbir sertifika değerlendirmesine sayılmaz.

Ders geri bildirimi

Henüz yayında geri bildirim yok.

Geri bildirim yazmak için giriş yap ve dersi tamamla.

Kaynaklar

Alıştırma

Kurgusal ödemeler ad alanını yalıt: kasa podları defter podlarına 8443ten ulaşır, başka hiçbir şey girmez, DNS çalışır. İki politikayı ve beklenen sonuçlu iki taraflı bağlantı sınamasını göster.

Geçme kriterleri

Hepsini reddet artı podSelector, 8443 portu ve DNS çıkışı taşıyan hassas izin politikası; izinli tarafta başarı, yasaklıda zaman aşımı gösterilmiş.

İlerlemeni kaydetmek için giriş yapÜcretsiz hesap: yalnızca ders ilerlemen ve quiz sonuçların saklanır.