Dağıtılmış bir uygulamada mikro hizmetler arasındaki iletişimi yönetmek için bir hizmet ağı kullanılır. Trafik yönetimi, hizmet keşfi, yük dengeleme, arıza kurtarma, güvenlik ve gözlemlenebilirlik gibi özellikler sağlar. Bu yetenekler, hizmetler arasında güvenilir ve emniyetli iletişim sağlanmasına yardımcı olur.
Kubernetes’te mikro hizmetler arasındaki karmaşık iletişim modellerini yönetmek için bir hizmet ağına ihtiyaç vardır. Kubernetes, konteynerli uygulamaların dağıtımını ve ölçeklendirilmesini düzenler, ancak doğası gereği bir hizmet ağının sunduğu gelişmiş ağ oluşturma özelliklerini sağlamaz. Hizmet ağı, tutarlı iletişim politikaları ve gelişmiş güvenlik sağlayarak Kubernetes’te dağıtılan mikro hizmetlerin dinamik yapısının yönetilmesine yardımcı olur.
Mikro hizmet ile ağ arasındaki fark, rollerinde ve işlevselliklerinde yatmaktadır. Mikro hizmet, bir uygulama içinde belirli bir iş işlevini gerçekleştiren küçük, bağımsız bir hizmettir. Hizmet ağı ise bu mikro hizmetler arasındaki iletişimi yöneten, trafik kontrolü, güvenlik ve gözlemlenebilirlik gibi özellikler sağlayan bir altyapı katmanıdır.
Hem API ağı hem de hizmet ağı iletişimi yönetir, ancak farklı yönlere odaklanırlar. Bir API ağı öncelikle harici API çağrılarını yönetmek ve harici istemciler için birleşik bir arayüz sağlamakla ilgilidir. Harici API’ler için API sürümü oluşturma, yönlendirme ve güvenlikle ilgilenir. Ancak bir hizmet ağı, bir mikro hizmet mimarisi içerisinde dahili hizmetten hizmete iletişimin yönetilmesine odaklanır ve dahili etkileşimler için trafik yönetimi, güvenlik ve gözlemlenebilirlik sunar.
Mikro hizmetleri geniş ölçekte yönetmenin zorluklarını çözmek için bir ağa ihtiyaç vardır. Mikro hizmetlerin sayısı arttıkça etkileşimlerini yönetmenin karmaşıklığı da artar. Hizmet ağı, iletişim, güvenlik ve gözlemlenebilirliği yönetmek için merkezi ve tutarlı bir yol sağlayarak operasyonel yükü azaltır ve uygulamanın güvenilirliğini ve performansını artırır.