Kubernetes Service Kavramı

Service, podlar ve nodelar arasındaki iletişimi sağlar. Kubernetes içerisindeki trafiği yönetmek için servislere ihtiyaç vardır.

Bir yaml dosyası hazılayarak service oluşturulabilir.

Servisin hangi podlar arasındaki iletişimi sağlayacağı label-selector sayesinde belirtilir. pod.yaml’ında label, service.yaml’ında selector tanımlaması yaparak belirtilir.

1-ClusterIp

2-Load Balancer

3-NodePort

ClusterIp: Service’lerin kendi aralarındaki iletişimi sağlar.

NodePort: Bir Node’un dışarı ile iletişim kurabileceği port’u sağlayan Servis türüdür. Bu port 30000–32767 aralığında olmalıdır.

Nodeport yaml

Load Balancer: Service’e bir Public IP atanması sağlanarak, Service’in dış networkten gelen istekleri karşılayarak ilgili Node’lar dağıtma hizmetini sağlar. Internal Load Balancer ve External Load Balancer olarak ikiye ayrılır.

External Load Balancer: Public ip ile her yerden cluster’a erişim sağlanabilmesini sağlar

İnternal Load Balancer:Cluster içerisindeki client’ların yani aynı network içerisindeki clientların erişebilmesi için kullanılır.

  • Service’lerin kendilerine ait bir ip’leri vardır.