Home Map Index Search News Archives Links About LF
[Top bar]
[Bottom bar]
Bu makalenin farkl� dillerde bulundu�u adresler: English  Castellano  Deutsch  Francais  Nederlands  Turkce  

convert to palmConvert to GutenPalm
or to PalmDoc

[Photo of the Author]
taraf�ndan Atif Ghaffar

Yazar hakk�nda:

Atif bir bukalemondur. Rollerini sistem y�neticisinden programc�ya, proje y�r�t�c�s�ne, i�ini yapmak i�in icap eden herhangi bir seye �evirebilir.
Onu bazen tuvalette otururken laptopunda programlama yaparken yada belge yazarken bulabilirsiniz.
Atif onun ��retmeni oldu�u i�in Linux'a ve a��k-kaynak toplulu�una kendisinin pek bor�lu oldu�unu d���n�r.
Onun hakk�nda daha fazla bilgiyi onun anasayfas�ndan edinebilirsiniz.


��erik:

Linux alt�nda Y�ksek Eri�ilebilirlik(High Availability)

�eviri : Cem Y�ld�z

High Availability systems under Linux -- Image borrowed from http://lwn.net/Gallery/i/suits.gif

�zet:

�zel ama�l� kritik sistemler tasarlanca�� zaman, ya ak�c� �emaland�rma esnas�nda yada onu fiziksel olarak paketlerle, kablolarla vs in�a ederken, birinin �u sorular� sormas� gerekir:

Bu sorular� kendi kendime sordu�um zaman �o�u kez ayn� cevaplara ula��yorum.
��ten kovulaca��m :)


Di�er taraftan kendi kendime "��letim Sistemi bozulacak m�" diye sordu�umda �u cevaba ula��r�m.
Hay�r. 1 bit rekabetine dayanamayan bir 2 bit �irketi taraf�ndan yaz�lm��, �zg�n bir �ekilde 4 bit micro i�lemci i�in �ifrelenmi�, bir 8 bit i�tetim sistemine 16 bit yama i�in olan, 32 bit ilavelerini �ali�t�rm�yorsunuz ki.(bir .sig'den ula�t�)

�imdi birka� ciddi tart��ma i�in.



 

Neden YE (HA)?

Linux'a g�z�m kapal� guvendi�im halde, makineleri, g�� sa�lay�c�lar�n�, a� kartlar�n�, anakartlar� vs. �reten �irketlere g�venmem ve onlardan birisi bozulursa sistemimin kullan�lamaz olaca��ndan daima korkar�m. Bundan dolay� servis ula��lamaz olacak, �stelik benimle do�rudan alakal� olmad��� halde b�t�n �irket servislerini kapal� hale getirece�im. �rne�in



Ayn� �ey bir Windows Sunucusu �zerinde de meydana gelebilir; fakat onu bilgisizler kullanmaya al��t��� i�in onun hakk�nda �ok fazla hoo haa olmayacakt�r ama dikkatinizi �ekiyorum: Bu bir Linux paketinde oluyor olsa, y�netimden �ok fazla "sen sadece Linux'a g�venemezsin", vs s�zleri olacakt�r.


 

YE (HA) nedir?

Y�ksek Eri�ilebilirlik onun ne oldu�unu s�yleyen bir�eydir.
Y�ksek Eri�ilebilir bir�ey.

�irketinizin i� g�r�rl���n� korumak i�in ger�ekten �nemli birtak�m hizmetler.
�rnek:

Bu hizmetler iki nedenden dolay� aksayabilirler. Donan�m aksakl�klar� i�in y�netim taraf�ndan donan�m sipari�i verilirken bir �ok �nlem al�nabilir, �rne�in, her makinenin fazla g�� sa�lay�c�s�, Raid 5'i vs. olabilir.
S�k s�k kontrol alt�nda olan yaz�l�m aksakl�klar�d�r.
�ster inan�n ister inanmay�n, daha �nce A� kart�ndaki ani bir problem, CPU'nun a��r� �s�nmas� vs. nedeni ile Linux paketlerinin kapand���n� g�rd�m.

B�y�k patron, g�� sa�lay�c�s�n�n bozulmas� yada a� kart�ndaki bir aksakl�k neticesinde sistemin g��mesiyle ger�ekten ilgili de�ildir.
Partonunuzun, i��ilerin ve m��terilerin ilgilendi�i tek �ey servisin ula��labilir olmas� gerekti�idir.
Servis teriminin alt�n� �izdi�imi farkedin.
Tabiki servis bir makine �zerinde �al��maktad�r ve servisi ve istekleri di�er sa�l�kl� makinelere y�nlendirmek Y�ksek Eri�ilebilirlik sanat�d�r.

 

YE (HA) olu�turma �rne�i

Bu �rnekte, teorik olarak bir apache sunucu �zerinde �al��makta olan, intranete hizmet veren Etkin/Etkisiz k�me yarataca��z.
Bu ufak k�meyi olu�turmak i�in fazla RAM'i ve �ok CPU'su olan iyi bir makine ve sadece servisi �al��t�rmak i�in yeterli RAM/CPU'su olan di�er bir makineyi kullanaca��z.
�kinci makine yedekleme d���m� oluyorken, birincisi ana d���m olacakt�r. Yedekleme d���m�n�n yapt��� i� e�er ana d���m cevap veremiyorsa ondan servisleri devralmakt�r.

 

Bu nas�l �al���r

Kullan�c�lar�m�z�n intranete nas�l eri�ece�ini sadece bir d���nelim.
Onlar kendi gezginlerine http://intranet/ yazacaklar ve DNS sunucusu onlar� 10.0.0.100'a (�rnek ip) y�nlendirecektir.


Bu intranet servisini �al��t�ran farkl� ip adresli iki sunucu koyarsak ve ana d���m devreden ��kt��� zaman DNS sunucusundan onu ikincisine y�nledirmesini istesek nas�l olur.
Tabiki bu bir se�enek, fakat istemciler �zerinde DNS belleklendirmesi vb. hakk�nda tart���lacak birka� nokta var ve belki DNS sucunusunu bir YE(HA) k�mesinin kendi �zerinde �al��t�rmak isteyeceksiniz. .
Di�er se�enek e�er ana d���m �al��maz ise durgun d���m onun ip'sini deralabilir ve isteklere hizmet vermeye ba�layabilir.
Bu y�ntem "�P devralma" diye adland�r�l�r ve �rneklerimizde kullan�yor olaca��m�z y�ntemdir. �imdi ana d���m DNS'e herhangi bir de�i�iklik yapmadan �al��masa bile, b�t�n gezginler onlar� 10.0.0.100 'a nakledecek olan http://intranet'e eri�eceklerdir.

 

K�meler nas�l konu�ur

Ana/durgun d���mler k�medeki di�er d���m�n �al��mad���n� nas�l anlayacak?
Onlar bir seri kablo ve bir �apraz olarak ba�lanm�� Ethernet kablasu �zerinden birbirleriyle konu�acaklar (fazla olarak, seri kablo yada Ethernet kablosu i�levini yapmayabilir) birbirlerinin kalp at��lar�n�n dinleyecekler (evet t�pk� sizin kalp at��lar�n�z gibi). E�er kalp at���n�z durmu� ise, b�y�k bir ihtimalle �lm��s�n�z demektir.
K�me d���mlerinin kalp at��lar�n� g�r�nt�leyen programa ...tahmini... kalp at��� denir.
Kalp at���na buradan eri�ilebilir http://www.linux-ha.org/download/
�p adresi devralmaya yarayan bu program sahte olarak adland�r�l�r ve kalp at���nda hesaplanm��t�r.

�ki makineyede koymak i�in fazladan bir a� kart�n�z yoksa, kalp at���s�n� sadece bir seri kablo (kukla modem) �zerinden �al��t�rabilirsiniz.
Di�er yandan a� kartlar� ucuzdur, bu nedenle fazla olarak ba�ka bir tane daha ekleyin.

 

K�me d���mlerini haz�rlamak

Daha �nce bahsetti�imiz gibi, birinde iyi makine di�erinde ise cok iyi olmayan bir makine kullanaca��z.
�ki makinenin de herbiri 2 a� kart�yla donat�lacak ve en az bir seri portu olacak.
Bir tane �apraz ba�lanm�� cat 5 RJ45 (Ethernet) kablosuna ve bir tane de kukla modeme (�apraz ba�lanm�� seri kablo) ihtiyac�m�z var.

Her iki makinedeki ilk a� kart�n� onlar�n Internet ip adresleri i�in kullanaca��z.(eth0)
Her iki makinedeki ikinci a� kart�n� udp kalp at���yla konu�an bir gizli a� i�in kullanaca��z. (eth1)


Her iki makineye de Internet ip adreslerini ve isimlerini verece�iz.
Her iki d���m�n eth0'�na �rnek olarak �unlar� g�sterebiliriz:
10.0.0.1 ip adresiyle clustnode1
10.0.0.2 ip adresiyle clustnode2

�imdi sabit olmayan bir ip adresi (bu daha �nce alt�n� �izdi�im servis ip adresidir) 10.0.0.100(intranet)'� kaydedece�iz. Bu anda onu herhangi bir makineye atamamiza gerek yok

Bir sonraki ad�mda makinelere ikinci a� kartlarini i�in ayar yapaca��z ve onlara kullan�lmayan bir geni�likten herhangi bir ip adresi verece�iz.

clustnode1 ip adresi 192.168.1.1
clustnode2 ip adresi 192.168.1.2

Sonra makinelerin 1 yada 2 Seri portuna uzanan seri kablolara ba�lant� kuraca��z ve onlar�n �al���yor/birbirleriyle konu�uyor oldu�undan emin olaca��z.
(herbir makinenin ayni portuna ba�land���n�zdan emin olun, en kolay yolu budur)
Buraya bir bak�n http://www.linux-ha.org/download/GettingStarted.html

 

Kalp at���n�n kurulmas�

Yaz�l�m� kurmak kolayd�r, kalp at���na ikili tabanl� olan ve kaynak paketleri �eklinin her ikisine de rpm ve tar.gz uzant�s�nda eri�ebilirsiniz.
Yaz�l�m� kurarken bir sorunla kar��la��rsanan�z, b�y�k ihtimalle bir YE(HA) sistemi kurmak i�in sorumluluk almam�� olmal�s�n�z. (YE(HA) olmayacak, belki o DE (NA) olacak)
M�kemmel bir Getting Started with Linux-HA klavuz mevcut, bu nedenle bilgileri buraya tekrar kopyalamayaca��m.

 

K�meyi ayarlamak

Kalp at���n� d�zenleyin

�rne�in kalp at��� ayar dosyalar� /etc/ha.d i�indeyse
sonra
/etc/ha.d/authkeys dosyas�n� en sevdi�iniz edit�rle d�zenleyin.

#/etc/ha.d/authkeys
auth 1
1 crc
#end /etc/ha.d/authkeys

Sonra rahat oldu�unuz zaman md5 yada sha'ya y�nelebilirsiniz, ilk denemede do�rulama mekanizmas�n� 1 olarak b�rak�n.

/etc/ha.d/ha.cf dosyas�n� d�zenleyin

debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility     local0
deadtime 10
serial  /dev/ttyS3  #bunu uygun bir portla de�i�tirin ve bu bilgi b�l�m�n� silin
udp     eth1      #ikinci a� kart�n� kullanm�yorsan�z bu sat�r� silin
node    clustnode1
node    clustnode2


/etc/ha.d/haresources dosyas�n� d�zenleyin
#masternode ip-address service-name
clustnode1 10.0.0.100 httpd
bu anad���m� clusternode1 olarak tan�mlar, �rne�in clusternode1 �al��ma�� zaman clusternode2 servisi devralacak, fakat clusternode1 geri geldi�i zaman, kendi servisini d�zeltecek. Bu iyi olan bir makine ve iyi olmayan makine kullan�yor olmam�z�n nedenidir (clusternode1 iyi makinedir)
�kinci madde servisle birlikte devral�nmas� gerekli olan ip adreslerini tan�mlar, ve ���nc� madde servisin ismini tan�mlar
Makine1 servisi devrald��� zaman, �unu derlemeye �al��acak
/etc/ha.d/httpd start
e�er dosyay� bulamazsa �unu deneyecek
/etc/rc.d/init.d/httpd start

Bir servis geri b�rak�ld��� zaman benzerli�in oldu�u do�rudur e�er clusternode2 bir servisten geri b�rak�rsa, o �unu yapmaya �al��acak
/etc/ha.d/httpd stop
e�er dosyay� bulamazsa �unu deneyecek
/etc/rc.d/init.d/httpd stop
clusternode1 �zerindeki ayarlamalar�n�z bitti�inde, dosyalar� node2'ye kopyalayabilirsiniz.
/etc/ha.d/rc.d dizininde ip adresi vs atama g�revini yapan ip-request vs isimli bir betik bulacaks�n�z.
�imdi her iki makinedeki /etc/rc.d/init.d/heartbeat'i ba�lat�n.
http sunucusu taraf�ndan hizmet verilecek makineler �zerinde farkl� bir index sayfas� olu�turun.

�rne�in.
clustnode1 �zerinde

echo hello world from clustnode1 >/yourWwwDocRoot/index.html
ve clustnode2 �zerinde
echo hello world from clustnode2 >/yourWwwDocRoot/index.html

her iki d���m �zerinde httpd servisinin a��l��ta otomatik olarak ba�lamad���ndan emin olun, rcN dizinlerindeki ba�lant�lar� silin yada daha iyi olarak her iki makine �zerindeki "httpd" yada "apache" ba�lang�� betiklerini /etc/rc.d/init.d/ dizininden /etc/ha.d/rc.d/ dizinine ta��y�n.
Her�ey d�zg�n bir �ekilde kurulmu�sa ve kalpat��� �al���yor ve ileti�im kurabiliyorsa, clusternode1 10.0.0.100 ip adresine sahip olacak ve http isteklerine cevap veriyor olacak.
onu iki kez deneyin ve cevap verdi�inden emin olun. E�er her�ey iyi g�z�k�yorsa, clusternode1'i kapat�n, 10 saniye i�inde clusternode2 servisi ve ip adresini devralacakt�r.
Sizin en fazla d��me zaman�n�z 10 saniye olacakt�r.

 

Veri b�t�nl��� sorunu ne olacak

httpd servisi node1'den node2'ye ta��nt��� zaman ayn� veriyi g�rmez. Benim httpd CGI'lar�mla yarat�yor oldu�um t�m dosyalar� serbest b�rak�yorum. .

�ki cevap:
1. Kendi CGI'n�zdan dosyaya asla yazmamal�s�n�z.(onun yerine bir a� veritaban� kullan�n...MySQL olduk�a iyidir)
2. �ki d���m� merkezi bir SCSI deposununa ba�l�yabilirsiniz ve bir zamanda sadece bir tanesinin onunla konu�tu�undan emin olun, ve a makinesi �zerindeki kart�n SCSI tan�mlay�c�s�n� 6'ya �evirdi�inizden ve b makinesindekini ise 7 olarak b�kart���n�zdan yada bunun tersinden emin olun.
Bunu ben Adaptec 2940 SCSI kartlar�yla denedim ve onlar SCSI tan�mlay�c�s�n� de�i�tirmeme izin verdiler. En ucuz kartlar bunu yapman�za izin vermeyecektir.
Baz� Raid denetleyicileri k�menin-fark�nda denetleyiciler olarak sat�l�rlar fakat �undan emin olun ki �reticiler Microsoft cluster kit'i sat�n almadan kart�n konak tan�mlay�c�s�n� (HOST ID) de�i�tirmenize izin vermeyecektir.
HP'den NetRaid d�n��t�r�c�lerine sahiptim ve onlar kesinlikle Linux'u desteklemezler. Para harcama hakk�nda iyi duygulara sahip olmak i�in onlar� b�karmak zorunda kald�m.

Sonraki ad�m ufak bir SAN yaratmak i�in Fibrechannel kartlar�, bir fibrechannel hub ve bir Fibrechannel depo birimi sat�n almak olacakt�r, onlar kesinlikle payla��ml� SCSI kullanmaktan daha maliyetlidir fakat onlar iyi bir yat�r�md�r.
T�m makinelerin sanki yerel bir depo gibi olu�turdu�u depo birimine saydam eri�ime sahip olman�za izin veren FC �zerinde GDS(GFS) (Genel Dosya sistemi, a�a��daki kaynaklara bak�n�z) �al��t�rabilirsiniz.

Biz 2 si yukar�da tarif etti�im YE(HA) d�zenlemesine benzeyen 8 makine �zerinde yap�m ortam�nda GDS(GFS) kullan�yoruz

 

Etkin/etkin k�meden ne haber

E�er ayn� anda olan eri�ime izin veren iyi bir depolama sisteminiz varsa kolay bir �ekilde Etkin/Etkin sunucuyu in�a edebilirsiniz. Fibrechannel ve GDS(GFS) �rnekleridir.
E�er NFS gibi A� dosya sisteminizden ho�nutsan�z, bunu kullanabilirsiniz fakat tavsiye edemeyece�im.

Ne olursa olsun, servisA'yi clusternode1'e ve servisB'yi clusternode2'ye kopyalayabilirsiniz, benim kaynak dosya �rnegim:

clustnode2 172.23.2.13 mysql
clustnode1 172.23.2.14 ldap
clustnode2 172.23.2.15 cyrus
Depolama i�in GDS(GFS) kullan�yorum, bu nedenle veriye ayn� anda olan eri�imlerle bir problemim yok ve bu makineler taraf�ndan y�netilebilir olabildi�ince �ok servis �al��t�rabiliyorum.
Burada ldap i�in clusternode1 esas oluyorken clusternode2 mysql ve cyrus i�in esas olmaktatad�r.
E�er clusternode2 �al��mazsa clusternode1 t�m ip adreslerini ve servisleri devral�r.

 

Kaynaklar

Linux-HA.org
Linux YE(HA)'n�n ana sayfas�
kimberlite k�melendirme teknolojisi
Bir Kimberlite K�mesi, bir aktif-aktif hatas�z ortamda bir payla��ml� SCSI yada Fibre Channel depolama altsistemine ba�lanm�� iki sunucu d���m� i�in destek sa�lar. Yaz�l�m, herhangi iki d���mden birinin k�meden ayr�ld���n� farketme yetene�i sa�lar, ve otomatik olarak, artakalan d���m �zerindeki uygulamalar� yeniden ba�latmak i�in gerekli olan i�lemleri yapan iyile�tirme betiklerini ba�latacakt�r. D���m k�meye yeniden kat�ld��� zaman, uygulamalar gerekirse elle veya otomatik olarak, ona geri ta��nabilir. �rnek iyile�tirme betikleri temin edilir. Kimberlite en y�ksek derece veri sa�laml��� vermek i�in tasarlanm��t�r ve son derece etkindir. De�i�tiril(me)mi� Linux uygulamalar� i�in y�ksek eri�ilebilirlik gerektiren herhangi bir ortama yay�l�m i�in uygundur.
ultra monkey
Ultra Monkey, Linux i�letim sisteminde A��k Kaynak bile�enlerini kullanan yerel bir a� �zrerinde y�k dengeli ve y�ksek eri�ilebilir servisler yaratmak i�in olu�turulmu� bir projedir. Bu a�amada teknoloji kolayca di�er email ve FTP gibi servislere geni�letilebilir oldu�u halde, odak, derecelendirilebilen, y�ksek eri�ilebilir bir g�rsel y�re �iftli�i �retme �zrerindedir.
Linux Virtual Sunucu
Linux Virtual Sunucu, Linux i�letim sisteminde �al��an y�k dengeleyicisiyle birlikte, ger�ek sunucular�n bir k�mesi �zerinde in�a edilmi�, y�ksek derecelendirilebilir ve y�ksek eri�ilebilir bir sunucudur. K�me mimarisi son kullan�c�lara g�r�lmezdir. Son kullan�c�lar sadece tek bir virtual sunucu g�r�rler.
4U k�mesi / 4U SAN (Utand�r�c� tapa)
4U k�mesi ve 4U SAN, �irketimiz 4Unet taraf�ndan sa�lanan YE(HA) k�mesi and SAN yerine getirmesidir.
E�er bir ISS, Ta��y�c�, yada bir telecom �irketi iseniz ve tasarlanmak ve yerine getirilmek i�in Y�ksek Eri�ilebilirlik ��z�mlerine ihtiya� duyuyorsan�z, 4Unet istemek i�in do�ru yer olacak.
Not: 4Unet bir tamamlay�c�d�r, onlar k�meleri yada SANlar� satmazlar, m��terileri i�in onu yerine getirirler. B�t�n teknolojiler bu k�meler/SAN a��k kaynak oldu�u i�in bunlar� kulland�lar.
4Unet'in hedef m��erileri sadece ISSler, Ta��y�c�lar(Carrier) ve telekom �irketleridir.
Genel Dosya Sistemi
Genel Dosya Sistemi (GDS) bir payla��ml� disk k�mesi dosya sistemidir. GDS makalelendirmeyi ve istemci bozulmalar�n�n iyile�tirmelerini destekler. GDS k�me d���mleri fiziksel olarak Fibre Channel yada SCSI ayg�tlar� vah�s�tas�yla ayn� depoyu payla��rlar. Dosya sistemi herbir d���m �zerinde yerel olarak g�n�n�r ve GDS k�meye kar�� dosya eri�imini e�zamanlar(senkronize eder). GDS(GFS) tamamen simetriktir, ki b�t�n d���mler e�ittir ve bir t�kan�kl�k yada tek bir ba�ar�s�zl�k noktas� olabilecek hi�bir sunucu yoktur. GDS, t�m UNIX sistem semantiklerine bak�yorken okuma ve yazma belleklendirmesini kullan�r.
 

Bu yaz� i�in g�r�� bildiriminde bulunabilirsiniz

Her yaz� kendi g�r�� bildirim sayfas�na sahiptir. Bu sayfaya yorumlar�n�z� yazabilir ve di�er okuyucular�n yorumlar�na bakabilirsiniz.
 talkback page 

G�rsely�re sayfalar�n�n bak�m�, LinuxFocus Edit�rleri taraf�ndan yap�lmaktad�r
© Atif Ghaffar , FDL
LinuxFocus.org

Buray� klikleyerek hatalar� rapor edebilir ya da yorumlar�n�z� LinuxFocus'a g�nderebilirsiniz
�eviri bilgisi:
en -> -- Atif Ghaffar
en -> tr Cem Y�ld�z

2001-02-10, generated by lfparser version 2.9