Servis ağı ne için kullanılır?

Hizmet ağı, dağıtılmış bir uygulama içindeki mikro hizmetler arasındaki iletişimi yönetmek için kullanılır. Hizmetten hizmete iletişimi yöneten, hizmet keşfi, yük dengeleme, trafik yönetimi, güvenlik politikaları ve gözlemlenebilirlik gibi yetenekler sağlayan özel bir altyapı katmanı görevi görür. Hizmet ağı, ağ karmaşıklığını uygulama kodundan soyutlayarak hizmet iletişimini basitleştirir, güvenilirliği artırır ve devre kesme ve yeniden deneme gibi gelişmiş özellikleri etkinleştirir. Hizmet ağı mimarileri, trafik yönlendirmeyi ve politika uygulamasını şeffaf bir şekilde yönetmek için genellikle her bir mikro hizmetin yanında dağıtılan sepet proxy’lerini (Envoy veya Linkerd gibi) kullanır.

Bir ağ üzerinden iletişim kuran birden fazla hizmetin bulunduğu karmaşık bir mikro hizmet mimarisine sahip olduğunuz senaryolarda hizmet ağı kullanmayı düşünmelisiniz. Hizmet ağları özellikle yüksek güvenilirlik, ölçeklenebilirlik ve gözlemlenebilirlik gerektiren ortamlarda faydalıdır. Hizmet iletişimi üzerinde merkezi kontrol sağlayarak, dağıtılmış dağıtımlar genelinde yeni hizmetlerin sorunsuz dağıtımını, dinamik ölçeklendirmeyi ve verimli trafik yönetimini mümkün kılar. Hizmet ağı ayrıca hizmetler arasında karşılıklı TLS (Aktarım Katmanı Güvenliği) şifrelemesi gibi güvenlik önlemlerinin uygulanmasını kolaylaştırarak veri gizliliğini ve bütünlüğünü sağlar.

Hizmet ağının birincil işlevi, mikro hizmet iletişiminin güvenilirliğini, güvenliğini ve gözlemlenebilirliğini arttırmaktır. Bunu, hizmetler arasındaki trafiği yakalayıp yöneterek, iletişim politikalarını uygulayarak ve hizmet etkileşimleri ile performans ölçümlerine görünürlük sağlayarak başarır. Hizmet ağı mimarileri genellikle hizmet keşfi (mevcut hizmetleri bulmak için), yük dengeleme (trafiği eşit şekilde dağıtmak için) ve telemetri (trafik davranışını izlemek ve günlüğe kaydetmek için) bileşenlerini içerir. Hizmet ağı, bu sorumlulukları bireysel mikro hizmetlerden alarak genel sistem dayanıklılığını ve operasyonel verimliliği artırır.

Bir mikro hizmet mimarisinde hizmet ağı kullanmak için genellikle mikro hizmetlerinizin yanında bir hizmet ağı uygulaması dağıtırsınız. Daha sonra her bir mikro hizmet örneği, gelen ve giden trafiği engelleyen bir yardımcı proxy ile eşleştirilir. Sepet proxy’leri birbirleriyle ve hizmet ağı genelinde yapılandırmayı, politika uygulamasını ve izlemeyi yöneten merkezi bir kontrol düzlemiyle iletişim kurar. Yönlendirme kurallarının, yük dengeleme stratejilerinin, devre kesme politikalarının ve güvenlik önlemlerinin (ortak TLS gibi) yapılandırılması genellikle kontrol düzlemi aracılığıyla yönetilir ve mikro hizmetler ortamında iletişim davranışını yapılandırmak ve uygulamak için merkezi bir yol sağlar. Bu yaklaşım, mikro hizmetler arasında tutarlı, güvenilir iletişim sağlarken, dağıtılmış dağıtımlarda trafik yönetimi ve gözlemlenebilirlik için gelişmiş özellikler sağlar.