Please Donate to Bitcoin Address : [[address]]

Donation of [[value]] BTC Received. Thank You.
[[error]]

HA Network ihtiyacı olanlara çözümler – LACP Bonding

Merhabayın.

Bu blog yazısında high-available network ihtiyacı olanlara kernel seviyesinde ağ arayüzlerini nasıl yüksek erişilebilir olarak yapılandırabileceklerinden bahsedeceğim.

Bu günlerde otu boku clusterlamakla uğraştığımdan, bugüne kadar clusterlamadığım tek bir mekanizma olduğu gerçeği kafama dank etti. O da ağ erişilebilirliğinin kendisi.

Cluster mı? HA mı? Ne diyosun diyenlere bir özet geçeyim.

Sistemcilerin büyük dertlerinden biri de verdikleri servislerin failover mekanizmalarının olması ve bu servisleri çeşitli felaket senaryolarına göre ayarlamaktır. Yani bugüne kadar adam akıllı sistem yöneticisi olarak çalışmış herkes bir servis grubunu yüksek bulunur ve otomatik failover mekanizmalarıyla beraber kümelemeye çalışmıştır. Bir senaryo örneği vereceğim basitçe. Bir web servisi koşturuyorsunuz, uygulamanız da veritabanı olarak arkada herhangi bir SQL ve/veya NoSQL veritabanı kullanıyor. Gün geldi oldu ya, web servisinin koştuğu makine bir anda kapandı. Ya da SQL sunucunuzun koştuğu makineye herhangi bir sebepten dolayı ağ üzerinden erişilemez duruma geldi. Ya da oldu ya talih bu, işinizi iyi yapmadınız ve sunucunuzda kök dosya sisteminin bağlı olduğu fiziksel disk doldu sizden habersiz, işletim sisteminiz de I/O gerçekleştirebilecek alan bulamadığından web servisiniz çalışamaz duruma geldi. Bu durumların hepsinde de servis kesintisine uğradınız. Müşteriler mutsuz, patron mutsuz, herkes mutsuz.

İşte bu gibi senaryoları en kısa servis kesintisiyle atlatmak sistem yöneticilerinin en önemli görevlerinden biri. E bunu nasıl yapıyoruz? Benim gözlemlediğim, günümüzde her uygulamanın ya kendi failover mekanizmaları yazılımın kendi içersinde geliştiriliyor ya da bu işi yapmak üzere tasarlanmış, koşturduğunuz uygulamadan bağımsız üçüncü parti clustering ve HA fonksiyonlarını sisteminize entegre edebileceğiniz bir dizi yazılımı düzgün bir şekilde ayarlayarak bu işi yapabiliyoruz. Yukarıdaki senaryo için her bir servis bileşeninizi ayrı-ayrı yüksek bulunur ve failover edebilecek şekilde ayarlamalısınız demek oluyor bu. Yani atıyorum nginx koşturuyorsanız, nginx servislerinizi yine atıyorum 3 ayrı makineye yayıp, öne bir HAProxy, corosync+pacemaker ile bu 3 nginx web servisi için HA ve failover sağlayabilirsiniz. Ya da arkadaki nosql veritabanınız atıyorum mongodb ise, mongodb’nin failover ve HA mekanizmaları için yazılımın kendi içersinde deployment metodları (replika setleri vs) ve bir dizi ayarlar serisi gerektiren bir iş yükünüz var demek oluyor bu. Her bir bileşenin, projenizin sistem ayağında pros/cons değerlendirmesi ve kullanacağınız mekanizmaları seçmek de sizin işiniz bu arada.  Better safe than sorry demişler. İşleri en baştan sağlam tutmak her zaman en iyisidir.

Continue reading HA Network ihtiyacı olanlara çözümler – LACP Bonding

1 Mart 2017

Posted In: Sistem, Teknik

Etiketler:, , , , , ,

One Comment