Kubernetes Pod Ağ İletişimi: Service ve Ingress Farkı

# Kubernetes Pod Ağ İletişimi: Service ve Ingress Farkı

Kubernetes'te podlar kendi aralarında iletişim kurabilir ama dış dünyadan erişilemez. Bu sorunu çözmek için Service ve Ingress kullanılır. Aralarındaki fark net değilse kafan karışabilir. Biri pod içi haberleşmeyi, diğeri dış erişimi sağlar.

Service, podlara sabit bir ağ adresi ve DNS adı verir. Podlar silinip yenileri oluşturulsa bile Service aynı kalır. Cluster içinde iletişim için kullanılır.

Üç tipi vardır:

- ClusterIP: Sadece cluster içinde erişim (default)
- NodePort: Her node'un belirli portunu açar (30000-32767)
- LoadBalancer: Bulut sağlayıcısının load balancer'ını kullanır

Ingress, HTTP/HTTPS trafiğini cluster dışından alıp Service'lere yönlendirir. DNS adı, SSL sertifikası ve URL yollarına göre yönlendirme yapabilir.

Service olmadan Ingress çalışmaz. Ingress, Service'e bağlanır.

Reklam · TEST
AdSense Test ReklamıYazı arası (gönderi içi) · Yazı arası
1apiVersion: v1
2kind: Pod
3metadata:
4name: web-pod
5labels:
6app: web
7spec:
8containers:
9- name: nginx
10image: nginx:latest
11ports:
12- containerPort: 80
1apiVersion: v1
2kind: Service
3metadata:
4name: web-service
5spec:
6selector:
7app: web
8type: ClusterIP
9ports:
10- port: 80
11targetPort: 80

Uygula:

1kubectl apply -f pod.yaml
2kubectl apply -f service.yaml
3kubectl get svc

Çıktı:

1NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S)
2web-service ClusterIP 10.96.45.123 <none> 80/TCP
1apiVersion: networking.k8s.io/v1
2kind: Ingress
3metadata:
4name: web-ingress
5spec:
6rules:
7- host: example.com
8http:
9paths:
10- path: /
11pathType: Prefix
12backend:
13service:
14name: web-service
15port:
16number: 80

Uygula:

1kubectl apply -f ingress.yaml
2kubectl get ingress

Service: Cluster içi iletişim, sabit adres sağlar.

Ingress: Dış dünyadan gelen HTTP/HTTPS trafiğini Service'e yönlendirir.

Praktik: Önce Service oluştur, sonra Ingress'i ona bağla. Dış erişim istiyorsan Ingress, sadece pod iletişimi istiyorsan Service yeterli.

Reklam · TEST
AdSense Test ReklamıGönderi altı · Görüntülü
konu hakkında tepkinizi verebilirsiniz