
Yük dengeleme, modern ağ mimarilerinde yüksek erişilebilirlik ve performansı sağlamak için kritik bir bileşendir. F5 BIG-IP gibi yük dengeleme çözümleri, çeşitli yük dengeleme modları sunar. Bu makalede, hem statik hem de dinamik yük dengeleme modlarını detaylı bir şekilde ele alacağız ve akış şemaları, F5 konfigürasyonu ile ayarlama, sonuçlar ve derinleştirilmiş yöntemler hakkında bilgi vereceğiz.
Öncelikle bu makalede, lab ortamlarınızı oluşturmanıza yardımcı olacak kaynaklara erişiminizi sağlamak amacıyla aşağıdaki Google Drive bağlantısını paylaşmak istiyorum: Google Drive Klasörü.
Bu klasörde bulabileceğiniz içerikler:
- F5 Kurulum Dosyası: F5 cihazınızı kurmanız için gerekli dosyalar.
- Hazır Web Server: Direkt çalıştırılabilir web server içeriği ile birlikte, kendi kurulumunu yapmak isteyenler için imaj dosyası ve yapılandırma dosyası.
- Web Server İçin HTML Dosyası: Web sunucusunun içeriğini oluşturmak için gerekli HTML dosyası.
- Pnetlab Kurulum Dosyası: Pnetlab ortamınızda kullanılmak üzere, şu ana kadar yapılmış labların dosyalarını içeren kurulum dosyası.
- Eveng Kurulum Dosyası: Eveng ortamınız için gerekli kurulum dosyaları.
- Cihaz İmajları: Pnetlab ve Eveng için gerekli cihaz imaj dosyaları.
Bu kaynaklar, ağ laboratuvarlarınıza kolayca erişim sağlamanız ve yapılandırmalarınızı gerçekleştirmeniz için kapsamlı bir başlangıç noktası sunacaktır.
Statik Yük Dengeleme Modları
Statik yük dengeleme modları, yük dağıtımını sabit kurallara göre yapar. Bu modlar genellikle daha basit ve öngörülebilir sonuçlar sağlar.
1. Round Robin
- Açıklama: Round Robin, yükü sunucular arasında döngüsel olarak dağıtır. Her yeni istek, sırayla bir sonraki sunucuya yönlendirilir.
- Avantajlar: Basit ve kolay yapılandırılır. Her sunucuya eşit miktarda trafik gönderir.
- Eksiklikler: Sunucular arasında performans farkları varsa, bu yöntem yeterli verimlilik sağlamaz. Yükün eşit dağıtılmasını sağlar, ancak sunucuların kapasite farklarını göz ardı eder.
2. Weighted Round Robin
- Açıklama: Sunuculara ağırlıklar atanarak, daha güçlü sunuculara daha fazla trafik gönderilir.
- Avantajlar: Sunucu kapasitelerini göz önünde bulundurarak daha dengeli bir yük dağılımı sağlar.
- Eksiklikler: Ağırlıkların yanlış ayarlanması durumunda bazı sunucular aşırı yüklenebilir. Ayrıca, sunucu performansındaki değişiklikler zamanında güncellenmelidir.
3. Ratio Method
- Açıklama: Sunucuların kapasiteleri oranına göre yük dağıtımı yapılır.
- Avantajlar: Sunucu kapasitelerine göre yük paylaşımı sağlar.
- Eksiklikler: Sunucuların performansındaki dinamik değişiklikleri dikkate almaz. Ağırlıklar sabit kalır ve bu, performans dengesizliklerine neden olabilir.
4. Priority Group
- Açıklama: Sunucular, öncelik gruplarına göre sınıflandırılır ve yüksek öncelikli gruptaki sunuculara daha fazla trafik yönlendirilir. Öncelik grupları, sunucuların performans, kapasite veya önem derecelerine göre belirlenir.
- Avantajlar: Trafik, sunucuların performansına göre düzenlenir ve daha önemli veya güçlü sunucular daha fazla yük alır.
- Eksiklikler: Önceliklerin sürekli güncel ve doğru olması gerekir. Yanlış öncelik ayarları dengesizliklere neden olabilir.
Dinamik Yük Dengeleme Modları
Dinamik yük dengeleme modları, sunucu performansını ve ağ trafiğini gerçek zamanlı olarak izler ve bu verilere göre yükü dağıtır.
1. Least Connections
- Açıklama: Trafik, en az aktif bağlantıya sahip sunucuya yönlendirilir.
- Avantajlar: Sunucular arasındaki mevcut yük farklarını dikkate alır, böylece aşırı yüklenmeyi azaltır.
- Eksiklikler: Sadece bağlantı sayısını baz alır ve sunucuların işlem gücü veya bellek kullanımını göz ardı eder. Uzun bağlantı süreleri performans dengesizliklerine neden olabilir.
2. Fastest Response
- Açıklama: Sunucuların yanıt sürelerine göre trafik dağıtılır. En hızlı yanıt veren sunucu tercih edilir.
- Avantajlar: Trafiği en hızlı sunuculara yönlendirerek yanıt sürelerini iyileştirir.
- Eksiklikler: Yanıt süresi, ağ gecikmeleri veya sunucu yükünü her zaman doğru yansıtmayabilir. Sunucuların yanıt süreleri zamanla değişebilir ve bu değişiklikleri izlemek gerekebilir.
3. Weighted Least Connections
- Açıklama: Sunucu ağırlıkları ve aktif bağlantı sayısını dikkate alarak yükü dağıtır.
- Avantajlar: Sunucuların kapasiteleri ve mevcut bağlantı sayısı göz önünde bulundurularak yük dengelenir.
- Eksiklikler: Ağırlıkların ve bağlantı sayılarının güncellenmesi gerekir. Sunucu performansındaki değişiklikler zamanında yansıtılmalıdır.
4. Observed Method
- Açıklama: Trafik ve sunucu performansını sürekli izler ve gözlemler. Bu veriler, yük dengeleme kararlarını yönlendirir.
- Avantajlar: Sunucuların gerçek performansına dayalı olarak yük dağılımını optimize eder.
- Eksiklikler: Gözlemler ve veriler, zamanında doğru ve güncel olmalıdır. İzleme sistemleri hatalı olabilir ve bu da verimliliği etkileyebilir.
5. Predictive Method
- Açıklama: Geçmiş performans verilerini analiz ederek gelecekteki trafik taleplerini tahmin eder ve buna göre yükü dağıtır.
- Avantajlar: Trafik trendlerini tahmin ederek daha proaktif bir yük dengelemesi sağlar.
- Eksiklikler: Tahminlerin doğruluğu veri kalitesine ve analiz algoritmalarına bağlıdır. Yanlış tahminler yük dengesizliğine neden olabilir.
6. Dynamic Ratio
- Açıklama: Sunucu kapasiteleri ve performans verilerini dinamik olarak analiz eder ve yükü bu verilerle orantılar.
- Avantajlar: Sunucu performansındaki değişikliklere hızlı bir şekilde yanıt verir ve yükü dengeler.
- Eksiklikler: Performans verilerinin sürekli güncel olması gerekir. Aksi takdirde, dengesizlikler ve aşırı yüklenmeler yaşanabilir.
Load Balancing Modlarının Akış Şemaları
Aşağıda, statik ve dinamik yük dengeleme modlarının akış şemalarını bulabilirsiniz. Bu şemalar, modların nasıl çalıştığını ve trafiğin nasıl dağıldığını görsel olarak temsil eder.
Round Robin Akış Şeması
Round Robin yöntemi, yükü döngüsel olarak sunucular arasında dağıtır. Her yeni istek sırayla bir sonraki sunucuya yönlendirilir. Bu, her sunucunun sırayla trafik almasını sağlar.
Toplam 6 paket var ve 3 sunucu var:
- Sunucu 1: Alacak paketler: 1, 4
- Sunucu 2: Alacak paketler: 2, 5
- Sunucu 3: Alacak paketler: 3, 6
Paket Dağıtımı:
- Paket 1 → Sunucu 1
- Paket 2 → Sunucu 2
- Paket 3 → Sunucu 3
- Paket 4 → Sunucu 1
- Paket 5 → Sunucu 2
- Paket 6 → Sunucu 3

Round Robin yöntemi, her bir sunucuya eşit miktarda yük dağıtarak trafiği döngüsel bir şekilde yönlendirir. İlk başta Sunucu 1’e yük verilir, ardından Sunucu 2’ye geçilir ve son olarak Sunucu 3’e yönlendirilir. Bu döngü sürekli devam eder, sunucular arasında performans farklılıkları göz ardı edilir.
Weighted Round Robin Akış Şeması
Weighted Round Robin yöntemi, sunuculara ağırlıklar atanarak yükü dağıtır. Daha yüksek ağırlığa sahip sunucular daha fazla trafik alır.
Sunucu ağırlıkları:
- Sunucu 1: Ağırlık 3
- Sunucu 2: Ağırlık 2
- Sunucu 3: Ağırlık 1
Toplam 6 paket var:
- Sunucu 1: Alacak paketler: 1, 2,3
- Sunucu 2: Alacak paketler: 4, 5
- Sunucu 3: Alacak paketler: 6
Paket Dağıtımı:
- Paket 1 → Sunucu 1
- Paket 2 → Sunucu 1
- Paket 3 → Sunucu 1
- Paket 4 → Sunucu 2
- Paket 5 → Sunucu 2
- Paket 6 → Sunucu 3

Weighted Round Robin yöntemi, sunuculara atanmış ağırlıklara göre yük dağıtır. Sunucu 3, en yüksek ağırlığa sahip olduğu için en fazla paketi alır. Sunucu 2 ise Sunucu 3’ten sonra en yüksek ağırlığa sahip olduğu için ikinci sıradadır. Sunucu 1, en düşük ağırlığa sahip olduğu için en az paketi alır. Bu yöntem, sunucuların kapasitelerini göz önünde bulundurarak daha dengeli bir yük dağılımı sağlar.
Radio Akış Şeması
Ratio Method, sunucuların kapasitelerine oranla yükü dağıtır. Her sunucuya kapasitelerine göre bir yük miktarı atanır.
Sunucu kapasiteleri:
- Sunucu 1: Kapasite 3
- Sunucu 2: Kapasite 2
- Sunucu 3: Kapasite 1
Toplam 6 paket var:
- Sunucu 1: Alacak paketler: 1, 2, 3
- Sunucu 2: Alacak paketler: 4, 5
- Sunucu 3: Alacak paketler: 6
Paket Dağıtımı:
- Paket 1 → Sunucu 1
- Paket 2 → Sunucu 1
- Paket 3 → Sunucu 1
- Paket 4 → Sunucu 2
- Paket 5 → Sunucu 2
- Paket 6 → Sunucu 3

Ratio Method, sunucuların kapasitelerine göre yükü dağıtır. Kapasite oranları daha yüksek olan sunucular, daha fazla paket alır. Sunucu 3, en yüksek kapasite oranına sahip olduğu için en fazla paket alır. Sunucu 2, Sunucu 3’ten sonra en yüksek kapasite oranına sahip olduğu için ikinci sıradadır. Sunucu 1, en düşük kapasite oranına sahip olduğu için en az paketi alır. Bu yöntem, sunucuların kapasitelerini dikkate alarak daha dengeli bir yük dağılımı sağlar.
Priority Group
Priority Group yöntemi, sunuculara belirli öncelik seviyeleri atar. Trafik, öncelik sırasına göre sunuculara yönlendirilir. Yük, yüksek önceliğe sahip sunuculardan başlar ve öncelik azaldıkça diğer sunuculara yönlendirilir.
Sunucu Önceliği:
- Sunucu 1: Öncelik 10, Paketler: 1, 3
- Sunucu 2: Öncelik 10, Paketler: 2, 4
- Sunucu 3: Öncelik 5, Paketler: 5, 7
- Sunucu 4: Öncelik 5, Paketler: 6, 8
Paket Dağıtımı:
- Paket 1 → Sunucu 1 (Öncelik 10)
- Paket 2 → Sunucu 2 (Öncelik 10)
- Paket 3 → Sunucu 1 (Öncelik 10)
- Paket 4 → Sunucu 2 (Öncelik 10)
- Paket 5 → Sunucu 3 (Öncelik 5)
- Paket 6 → Sunucu 4 (Öncelik 5)
- Paket 7 → Sunucu 3 (Öncelik 5)
- Paket 8 → Sunucu 4 (Öncelik 5)

Least Connections Akış Şeması
Least Connections yöntemi, trafik yönlendirmeyi mevcut bağlantı sayısına göre yapar. En az bağlantıya sahip sunucuya yönlendirilir.
Sunucuların Mevcut Bağlantı Sayısı:
- Sunucu 1: 400 bağlantı
- Sunucu 2: 425 bağlantı
- Sunucu 3: 500 bağlantı
Toplam 6 Paket Var:
- Sunucu 1: Alacak paketler: 1, 2, 3
- Sunucu 2: Alacak paketler: 4, 5
- Sunucu 3: Alacak paketler: 6
Paket Dağıtımı:
- Paket 1 → Sunucu 1
- Paket 2 → Sunucu 1
- Paket 3 → Sunucu 1
- Paket 4 → Sunucu 2
- Paket 5 → Sunucu 2
- Paket 6 → Sunucu 3
Least Connections yöntemi, mevcut bağlantı sayısını dikkate alarak trafiği yönlendirir. İlk başta en düşük bağlantıya sahip sunucu olan Sunucu 2’ye yük yönlendirilir. Sunucu 2’nin bağlantı sayısı artmaya başladıkça, trafiğin yönlendirilmesi Sunucu 1’e geçer. Sunucu 1’in bağlantı sayısı da arttığında, en düşük bağlantıya sahip olan Sunucu 3’e yönlendirilir. Bu şekilde, trafik sunucular arasında bağlantı sayısına göre dağıtılır.
Member:
Memberlar üzerindeki connection sayılarını dinamik olarak hesaplayarakd ağıtım yapar.Bu yöntemle memberlar üzerine açılan tüm connection sayılarını eşitler.

Node:
Least Connection Member algoritmasına benzer bir mantıkla çalışır. LC Member’da pool altındaki memberlara açılan connectionları eşitlerken Bu algoritmada node üzerindeki connectionları eşitler.

Least Connections yöntemi, mevcut bağlantı sayısını dikkate alarak trafiği yönlendirir. İlk başta en düşük bağlantıya sahip sunucu olan Sunucu 1’e yük yönlendirilir. Sunucu 1’in bağlantı sayısı artmaya başladıkça, trafiğin yönlendirilmesi Sunucu 2’ye geçer. Sunucu 2’nin bağlantı sayısı da arttığında, en düşük bağlantıya sahip olan Sunucu 3’e yönlendirilir. Bu şekilde, trafik sunucular arasında bağlantı sayısına göre dağıtılır.
Fastest Response Akış Şeması
Fastest Response yöntemi, sunucuların yanıt sürelerine göre trafik yönlendirir. En hızlı yanıt veren sunucuya yönlendirilir.
Sunucuların Yanıt Süreleri (Request):
- Sunucu 1: 10 ms
- Sunucu 2: 12 ms
- Sunucu 3: 20 ms
Toplam 6 Paket Var:
- Sunucu 1: Alacak paketler: 1, 2, 3
- Sunucu 2: Alacak paketler: 4, 5
- Sunucu 3: Alacak paketler: 6
Paket Dağıtımı:
- Paket 1 → Sunucu 1
- Paket 2 → Sunucu 1
- Paket 3 → Sunucu 1
- Paket 4 → Sunucu 2
- Paket 5 → Sunucu 2
- Paket 6 → Sunucu 3

Fastest Response yöntemi, sunucuların yanıt sürelerini dikkate alarak trafiği yönlendirir. En düşük yanıt süresine sahip sunucu olan Sunucu 1, öncelikli olarak paketleri alır. Sunucu 1’ün yanıt süresi artmaya başladığında, trafiğin yönlendirilmesi Sunucu 2’ye geçer. En yüksek yanıt süresine sahip Sunucu 3, en son paketleri alır. Bu şekilde, trafiğin en hızlı yanıt veren sunuculara yönlendirilmesi sağlanır.
Weighted Least Connections
Weighted Least Connections yöntemi, hem ağırlıklar hem de mevcut bağlantı sayısını göz önüne alarak trafik yönlendirir. Sunuculara hem ağırlık atanır hem de bağlantı sayısı dikkate alınır.
Sunucuların Bağlantı Sayısı ve Ağırlıkları:
- Sunucu 1: Bağlantılar: 3, Ağırlık: 2
- Sunucu 2: Bağlantılar: 2, Ağırlık: 3
- Sunucu 3: Bağlantılar: 1, Ağırlık: 6
Toplam 6 Paket Var:
- Sunucu 1: Alacak paketler: 1, 4, 6
- Sunucu 2: Alacak paketler: 2, 5
- Sunucu 3: Alacak paketler: 3
Paket Dağıtımı:
- Paket 1 → Sunucu 1
- Paket 2 → Sunucu 2
- Paket 3 → Sunucu 3
- Paket 4 → Sunucu 1
- Paket 5 → Sunucu 2
- Paket 6 → Sunucu 1

Weighted Least Connections yöntemi, sunucuların bağlantı sayısını ve ağırlıklarını dikkate alarak trafiği yönlendirir. Ağırlıklı en az bağlantı olan sunucu, en yüksek ağırlığa sahip olan Sunucu 3 olacaktır. Bu yöntemde, bağlantı sayısının yanı sıra sunucunun kapasitesi de göz önüne alınır. Sunucu 3, ağırlıklı olarak daha fazla paket alırken, diğer sunucular da ağırlıklara göre paket alır.
Observed Method
Observed Method, sunucuların performansını gerçek zamanlı olarak gözlemler ve bu verilerle yükü dinamik olarak yönlendirir. Trafik yönlendirilirken, her sunucunun performans verileri dikkate alınır ve yük, daha iyi performansa sahip sunuculara yönlendirilir.
Sunucuların Yanıt Süreleri:
- Sunucu 1: 100 ms
- Sunucu 2: 150 ms
- Sunucu 3: 200 ms
Toplam 6 Paket Var:
- Sunucu 1: Alacak paketler: 1, 4, 6
- Sunucu 2: Alacak paketler: 2, 5
- Sunucu 3: Alacak paketler: 3
Paket Dağıtımı:
- Paket 1 → Sunucu 1 (Yanıt Süresi 100 ms)
- Paket 2 → Sunucu 2 (Yanıt Süresi 150 ms)
- Paket 3 → Sunucu 3 (Yanıt Süresi 200 ms)
- Paket 4 → Sunucu 1 (Yanıt Süresi 100 ms)
- Paket 5 → Sunucu 2 (Yanıt Süresi 150 ms)
- Paket 6 → Sunucu 1 (Yanıt Süresi 100 ms)

Observed Method, sunucuların gerçek zamanlı performans verilerini kullanarak yükü yönlendirir. İlk olarak en yüksek performansa sahip Sunucu 1’e yük verilir. Performans verileri orta seviyede olan Sunucu 2’ye geçilir, ve en düşük performansa sahip Sunucu 3’e son olarak yük yönlendirilir. Bu yöntem, sunucuların mevcut performansına göre daha iyi hizmet sunan sunucuları önceliklendirir.
Predictive Method
Predictive Method, geçmiş performans verilerini analiz ederek gelecekteki yük taleplerini tahmin eder ve bu tahminlere göre trafik yönlendirir. Bu yöntem, sunucuların yük kapasitelerini ve geçmiş performanslarını dikkate alarak tahminler yapar.
Sunucuların Yanıt Süreleri:
- Sunucu 1: 100 ms
- Sunucu 2: 150 ms
- Sunucu 3: 200 ms
Toplam 6 Paket Var:
- Sunucu 1: Alacak paketler: 1, 4, 5, 6
- Sunucu 2: Alacak paketler: 2
- Sunucu 3: Alacak paketler: 3
Paket Dağıtımı:
- Paket 1 → Sunucu 1 (Yanıt Süresi 100 ms)
- Paket 2 → Sunucu 2 (Yanıt Süresi 150 ms)
- Paket 3 → Sunucu 3 (Yanıt Süresi 200 ms)
- Paket 4 → Sunucu 1 (Yanıt Süresi 100 ms)
- Paket 5 → Sunucu 1 (Yanıt Süresi 100 ms)
- Paket 6 → Sunucu 1 (Yanıt Süresi 100 ms)

Predictive Method, geçmiş verilerden tahminler yaparak yükü yönlendirir. En yüksek tahmin edilen yük kapasitesine sahip olan Sunucu 1, en fazla paketi alır. Tahmin edilen yük kapasitesi orta seviyede olan Sunucu 2’ye sonraki yük verilir, ve en düşük tahmin edilen yük kapasitesine sahip Sunucu 3’e son olarak paketler yönlendirilir. Bu yöntem, geçmiş performans verilerine dayanarak gelecekteki talepleri öngörür ve bu tahminlere göre yük dağıtır.
Dynamic Ratio
Dynamic Ratio yöntemi, sunucuların kapasitelerini dinamik olarak analiz eder ve yükü bu analizlere göre orantılar. Kapasite oranlarına göre yüksek kapasiteli sunucular daha fazla paket alır.
Sunucuların Dinamik Oranları:
- Sunucu 1: Dinamik Oran 3
- Sunucu 2: Dinamik Oran 2
- Sunucu 3: Dinamik Oran 1
Toplam 6 Paket Var:
- Sunucu 1: Alacak paketler: 1, 4, 6
- Sunucu 2: Alacak paketler: 2, 5
- Sunucu 3: Alacak paketler: 3
Paket Dağıtımı:
- Paket 1 → Sunucu 1 (Dinamik Oran 3)
- Paket 2 → Sunucu 2 (Dinamik Oran 2)
- Paket 3 → Sunucu 3 (Dinamik Oran 1)
- Paket 4 → Sunucu 1 (Dinamik Oran 3)
- Paket 5 → Sunucu 2 (Dinamik Oran 2)
- Paket 6 → Sunucu 1 (Dinamik Oran 3)

Dynamic Ratio yöntemi, sunucuların kapasitelerine göre dinamik olarak yükü dağıtır. En yüksek kapasiteye sahip Sunucu 1, en fazla paketi alır. Sunucu 2, daha düşük kapasiteye sahip olduğu için daha az paket alır, ve en düşük kapasiteye sahip Sunucu 3’e en az yük verilir. Bu yöntem, sunucuların mevcut kapasitelerini göz önünde bulundurarak daha verimli bir yük dağılımı sağlar.
F5 Konfigürasyonu ile Load Balancing Modlarının Ayarlanması
F5 BIG-IP cihazlarında yük dengeleme modlarını yapılandırmak için aşağıdaki adımları izleyebilirsiniz:
- F5 Yönetim Arayüzüne Giriş: Web tabanlı F5 yönetim arayüzüne giriş yapın.
- Load Balancing Modu Seçimi:
Local Traffic
>Pools
>Create
ile yeni bir havuz oluşturun.Members
sekmesinde sunucuları ekleyin ve uygun yük dengeleme modunu seçin (Round Robin, Least Connections, vb.).
- Ağırlıklandırma ve Yapılandırma:
Load Balancing Method
altında seçilen modun yapılandırmasını yapın. Ağırlık, yanıt süresi ve diğer parametreleri ayarlayın.
- Monitor Ayarları:
Health Monitors
kısmından, sunucuların durumunu izlemek için uygun izleme yöntemlerini yapılandırın.
