Loadbalancing - Yük dengeleme

21 December, 2009 (11:46) | Loadbalancing | By: alper

Günümüzde Sistem ve network ihtiyaçları gerek maliyet gerekse elde olan imkanların yetmemesi sebebiyle, yapılan işlerin birden çok kaynağa dağıtılmasını zaruri kılar hale gelmiştir. Birçok donanım ve yazılım bu ihtiyaçları karşılasada en esnek yapıyı opensource işletim sistemleri sağlamaktadır. En çok ihtiyaç duyulan loadbalancing ( yük dengeleme ) ihtiyaçları :

  1. Ethernet loadbalancing
  2. Outgoing Internet loadbalancing
  3. Incoming Internet loadbalancing
  4. Harddisk & Storage loadbalancing

1. Ethernet loadbalancing

Ethernet loadbalancing 1 den fazla ethernetin ( veya herhangi bir Ağ arayüzünün ) iş yükünü paylaşması için gereklidir. Günümüzde en çok kullanılan sistem LACP 802.3ad Link Agregation Control Protocol dür.

2. Outgoing loadbalancing

Kısaca ihtiyaç duyulan internet bant genişliğinin download olarak sağlanması için birden fazla internet veya network bağlantısının birleştirilmesi için kullanılmasıdır.

3. Incoming Internet loadbalancing

Internet veya network üzerinden gelen isteklerin , Server sistemleri üzerinde yük dağıtımı veya yetersiz bant genişliğinin telafi edilmesi amacıyla kullanılır.

4. Hardisk & Storage loadbalancing

Yukarıdaki örneklerden farklı olarak harddisk veya storage performanslarının yeterli olmadığı durumlarda bu engeli aşmak için gereklidir.

Tüm bu ihtiyaçları gidermek için farklı yollar kullanılsada genel olarak hepsinin çalışmaları iki temel prensip sayesinde olur.

a) Round Robin

Basit anlatımıyla gelen işlerin kaynaklara sırasıyla dağıtılması için kullanılan bir algoritmadır.CPU scheduling, DNS balancing, Internet loadbalancing gibi bilgisayar kullanımında hemen hemen heryerde önümüze çıkar, Round Robin işlemlerin yükü, önemi gibi parametreleri dikkate almaz her bir iş parçacığını ayrı ayrı sıraya alarak sırasıyla kaynaklara dağıtır. örneğin 1 mbit internet bağlantımız ile 100 mbit bağlantımızı aynı anda round robin ile paylaşıma almak 1 mbit hat için insafsızlık olacaktır :) örnek verecek olursak iki adet internet hattımıza 10 adet bağlantı isteğinin dağılımında ideal paylaşım 5/5 iki hatta dağılımı şeklinde olur. bu durum altında 1. numaralı hatta giden isteklerin her biri download 2 numara için giden isteklerin her biri ise IRC gibi tamamen bant genişliği kullanmayan basit bağlantı olabilir.

b) Policy ( kurala dayalı )

Policy ( Kurala bağlı ) yük dengelemesi ise round robin in aksine belirli kriterlere göre elimizdeki işlerin kaynaklara dağılımına dayanır. Yine çok basit bir örnek verecek olursak . 2 adet internet bağlantımızdan 1. numaralı hattımızın voice 2 numaralı hattımızın ise http için kullanılması 1 nolu hat üzerinden kesintisiz ses görüşmesi yapmamızı sağlar.  elbetteki ses trafiği oluşmadığı durumda 1 nolu hattımız atıl durumda kalacak bu sistemle yeterli bir dengeleme sağlanamayacaktır.

Bu sorunları halletmek için her sistem kendi içerisinde çözümler barındırmaktadır. Uygulama seviyesinde örnekler konunun daha iyi anlaşılması için yeterli olacaktır.

Write a comment