Makalemizin ana konusu bilindiği gibi SQL Server 2012 ile gelen Alwayson özelliğine değinmekti. Makalemizin son bölümünde SQL Server 2012 üzerinde Alwayson özelliğinin nasıl kullanılacağına ve bir AlwaysOn Availability Groups’un nasıl oluşturulacağına değiniyor olacağız. Ayrıca SQL 2012 Alwayson’un sahip olduğu ve getirdiği yeniliklere http://technet.microsoft.com/en-us/library/hh510230.aspx bu adresten göz atmanızı öneririm.
Hazır isek SQL sunucularımız üzeride Alwayson’un aktif edilmesi işlemini başlatalım.
SQL server üzerinde Always On özelliğini aktif edebilmek için öncelikle sunucuların bir Cluster’ın üyesi olması gerekmektedir. Makalemizin önceki adımlarında bu işlemi tamamlamış bulunmaktayız. Kurulumunu tamamlamış olduğumuz SQL sunucular da Always On’u aktif etmek için gerekli tüm ön koşullara sahibiz.
SQL sunucularımızda Always On’u aktif edebilmek için SQL Server Configuration Manager’ı açıyoruz.
SQL Server servisine Sağ tıklıyor ve Properties diyoruz.
AlwaysOn High Availability tabına geçiyoruz ve Enable AlwaysOn Availability Groups seçeneğini işaretliyoruz ve arından OK diyoruz.
İşlem sonrasında karşımıza bu işlemin SQL Server servisinin yeniden başlatıldığında aktif olacağına dair bir uyarı çıkmaktadır. OK diyoruz ve yine aynı konsol üzerinden SQL Server servisine Sağ tıklıyor Restart diyoruz.
Yeniden başlatma sonrasında artık SQL sunucularımızda AlwaysOn aktif hale gelecektir.
AlwaysOn İle Availability Groups Yaratma
Her iki Node üzerinde de Always On u aktif etikten sonra Availability Groups oluşturmamız ve ilgili Databaselerimizi bu gruba dâhil etmemiz gerekmektedir. Bu işlem öncesinde ise Database tarafında Full backup alma zorunluluğumuz bulunmaktadır.
Senaryomuz gereği dbTest isimli Database in işlem öncesinde Full Backup ını alıyor olacağız.
NOT : Bu databaseler için Recovery model’in Full olarak seçilmiş olması gerekmektedir.
SQL Server 2012’de Bir Database’in Full Backup’ını Alma
SQL Management Studio ile Full Backup’ı alınacak Database’e sağ tıklanır ve Task kısmından Backup seçilir.
Eğer Backup farklı bir lokasyon a kaydedilmek istenilmiyor ise yeni açılan pencereden OK a tıklanarak hızlı bir şekilde ilgili Database’in Full Backup’ı alınabilir.
İlgili Database için Full Backup alma işlemi tamamlandıktan sonra artık SQL Server için Availability Groups oluşturma işlemini başlatabiliriz.
AlwaysOn Hight Availability Group Oluşturma
Bu işlem için SQL Server Management Studio’yu açalım ve AlwaysOn Hight Availability alanında sağ tıklayarak New Availability Group Wizard’ı çalıştıralım.
Oluşturmayı planladığımız Availability grup için bir isim belirtiyoruz.
Bu grubun üyesi olacak Database veya Databaseleri belirtiyoruz.
Next diyerek işlem adımlarımızı devam ettiriyoruz.
İlgili database için Replika sunucusunu belirtiyoruz. İşlem için Add Replica butonuna tıklıyoruz ve ortamımız da bulunan diğer Cluster üyesi Database sunucusunu yapımıza ekliyoruz.
Eklenilen sunucular için Rolleri atıyoruz. Primary ve Secondary sunucuları belirledikten sonra Automatic Failover seçeneğini aktif ediyoruz. Senaryomuz gereği biz Secondary database’i okunabilir olarak işaretliyoruz. İkincil database’in okunabilir olması yapınıza uygun ve size esneklik sağlıyor ise tercih edebilirsiniz. Birincil database’e yazma işlemleri yapılır iken Secondary database ise sorgulama işlemleri için veya yedekleme işlemleri için kullanabilirsiniz.
Endpoints lerimizi belirtiyoruz. Burada dikkat etmemiz gereken nokta Endpointlerimiz için kullanılan port için Firewall’da ilgili portun açılmış olmasıdır. Endpointler SQL sunucuların kendi aralarında replikasyon işlemleri için haberleşmeyi sağlamaktadır.
Yedekleme işlemleri ile ilgili ayarlarımızı yapılandırıyoruz. Senaryomuz gereği ben Prefer Secondary seçeneğini kullanacağım. Eğer Secondary sunucum kullanılabilir ise yedekler bu sunucu üzerinden eğer kullanılabilir durumda değil ise yedekler Primary sunucum üzerinden alınacaktır.
Eğer SQL sunucularınıza Cluster servisinin IP veya Hostname’i ile değilde farklı bir IP veya Hostname ile SQL sunucularınıza erişmek istiyor iseniz Listener tanımlamanız gerekmektedir.
Senaryomuzda bizim Cluster servisimizde sadece SQL çalışmakla fakat ne anlam ifade ettiğini anlamak adına Listener ekliyoruz.
ÖNEMLİ NOT : Listener’ın sorunsuzca oluşturulabilmesi için Cluster’a ait Computer objesinin bulunduğu Container içerisinde Computer Objesi Create etme yetkisine sahip olması gerekmektedir aksi takdirde aşağıdaki gibi bir hata alınacaktır.
Data senkronizasyonu için bu işlemin hangi metot ile yapılması gerektiğini belirtiyoruz.
Yapmış olduğumuz işlemlerin doğruluğu kontrol edilmektedir.
Görüldüğü gibi herhangi bir sorunumuz bulunmamaktadır. Next diyerek işlemleri başlatmak adına bir sonraki aşamaya ilerliyoruz.
Yapılan işlemlerin bir özeti görülmektedir. Finish diyerek işlemlerin tamamlanmasını bekliyoruz.
Tüm işlemlerimiz başarılı bir şekilde tamamlanmış olup Close diyerek işlemlerimizi sonlandırıyoruz.
Görüldüğü gibi SQL 2012 üzerinde başarılı bir şekilde Availability grubumuzu oluşturduk.
Bu makale ile birlikte adım adım SQL Server 2012 AlwaysOn Cluster işleminin nasıl yapılacağı konusunda değindik. Dilerim bu konuyla ilgili detaylı kaynak arayanlar ve bu işlemi ilk defa yapacak kişiler için yararlı bir makale olmuştur.
Bu makale ile ilk defa Alwayson’u tanıyanlar için ise SQL 2012 ile gelen ve Hight Availability tarafında ciddi yenilikler ve teknolojiler sunan Alwayson mimarisini daha ayrıntılı incelemelerini, Failover Cluster dışında Multiside Clustering gibi ileri seviye konularıda araştırmanızı öneririm.
Saygılarımla.