Bu yazı dizimde
06.12.2014 tarihinde gittiğim SQL Saturday gününde katıldığım seminerlerden
bahsetmek istiyorum. SQL Saturday
konusunda kısaca bilgi verecek olursak SQL Pass tarafından her Cumartesi
dünyanın bir şehrinde düzenlenen bu etkinlikde
SQL Server konusunda hem lokal hemde uluslararası konusunda derin
deneyime sahip uzmanlar eğitimler veriyorlar.
Türkiye'de 4.sü
düzenlenen bu eğitim Microsoft Türkiye ofisinde yapıldı. 5 ayrı salonda
toplam 30 'a yakın seminerden oluşmakta.
Bende bu etkinliği 4 senedir
katılıyorum.
4 senedir gittiğim
bu etkinlikde her yıla oranla katılımcı sayısı arttığını görmek çok
sevindirici. Ancak Microsoft'un verdiği destek konusunda baya sıkıntılı. Kötü
bir organizasyon ,kayıt yaptırıp kapılarda kalan insanlar, 45 dakika beklenen
yemek sırası, salonların ısıtma ve havalandırma problemi gibi bir sürü
problem. Ancak gerek SQL Server
Öncülerinin gösterdiği çaba gerekse eğitmenlerin teknik bilgisi ve tecrübeleri
hepsine bedel diye düşünüyorum.
Katıldığım
seminerlerden bahsedecek olursam ilk
katıldığım seminer Levent OKTAR
hocanın SQL Server 2014: High Availability and
Disaster Recovery Solutions semineriydi.
SQL Server ilk
versiyonlarından bu yana bu konu ile ilgili bazı çözümler sunmakta. Ancak son yıllarda iş sürekliliğinin
sağlanması ve felaket senaryoları konusunda önemin artması ile birlikte
database üreticileride bu konularda baya
geliştirmeler yapmışlardır.
- Replication
- Log Shipping
- Mirroring
- Failover Cluster
- Always-on
Seminerde bu 5 konu
üzerinde teorik bilgiler anlatıldı.
Ancak 2012 ile birlikte gelen Always-On demosu yapılabildi. 2012
öncesinde High Availability konusunda ve Disaster Recovery konusunda ilk 4
madde birlikte kullanılarak çözümler geliştirilmekteydi. 2012 ile birlikte
gelen Always-on ile birlikte bu 4 teknolojinin birlikte kullanılması ile elde
edilen HADR çözümlerini tek başına yapabilmektedir.
Bu yapı bize Server
seviyesinde koruma, Sql Server seviyesinde koruma sağlayabildiği gibi database
seviyesinde koruma ve client connection seviyesinde koruma sağlar.
Always-on konusunda
kısaca değinecek olursak öncelikle AlwaysOn Availability Groups arka planda
Windows Failover Clustering teknolojisi üzerinde çalışmaktadır. Ancak Failover
Cluster yapısı gibi ortak disk alanı olmasına gerek yoktur. İster shared disklere
ister lokal diskler üzerinde çalıştırılabilmektedir.
Always-On
kurulumunda öncelikle kurulacak server üzerinde yukarıdada belirttiğim gibi
Windows Failover Cluster teknolojisi kurulu olmalıdır. Windows Server Failover cluster yapısı
kurulumunda 2 serverda da aynı versiyon işletim sistemi kurulu olmalıdır. Aynı updateler yapılmış olmalıdır.Ancak
failover cluster yapısında olduğu gibi
ortak bir shared disk alanı bulunmasına gerek yoktur.
Bu yapıda yer alacak
tüm serverlar aynı domain içinde bulunmalıdır. Ayrıca tüm serverlar Failover
Cluster yapısına eklenmelidir.
Üzerilerinde domain yapısı kurulu olmamalıdır. Tüm veritabanları Full
Recovery modda olmalıdır.
Avalibality groupu
senkron ve asenkron olarak iki farklı
şekilde tanımlayabiliyoruz.
Senkron modda bir transactionın
başarılı olması için tüm replicalarda tamamlanmış olması gerekmektedir. Ancak
buda transaction'un geç bitmesine neden olmaktadır. Ancak replikalar arasında
veri tutarlılığı sağlar. Asenkron modda
ise primary serverda tamamlanan her transaction replicalarda da tamamlanmış
sayılacağı için işlemler hızlı olmaktadır ancak veri bütünlüğü ve tutarlılık
garanti edilmez.
Yukarıdada
anlattığım gibi failover cluster yapısından farklı olarak shared disk
gereksinimi olmadığı farklı subnetlerde kurulum yapılabilir. Ve hatta Azure
üzerine bile replika kurulumu yapılabilir.