İçeriğe geç
Kong

Kong, Nginx/OpenResty tabanlı bir API gateway‘dir. Mikroservis sayısı arttığında istemci trafiğini tek tek backend’lere dağıtmak yerine kimlik, kota, yönlendirme ve gözlemlenebilirlik politikalarını merkezi bir edge katmanında yönetmeyi sağlar.

Mono’da kullanım alanları

  • API gateway kurulumu (kimlik, rate-limit, log)
  • Mikroservis trafiği için merkezi politikalar
  • Kong Ingress Controller ile Kubernetes entegrasyonu

Üretim kararları

Kong kurulumunda gateway’in kendisi kadar control plane/data plane ayrımı, konfigürasyonun sürümlenmesi, plugin güvenliği ve hata durumundaki davranış önemlidir. Her endpoint’e aynı middleware zincirini uygulamak yerine public, partner ve internal API’ler için açık politikalar tanımlanmalıdır.

API gateway ne zaman gerekli hâle gelir?

Bir reverse proxy birkaç servisin alan adı yönlendirmesini rahatlıkla çözebilir. Asıl ihtiyaç; farklı API tüketicilerine farklı erişim, kota ve izleme politikaları uygulandığında değişir. Aynı doğrulama kodunun birçok serviste tekrar edilmesi veya partner API’lerinin ayrı işletim kuralları gerektirmesi, gateway değerlendirmesini anlamlı kılar.

Kong üzerinde kimlik doğrulama yapılması, uygulamadaki bütün yetkilendirmeyi ortadan kaldırmaz. Bir token’ın geçerli olması ile kullanıcının belirli bir siparişi görmeye yetkili olması farklı kontrollerdir. Gateway ortak erişim politikasını uygular; kaynak ve iş kuralı bazlı yetkilendirme uygulamada kalır. Ayrıca Kong Gateway ile servisler arası iletişimi yöneten service mesh aynı ürün veya aynı sorumluluk değildir.

Dağıtım modelini seçmek

ModelDikkat noktası
Veritabanlı geleneksel kurulumVeritabanı erişimi, yedekleme ve sürüm yükseltme sırası planlanır.
Deklaratif, DB-less kurulumKonfigürasyonun tamamının sürümlenmesi ve node’lara tutarlı dağıtılması gerekir.
Control plane/data plane ayrımıSeçilen ürün ve sürümün desteği, bağlantı kaybı ve sertifika yönetimi doğrulanır.
Kubernetes controllerKaynak sahipliği, namespace sınırları ve controller yetkileri belirlenir.

Eklentilerin her dağıtım modelinde veya ürün paketinde aynı özelliklerle çalıştığı varsayılmamalıdır. Kimlik sağlayıcı entegrasyonu, gelişmiş rate limiting ve yönetim yetenekleri için ilgili sürümün özellik ve lisans kapsamı incelenir. Yalnızca lisans ücretini değil, gateway’in işletim sorumluluğunu da maliyet hesabına katmak gerekir.

Rate limiting ve hata davranışı

Kota anahtarı IP adresi, tüketici veya kimlik bilgisi olabilir. Ortak NAT arkasındaki kullanıcıları tek IP üzerinden sınırlandırmak meşru trafiği engelleyebilir. Birden fazla gateway node’unda yerel sayaç kullanılması ise toplam kotanın beklenenden farklı uygulanmasına neden olabilir. Paylaşılan sayaç altyapısının gecikmesi ve arızada uygulanacak politika tasarımın parçasıdır.

Retry davranışı özellikle ödeme veya sipariş oluşturma gibi işlemlerde dikkat ister. Aynı isteğin tekrar gönderilmesi için idempotency desteği ve backend sözleşmesi bilinmelidir. Eklenti sırası da sonucu değiştirebilir: kimlik doğrulamasından önce veya sonra uygulanan kota aynı kullanıcı grubunu sınırlamayabilir.

Mono’nun API işletim yaklaşımı

Çalışma API envanteriyle başlar: public, partner ve internal servisler, tüketici kimlikleri ve mevcut hata oranları çıkarılır. Politikalar tek bir pilot API’de doğrulanır; loglarda token ve kişisel veri tutulmaması sağlanır. Konfigürasyon değişiklikleri kod incelemesinden geçirilir ve geri dönüş sürümü korunur. Böylece gateway, yeni bir merkezi arıza noktası olmadan yönetilebilir bir politika katmanı hâline gelir.

İlgili hizmetlerimiz

Sıkça sorulan sorular

Kong API Gateway ne işe yarar?
Kong, istemci ile backend servisleri arasında çalışan API gateway’dir. Routing, kimlik doğrulama, rate limiting, header dönüşümü, loglama ve gözlemlenebilirlik politikalarını merkezi biçimde uygulamaya yardım eder.
Kong ile reverse proxy arasındaki fark nedir?
Reverse proxy temel olarak trafiği backend’e aktarır. Kong ise bu akışın üzerine API kimliği, tüketici kotaları, eklentiler, versiyonlama ve politika yönetimi gibi API yaşam döngüsü yetenekleri ekler. Basit web trafiğinde daha sade bir proxy yeterli olabilir.
Kong Kubernetes ile kullanılabilir mi?
Evet. Kong Ingress Controller ile Kubernetes kaynaklarından API yönlendirmeleri yönetilebilir. RBAC, secret yönetimi, eklenti kapsamı ve cluster yükseltmeleri birlikte planlanmalıdır.

Bir sonraki dönüşümü birlikte planlayalım.

Ekibimiz teknik gereksinimlerinizi anlamak ve hızlıca prototip çıkarmak için hazır.