Ana içeriğe atla
Bu sayfa, Apinizer’ı profesyonel production ortamlarında kurmak isteyenler için hazırlanmıştır. Bu topoloji, orta ölçekli kurumsal uygulamalar için tasarlanmıştır ve worker node’ları arasında yük dengeleme sağlar.

Genel Bakış

Topoloji 2, production ortamları için uygun, worker node’ları arasında yük dengeleme sağlayan bir topolojidir. Tüm bileşenler 5 sunucu üzerinde çalışır.

Mimari Yapı

Profesyonel Kurulum Mimarisi

1. Sistem Gereksinimleri

Detaylı sistem gereksinimleri için Genel Bakış sayfasına bakabilirsiniz.

İşletim Sistemi

  • Ubuntu Server 24.04 LTS veya RHEL 9.x
  • Minimum kernel versiyonu: 5.4+
  • SELinux: Disabled (RHEL için) veya Permissive mode

Yazılım Bileşenleri

BileşenVersiyon/Gereksinim
Kubernetes1.31.0+ (veya desteklenen herhangi bir versiyon)
Docker/ContainerdKubernetes ile uyumlu versiyon
MongoDBHerhangi bir versiyon (Replica Set olarak yapılandırılmalı)
Elasticsearch7.9.2+ (resmi desteklenen versiyon)
Network PluginFlannel 0.27.4 (veya uyumlu)
Load BalancerHAProxy 2.0+ veya Nginx 1.18+
Yazılım bileşenleri hakkında detaylı bilgi için: Genel Bakış - Apinizer’ın İhtiyaç Duyduğu Bileşenler

Ağ Gereksinimleri

  • Internet Erişimi: Kurulum sırasında gerekli
  • DNS: Çalışan DNS çözümleme
  • Firewall: Gerekli portların açık olması
  • Load Balancer: Trafik dağıtımı için
Ağ topolojisi ve port gereksinimleri hakkında detaylı bilgi için: Ağ Topolojisi ve Port Gereksinimleri

2. Donanım Gereksinimleri

Aşağıdaki gereksinimler tavsiye edilen minimum konfigürasyon için belirtilmiştir. Servis yüklerinize göre artırılmalıdır.
Noİşletim SistemiCPURAMDiskKurulumlar
Sunucu 1Ubuntu Server 24.04 LTS / RHEL 9.x832GB1TBKubernetes Control-Plane, Manager, Elasticsearch (Master+Data), Replica set MongoDB Single Instance
Sunucu 2Ubuntu Server 24.04 LTS / RHEL 9.x44GB80GBKubernetes Worker
Sunucu 3Ubuntu Server 24.04 LTS / RHEL 9.x44GB80GBKubernetes Worker
Sunucu 4Ubuntu Server 24.04 LTS / RHEL 9.x44GB80GBKubernetes Worker
Sunucu 5Ubuntu Server 24.04 LTS / RHEL 9.x44GB80GBKubernetes Worker
Önemli: Yukarıdaki CPU, disk ve RAM değerleri örnek olarak verilmiştir. Bu değerler, trafik hacmi, API sayısı, politika karmaşıklığı ve diğer faktörlere göre değişiklik gösterebilir. Gerçek donanım gereksinimlerinizi belirlemek için Kapasite Planlama sayfasındaki kurallara göre hesaplama yapmanız önerilir.

3. Ağ Topolojisi

Ağ Yapısı

Profesyonel production ortamları için DMZ/LAN ayrımı önerilir ancak opsiyoneldir. Basit bir ağ yapısı da kullanılabilir. Ağ Yapısı:
  • Internet: Dış dünyadan gelen trafik, Load Balancer üzerinden (Port 443/80) iç ağa yönlendirilir.
  • Sunucu 1: Kubernetes Control-Plane, Manager, MongoDB ve Elasticsearch bileşenlerini barındırır.
  • Sunucu 2-5: Kubernetes Worker Node, Worker ve Cache bileşenlerini barındırır. Load Balancer, trafiği bu dört worker node arasında dağıtarak yük dengeleme sağlar.
DMZ/LAN ayrımı yapılırsa, Worker node’lar DMZ’de, Control-Plane ve veritabanı servisleri LAN’da konumlandırılabilir.
DMZ ve LAN zone’ları hakkında detaylı bilgi için: Genel Bakış - Temel Kavramlar ve Ağ Topolojisi ve Port Gereksinimleri

Port ve Firewall İzinleri

Eğer tüm sunucularınız aynı alt ağ üzerinde konumlanacak ve aralarında bir güvenlik duvarı bulunmayacaksa, güvenlik duvarı kuralları yalnızca internet’ten erişim ve konteyner ağ iletişimi için geçerli olacaktır. Sunucular arasındaki küme içi ve bileşenler arası iletişim portları, aynı alt ağ içinde doğrudan erişilebilir kabul edildiğinden, bu iletişimler için ek bir güvenlik duvarı kuralı tanımlanmasına gerek yoktur.
Port gereksinimleri ve firewall kuralları hakkında detaylı bilgi için: Ağ Topolojisi ve Port Gereksinimleri sayfasına bakabilirsiniz. Bu sayfada Kubernetes, MongoDB, Elasticsearch ve Apinizer bileşenleri için tüm port gereksinimleri ve firewall kuralları detaylı olarak açıklanmıştır.

4. Kapasite Planlama

Bu topoloji, Tier 2 (Production) seviyesindeki orta trafikli sistemler için tasarlanmıştır:
MetrikDeğer
Günlük İstek500,000 - 3,000,000 istek/gün
Saniyede İstek10 - 100 istek/saniye
Peak Trafik500 istek/saniye
Eşzamanlı Kullanıcı50 - 1,000 kullanıcı
Kapasite planlama hakkında detaylı bilgi için: Kapasite Planlama sayfasına bakabilirsiniz. Bu sayfada trafik tahmini, donanım gereksinimleri, MongoDB ve Elasticsearch veri büyüklüğü hesaplamaları ve benchmark performans sonuçları detaylı olarak açıklanmıştır.

Kurulum Öncesi Checklist

Kuruluma başlamadan önce aşağıdaki hazırlıkları yapmalısınız:
KategoriKontrol Maddesi
Altyapı[ ] 5 sunucu hazırlandı
[ ] Load Balancer hazırlandı (HAProxy/Nginx)
[ ] İşletim sistemi kuruldu (Ubuntu 24.04 LTS veya RHEL 9.x)
[ ] Sunucular arası ağ bağlantısı test edildi
[ ] DNS çözümleme çalışıyor
[ ] Internet erişimi mevcut
[ ] Gerekli portlar açıldı
[ ] Firewall kuralları yapılandırıldı
[ ] Load balancer yapılandırıldı
[ ] SSL/TLS sertifikaları hazırlandı
[ ] DMZ ve LAN zone’ları yapılandırıldı (opsiyonel)
Yazılım[ ] Kubernetes kurulum paketleri hazır
[ ] MongoDB kurulum paketleri hazır
[ ] Elasticsearch kurulum paketleri hazır
[ ] Apinizer image’leri erişilebilir (DockerHub veya private registry)
[ ] Load balancer yazılımı kuruldu
Güvenlik[ ] SSH anahtarları yapılandırıldı
[ ] Sudo erişimi yapılandırıldı
[ ] Güvenlik güncellemeleri yapıldı
[ ] Firewall kuralları test edildi
[ ] SSL/TLS sertifikaları hazırlandı
Kurulum öncesi detaylı öneriler için: Kurulum Öncesi Öneriler sayfasına bakabilirsiniz.

Kullanım Senaryoları

Bu topoloji, orta ölçekli production ortamları, orta trafikli sistemler (500K - 3M istek/gün), worker yük dengeleme gereksinimleri ve bütçe optimizasyonu gereken durumlar için idealdir.
Topoloji seçim kılavuzu ve kullanım senaryoları hakkında detaylı bilgi için: Deployment Modelleri sayfasına bakabilirsiniz.

Sınırlamalar ve Dikkat Edilmesi Gerekenler

Bu topolojinin sınırlamaları:
  • Veritabanı tek nokta arıza riski taşır (MongoDB single instance)
  • Elasticsearch tek node (yüksek erişilebilirlik yok)
  • Control-Plane tek node (Kubernetes HA yok)
  • Yüksek erişilebilirlik gereksinimleri için Topoloji 3 önerilir