Site icon Baki ÇUBUK

Microsoft SQL Server 2025 Always On Availability Group Kurulumu 4

Merhaba

Bu yazı dizimizde Microsoft SQL Server 2025 Always On Availability Group mimarisinin kurulumunu inceliyoruz.

Yazı dizisi beş bölümden oluşuyor:

Bölüm 1 – Windows Server Failover Cluster (WSFC) Kurulumu 
Bölüm 2 – Microsoft SQL Server 2025 Kurulumu
Bölüm 3 – SQL Server 2025 Bileşenleri Rehberi
Bölüm 4 – Always On Ön Hazırlık ve Servis Ayarları (Bu Yazı)
Bölüm 5 – Availability Group Kurulumu ve Failover Testi

Bu yazımızda Always On Availability Group mimarisine geçmeden önce, SQL Server servisleri üzerinde yapılması gereken kritik ön hazırlık ve ayarları ele alacağız.

Always On Öncesi Zorunlu Ön Yapılandırma

W25SQL25NOD1 ve W25SQL25NOD2 isimli sunucularımız üzerinde Always On yapılandırmasına geçmeden önce, SQL Server Configuration Manager konsolu üzerinde yapılması gereken bir zorunlu ayar bulunmaktadır.

Zorunlu Adım: Enable Always On Availability Groups

SQL Server Services menüsü altında yer alan SQL Server (MSSQLSERVER) servisi üzerinde Enable Always On Availability Groups seçeneğinin aktif edilmesi zorunludur.

Bu ayar, SQL Server instance’ının Windows Server Failover Cluster (WSFC) altyapısı ile entegre çalışmasını sağlar ve Availability Group bileşenlerinin kullanılabilmesi için temel bir gereksinimdir. Bu seçenek aktif edilmeden Always On mimarisi devreye alınamaz.

Bu ayar her iki node üzerinde de uygulanmalıdır. Aksi halde Microsoft SQL Server Management Studio (SSMS) üzerinden Always On High Availability menüsüne tıkladığınızda hata alırsınız.

Named Pipes Protokolü Hakkında Önemli Bir Not

Named Pipes protokolü Always On Availability Group için zorunlu değildir. Always On replikaları arasındaki tüm iletişim, TCP/IP protokolü üzerinden Database Mirroring Endpoint (varsayılan TCP 5022) ile sağlanır.

Named Pipes yalnızca şu durumlarda gündeme gelebilir:

Güvenlik açısından, ihtiyaç duyulmadıkça Named Pipes protokolünün Disabled durumda bırakılması önerilir. Bu yazıda Named Pipes yapılandırması isteğe bağlı bir adım olarak gösterilmektedir; Always On’un çalışması için gerekli değildir.

Bunun yerine, TCP/IP protokolünün Enabled olduğundan emin olunmalıdır bu, Always On için gerçekten kritik olan ayardır.

W25SQL25NOD1 Üzerinde Yapılandırma

Mevcut Durum Kontrolü

W25SQL25NOD1 isimli sunucumuz üzerinde Microsoft SQL Server Management Studio (SSMS) konsolunu açıyoruz.

Connect ekranında Connection Properties bölümü altında:

Not: Trust Server Certificate seçeneği LAB, TEST ortamlarında veya self-signed sertifika kullanılan senaryolarda tercih edilir. PROD ortamlarda güvenilir bir iç CA veya public CA tarafından üretilmiş sertifikalar kullanılmalı ve bu seçenek kapalı bırakılmalıdır.

Connect seçeneği ile W25SQL25NOD1 isimli sunucumuza bağlantı sağlıyoruz.

W25SQL25NOD1 isimli sunucumuza bağlantı sağlıyoruz. -burayıkontrolet-Düzenledikburda

Always On High Availability menüsüne tıkladığımızda aşağıdaki gibi hata alıyoruz. Bu hata, Enable Always On Availability Groups seçeneğinin henüz aktif edilmediğini gösterir.

SQL Server Configuration Manager

SQL Server Configuration Manager konsolunu açıyoruz. Bu araç, SQL Server servislerinin yönetimi ve Enable Always On Availability Groups seçeneğinin etkinleştirilmesi için kullanılan temel yönetim aracıdır.

SQL Server Configuration Manager konsolununda SQL Server Services seçeneğine tıklıyoruz. -burayıkontrolet-Düzenledikburda

SQL Server Services seçeneğine altında listelenen servisler arasından SQL Server (MSSQLSERVER) servisi üzerinde sağ tıklayarak Properties seçeneğini seçiyoruz.

SQL Server (MSSQLSERVER) Properties ekranında Always On Availability Groups sekmesine tıklıyoruz.

Enable Always On Availability Groups seçeneğini işaretliyoruz.

Bu ayar, SQL Server instance’ının Always On High Availability özelliğini aktif hale getirir ve Windows Server Failover Cluster (WSFC) altyapısı ile entegre çalışmasını sağlar.

Not: Bu seçenek işaretlenmeden Availability Group oluşturulamaz.

SQL Server (MSSQLSERVER) Properties ekranında Enable Always On Availability Groups seçeneğini işaretlidikten sonra Apply seçeneğine tıklıyoruz.

Warning ekranında yapılan yapılandırmanın geçerli olabilmesi için SQL Server (MSSQLSERVER) servisinin yeniden başlatılması gerektiği bilgisi gösterilir. OK ile onaylayıp devam ediyoruz.

OK seçeneğine tıklayarak SQL Server (MSSQLSERVER) Properties ekranını kapatıyoruz.

Servisin Yeniden Başlatılması

SQL Server (MSSQLSERVER) servisi üzerinde sağ tıklayarak Restart seçeneğini seçiyoruz. Bu adım zorunludur servis yeniden başlatılmadan ayar aktif olmaz.

Servis durumunun sırasıyla Stopping service… ve Starting service… olarak değiştiğini görüyoruz.

SQL Server (MSSQLSERVER) servisi üzerinde Always On Availability Groups için gerekli yapılandırmaları tamamladık.

İsteğe Bağlı: Named Pipes Yapılandırması Bir önceki bölümde belirttiğimiz gibi Named Pipes, Always On Availability Group için zorunlu değildir. Ancak ortamınızda Named Pipes bağlantısı bekleyen eski bir uygulama veya araç varsa, bu protokolü aşağıdaki adımları izleyerek etkinleştirebilirsiniz. İhtiyaç yoksa bu bölümü atlayabilir ve Named Pipes’ı Disabled durumda bırakabilirsiniz.

Named Pipes protokolünü etkinleştirmek için sırasıyla şu adımları uyguluyoruz:

  1. SQL Server Configuration Manager‘ı açıyoruz.
  2. Sol panelde SQL Server Network Configuration → Protocols for MSSQLSERVER bölümüne geçiyoruz.
  3. Sağ panelde Named Pipes protokolünün durumunu görüyoruz; varsayılan olarak Disabled gelir.

SQL Server Network Configuration → Protocols for MSSQLSERVER bölümüne geçiyoruz.

Sağ bölümde Named Pipes protokolünün durumunu görüyoruz; varsayılan olarak Disabled gelir.

Named Pipes protokolüne sağ tıklayıp Properties seçeneğine tıklıyoruz.

Açılan Named Pipes Properties ekranında Enabled değerini Yes olarak değiştiriyoruz ve Apply butonuna tıklıyoruz.

Warning ekranında yapılan yapılandırmanın geçerli olabilmesi için SQL Server (MSSQLSERVER) servisinin yeniden başlatılması gerektiği bilgisi gösterilir. OK ile onaylayıp devam ediyoruz.

OK seçeneğine tıklayarak Named Pipes Properties ekranını kapatıyoruz.

Servisin Yeniden Başlatılması

SQL Server (MSSQLSERVER) servisi üzerinde sağ tıklayarak Restart seçeneğini seçiyoruz. Bu adım zorunludur servis yeniden başlatılmadan ayar aktif olmaz.

Servis durumunun sırasıyla Stopping service… ve Starting service… olarak değiştiğini görüyoruz.

W25SQL25NOD1 isimli sunucumuz üzerinde Enable Always On Availability Groups seçeneğini ve Named Pipes protokolünün yapılandırılmasını tamamlamış olduk.

Şimdi W25SQL25NOD2 isimli sunucumuz üzerinde Enable Always On Availability Groups seçeneğini ve Named Pipes protokolünün yapılandırıyoruz.

W25SQL25NOD2 Üzerinde Yapılandırma

W25SQL25NOD2 isimli sunucumuz üzerinde de birebir aynı adımları uyguluyoruz:

  1. Microsoft SQL Server Management Studio (SSMS) ile sunucuya bağlanılır
  2. Always On High Availability menüsünde aynı hata alınır (ayar henüz yapılmamıştır)
  3. SQL Server Configuration Manager → SQL Server Services → SQL Server (MSSQLSERVER) → Properties
  4. Always On Availability Groups sekmesi → Enable Always On Availability Groups işaretlenir → Apply → OK
  5. SQL Server (MSSQLSERVER) servisi Restart edilir.

Mevcut Durum Kontrolü

W25SQL25NOD2 isimli sunucumuz üzerinde Microsoft SQL Server Management Studio (SSMS) konsolunu açıyoruz.

Connect ekranında Connection Properties bölümü altında:

Not: Trust Server Certificate seçeneği LAB, TEST ortamlarında veya self-signed sertifika kullanılan senaryolarda tercih edilir. PROD ortamlarda güvenilir bir iç CA veya public CA tarafından üretilmiş sertifikalar kullanılmalı ve bu seçenek kapalı bırakılmalıdır.

Connect seçeneği ile W25SQL25NOD2 isimli sunucumuza bağlantı sağlıyoruz.

W25SQL25NOD2 isimli sunucumuza bağlantı sağlıyoruz.

Always On High Availability menüsüne tıkladığımızda aşağıdaki gibi hata alıyoruz. Bu hata, Enable Always On Availability Groups seçeneğinin henüz aktif edilmediğini gösterir.

  1. SQL Server Configuration Manager

    SQL Server Configuration Manager konsolunu açıyoruz. Bu araç, SQL Server servislerinin yönetimi ve Enable Always On Availability Groups seçeneğinin etkinleştirilmesi için kullanılan temel yönetim aracıdır.

SQL Server Configuration Manager konsolununda SQL Server Services seçeneğine tıklıyoruz.

SQL Server Services altında listelenen servisler arasından SQL Server (MSSQLSERVER) servisi üzerinde sağ tıklayarak Properties seçeneğini seçiyoruz.

SQL Server (MSSQLSERVER) Properties ekranında Always On Availability Groups sekmesine tıklıyoruz.

Enable Always On Availability Groups seçeneğini işaretliyoruz.

Bu ayar, SQL Server instance’ının Always On High Availability özelliğini aktif hale getirir ve Windows Server Failover Cluster (WSFC) altyapısı ile entegre çalışmasını sağlar.

Not: Bu seçenek işaretlenmeden Availability Group oluşturulamaz.

SQL Server (MSSQLSERVER) Properties ekranında Enable Always On Availability Groups seçeneğini işaretlidikten sonra Apply seçeneğine tıklıyoruz.

Warning ekranında yapılan yapılandırmanın geçerli olabilmesi için SQL Server (MSSQLSERVER) servisinin yeniden başlatılması gerektiği bilgisi gösterilir. OK ile onaylayıp devam ediyoruz.

OK seçeneğine tıklayarak SQL Server (MSSQLSERVER) Properties ekranını kapatıyoruz.

Servisin Yeniden Başlatılması

SQL Server (MSSQLSERVER) servisi üzerinde sağ tıklayarak Restart seçeneğini seçiyoruz. Bu adım zorunludur servis yeniden başlatılmadan ayar aktif olmaz.

Servis durumunun sırasıyla Stopping service… ve Starting service… olarak değiştiğini görüyoruz.

SQL Server (MSSQLSERVER) servisi üzerinde Always On Availability Groups için gerekli yapılandırmaları tamamladık. buradakaldım.

İsteğe Bağlı: Named Pipes Yapılandırması Bir önceki bölümde belirttiğimiz gibi Named Pipes, Always On Availability Group için zorunlu değildir. Ancak ortamınızda Named Pipes bağlantısı bekleyen eski bir uygulama veya araç varsa, bu protokolü aşağıdaki adımları izleyerek etkinleştirebilirsiniz. İhtiyaç yoksa bu bölümü atlayabilir ve Named Pipes’ı Disabled durumda bırakabilirsiniz.

Named Pipes protokolünü etkinleştirmek için sırasıyla şu adımları uyguluyoruz:

  1. SQL Server Configuration Manager‘ı açıyoruz.
  2. Sol panelde SQL Server Network Configuration → Protocols for MSSQLSERVER bölümüne geçiyoruz.
  3. Sağ panelde Named Pipes protokolünün durumunu görüyoruz; varsayılan olarak Disabled gelir.

SQL Server Network Configuration → Protocols for MSSQLSERVER bölümüne geçiyoruz.

Sağ bölümde Named Pipes protokolünün durumunu görüyoruz; varsayılan olarak Disabled gelir.

Named Pipes protokolüne sağ tıklayıp Properties seçeneğine tıklıyoruz.

Açılan Named Pipes Properties ekranında Enabled değerini Yes olarak değiştiriyoruz ve Apply butonuna tıklıyoruz.

Warning ekranında yapılan yapılandırmanın geçerli olabilmesi için SQL Server (MSSQLSERVER) servisinin yeniden başlatılması gerektiği bilgisi gösterilir. OK ile onaylayıp devam ediyoruz.

OK seçeneğine tıklayarak Named Pipes Properties ekranını kapatıyoruz.

Servisin Yeniden Başlatılması

SQL Server (MSSQLSERVER) servisi üzerinde sağ tıklayarak Restart seçeneğini seçiyoruz. Bu adım zorunludur servis yeniden başlatılmadan ayar aktif olmaz.

Servis durumunun sırasıyla Stopping service… ve Starting service… olarak değiştiğini görüyoruz.

W25SQL25NOD2 isimli sunucumuz üzerinde Enable Always On Availability Groups seçeneğini ve Named Pipes protokolünün yapılandırılmasını tamamlamış olduk.

Doğrulama

Her iki node üzerinde de ön yapılandırmayı tamamladıktan sonra, ayarların doğru uygulandığını kontrol ediyoruz.

W25SQL25NOD1 Doğrulaması

Microsoft SQL Server Management Studio (SSMS) ile W25SQL25NOD1 sunucusuna bağlanıp Always On High Availability sekmesine tıkladığımızda herhangi bir hata almadığımızı görüyoruz.

Bu durum, SQL Server servisleri üzerinde yapılan ön yapılandırmanın doğru uygulandığını ve instance’ın Windows Server Failover Cluster (WSFC) altyapısı ile entegre olduğunu doğrular.

Connect seçeneği ile W25SQL25NOD1 isimli sunucumuza bağlantı sağlıyoruz.

W25SQL25NOD1 isimli sunucumuza bağlantı sağlıyoruz.

Microsoft SQL Server Management Studio (SSMS) ile W25SQL25NOD1 sunucusuna bağlanıp Always On High Availability sekmesine tıkladığımızda herhangi bir hata almadığımızı görüyoruz.

W25SQL25NOD2 Doğrulaması

Microsoft SQL Server Management Studio (SSMS) ile W25SQL25NOD2 sunucusuna bağlanıp Always On High Availability sekmesine tıkladığımızda burada da herhangi bir hata almadığımızı görüyoruz.

Connect seçeneği ile W25SQL25NOD2 isimli sunucumuza bağlantı sağlıyoruz.

W25SQL25NOD2 isimli sunucumuza bağlantı sağlıyoruz.

Microsoft SQL Server Management Studio (SSMS) ile W25SQL25NOD2 sunucusuna bağlanıp Always On High Availability sekmesine tıkladığımızda burada da herhangi bir hata almadığımızı görüyoruz.

T-SQL ile Doğrulama

Ekran görüntülerinin yanında, aşağıdaki sorgularla her iki node’un durumunu tek bir yerden doğrulayabilirsiniz. Bu sorguları hem W25SQL25NOD1 hem de W25SQL25NOD2 üzerinde çalıştırarak sonuçları karşılaştırmanız önerilir.

Always On etkin mi? (1 = etkin, 0 = devre dışı)

SELECT SERVERPROPERTY('IsHadrEnabled') AS AlwaysOn_Enabled;

WSFC (Windows Server Failover Cluster) cluster adı ve quorum durumu

SELECT cluster_name, quorum_type_desc, quorum_state_desc
FROM sys.dm_hadr_cluster;

Node durumları ve oy hakları

SELECT member_name, member_type_desc, member_state_desc, number_of_quorum_votes
FROM sys.dm_hadr_cluster_members;

Not: sys.dm_hadr_cluster_members sorgusu, Windows Server Failover Cluster (WSFC) quorum yapılandırmasının doğru yapıldığını da gösterir; witness’ın oy hakkı (number_of_quorum_votes) bu çıktıda görünür.

Sonuç

W25SQL25NOD1 ve W25SQL25NOD2 isimli sunucularımız üzerinde Always On mimarisine geçmeden önce yapılması gereken kritik ön hazırlıkları tamamladık. Bu kapsamda Enable Always On Availability Groups özelliği her iki node üzerinde de etkinleştirildi ve servisler yeniden başlatıldı.

Yapılan bu ön hazırlıklar sayesinde SQL Server instance’larımız Always On mimarisine hazır hale gelmiştir.

Bir sonraki yazımızda Always On Availability Group mimarisinin kurulum ve yapılandırma adımlarını, Availability Group oluşturma sürecini, Listener yapılandırmasını ve failover testlerini detaylı olarak ele alacağız.

Bölüm 5 – Availability Group Kurulumu ve Failover Testi

Bir sonraki yazımızda görüşmek dileğiyle…

Exit mobile version