"Cluster" kelime olarak küme, demet anlamına gelir. Bilgisayar Kümeleri (Computer Clusters), bir ağ bağlantısı ile birbirine bağlı ve birçok bakımdan tek bir bilgisayar gibi davranabilen bilgisayar gruplarıdır. Bir bilgisayar kümesi içindeki bilgisayarlar, her zaman olmasa da çoğunlukla birbirine hızlı bir ağ bağlantısı ile bağlıdır. Sözü geçen bilgisayar kümeleri, bildiğimiz kişisel bilgisayar kasalarının birbirine bağlanması ile oluşturulabileceği gibi, küme (cluster) oluşturmak amacıyla üretilmiş bilgisayar kartlarının (node) birleştirilmesiyle de kurulabilir. Kişisel bilgisayar kasalarının birbirine bağlanmasıyla oluşturulmuş bilgisayar kümelerinin üyeleri genellikle herhangi bir kaynak paylaşmaz. Bütün üyeler yerel ağ bağlantısı ile birbirine bağlıdır ve aralarındaki veri iletişimi bu yolla sağlanır. Kartlardan (node) oluşan bilgisayar kümelerinde ise, her birkaç kart (8, 16 gibi) kendi arasında küçük bir grup oluşturur. Bu küçük gruplar aynı güç kaynağını ve aynı soğutma sistemini kullanır. Genellikle her gruba bir sabit disk verilir ve grup aynı sabit diski de paylaşır. Her karta farklı bir sabit disk de verilebilir.
Bir bilgisayar kümesinde bulunması gereken kilit özellikler :
- Yüksek verim gücü,
- Büyütülebilirlik,
- Yüksek üretim miktarı,
- Yüksek erişilebilirliktir.
Farklı amaçlar için farklı özelliklerde farklı bilgisayar kümeleri oluşturulabilir. Bilgisayar kümelerini sınıflandırırken her sınıfın ne amaçla kullanılabileceğini de söylemeye çalışacağım. Bilgisayar kümelerini birden farklı şekilde sınıflandırabiliriz.
Amaca Göre:
Yüksek Verim Kümeleri (High Performance Clusters) : Bilgisayar işlemcilerinin, ısınma, elektrik hızı gibi sebeplerden dolayı pratikteki işlem hızı limitine erişmeye çok yakın olduklarını, bu sebepten dolayı bilgisayarların artık çok çekirdekli üretildiklerini hatırlayalım. Yüksek Verim Kümeleri (High Performance Clusters), çok yüksek bilgisayar gücü isteyen ve çok uzun süren işlemler için üretilip kullanılmaktadır. Fizik, kimya, biyoloji, moleküler biyoloji gibi alanlarda araştırma yapan birçok bilim adamı böyle güçlü bilgisayarlara ihtiyaç duymaktadır. Bunun dışında hava tahminleri yapılırken de çok hızlı bilgisayarlar kullanılmaktadır. Herhangi bir günün hava tahminini o günden sonra yapmanın pek bir anlamı olmaz heralde :)
Bu tür bilgisayar kümelerinde ağ bağlantı hızının çok büyük önemi vardır. Kümeye ait bilgisayarlar işlem sırasında birbirleri ile çok fazla iletişim kurarlar ve bu iletişimde birbirlerine genellikle çok küçük bilgiler gönderirler. Bu sebepten dolayı, ağ bağlantısının bant genişliğinin (bandwith) öneminden çok daha fazla bağlantının gecikme miktarı (latency) önemlidir.
Yüksek Erişilebilirlik Kümeleri (High Availability Clusters) : Bazı durumlarda çok fazla bilgisayar gücüne ihtiyaç duymayız ama bilgisayarn hiç kapanmayacağına emin olmak isteriz. Mesela bir internet sitesi yayınladığımız bir sunucunun çok hızlı bir bilgisayar olmasına gerek yoktur, ama sitenin sürekli yayında kalması için kullandığımız bilgisayarın sürekli açık olması gerekir. Sunucumuzun bozulması durumunda sitemiz yayınlanamayacaktır. Bu ve bunun gibi durumlar için, çok hızlı olmayan iki ya da daha fazla bilgisayarı birbirine bağlayarak Yüksek Erişilebilirlik Kümeleri (High Availability Clusters) oluşturabiliriz.
Böyle bir sistem iki farklı şekilde düzenlenebilir. Birinci şekilde, uygulama bir bilgisayar üzerinde çalışır. Bu bilgisayarda sorun çıkması durumunda kullanıma hazır olan diğer bilgisayar bozulan bilgisayarın yerine çalışmaya başlar ve işlem aksamaz. İkinci şekilde ise, bütün bilgisayarlar aynı anda aynı işleri yapmaktadır ama bunların sadece birinin sonuçları kullanılmaktadır. Kullanılan bilgisayarın herhangi bir sorun yaşaması durumunda ise, zaten aynı işi yapmakta olan başka bir bilgisayar kullanılmaya başlanmaktadır.
Bahsi geçen bilgisayarda çalıştırdığımız uygulamanın önemine göre, böyle bir kümede kullanacağımız bilgisayar sayısı değişiklik gösterebilir. Normal şartlarda 2 bilgisayar bu iş için yeterlidir.
Kullanım Şekline Göre:
- Adanmış Kümeler (Dedicated Clusters) : Küme üyesi bilgisayarların sadece bu kümeye hizmet etmesi amacıyla kullanıldığı bilgisayar kümeleridir.
- Adanmamış Kümeler (Non-dedicated Clusters) : Küme üyesi bilgisayarların bazen bu kümeye hizmet etmesi amacıyla, bazense farklı amaçlarla kullanıldığı bilgisayar kümeleridir. Buna örnek olarak, sadece mesai saatleri içinde kullanılan bilgisayar salonlarını gösterebiliriz. Bir okul, mesai saatleri içinde öğrencilerinin kullanımına açtığı bir bilgisayar salonunu mesai saatleri dışında da, bir bilgisayar kümesi olarak kullanabilir. Bu şekildeki kümeler, adanmamış bilgisayar kümeleridir.
Üye Düzenine Göre:
- Homojen Kümeler (Homogeneous Clusters) : Bütün küme üyelerinin aynı donanıma sahip olduğu ve aynı işletim sistemini çalıştırığı bilgisayar kümeleridir. Böyle bir kümede çalıştırılacak bir uygulama, kümedeki bütün bilgisayarlara dağıtılabilir.
- Heterojen Kümeler (Heterogeneous Clusters) : Bazı küme üyelerinin farklı donanıma sahip oldukları ve farklı işletim sistemleri çalıştırdıkları bilgisayar kümeleridir. Böyle kümelerde, farklı işletim sistemlerinde ya da donanımlarda çalışması gereken uygulamalar aynı kümenin farklı gruplarında çalıştırılabilir. Genellikle yeni oluşturulan bir bilgisayar kümesi heterojen olarak oluşturulmaz ama daha sonra büyütülmek istenen bir küme, heterojenleştirilerek büyütülmek zorunda kalınabilir.
Üye Uzaklıklarına Göre:
- Toplu Kümeler (Collected Clusters) : Bütün küme üyelerinin fiziksel olarak da birbirine yakın olduğu, aynı bina içinde bulundukları bilgisayar kümeleridir.
- Dağınık Kümeler (Distributed Clusters) : Küme elemanlarının tamamının aynı bölgede bulunmadığı bilgisayar kümeleridir.
Bilgisayar Kümelerinin Dereceleri:
- Grup Kümeler : 2-99 bilgisayarlı kümeler.
- Şube Kümeleri : 10-100 bilgisayarlı kümeler.
- Teşkilat Kümeleri : 100'den fazla bilgisayarı olan kümeler.
- Ulusal Kümeler : Ülke çapında birçok bilgisayarın bağlı olduğu kümeler.
- Uluslararası Kümeler : Uluslararası 1000'den fazla bilgisayarın internete dayalı olarak birbirine bağlı olduğu kümeler.
Izgara (Grids)
"Grid" kelime olarak ızgara (kesişen yatay ve dikey çizgiler) anlamına gelir. Grid Computing, birden fazla bilgisayar kümesinin (Computer Cluster) birbirine bağlanıp yeni bir küme oluşturularak çalıştırılmasıdır. Yani 'Grid' bilgisayar kümeleri kümesidir (Cluster of clusters). Bir 'Grid'in üyeleri genelde birbirinden uzakta ve birbirine çok hızlı olmayan bir bağlantı ile bağlıdır. Bu tür işlemlerde, bir iş birbirinin ara ürünlerine ihtiyaç duymayacak şekilde bölünür ve farklı kümelere dağıtılır. Daha sonra her bir kümenin sonucu toplanır ve toplam sonuç elde edilir.