Çalışma grubu kullanılabilirlik grubunu yapılandırma

Şunlar için geçerlidir:Azure VM'de SQL Server

Bu makalede, Always On kullanılabilirlik grubuyla Active Directory etki alanından bağımsız bir küme oluşturmak için gereken adımlar açıklanmaktadır; bu, çalışma grubu kümesi olarak da bilinir. Bu makale, çalışma grubu ve kullanılabilirlik grubunu hazırlama ve yapılandırmayla ilgili adımlara odaklanır ve kümeyi oluşturma veya kullanılabilirlik grubunu dağıtma gibi diğer makalelerde ele alınan adımlara odaklanır.

Önkoşullar

Bir çalışma grubu kullanılabilirlik grubunu yapılandırmak için aşağıdakilere ihtiyacınız vardır:

  • Statik IP adresleri kullanarak SQL Server 2016 (veya üzeri) çalıştıran, aynı kullanılabilirlik kümesine veya farklı kullanılabilirlik alanlarına dağıtılan en az iki Windows Server 2016 (veya üzeri) sanal makine.
  • Alt ağda en az 4 boş IP adresi olan bir yerel ağ.
  • Yönetici grubundaki her makinede sql server içinde sysadmin haklarına sahip olan bir hesap.
  • Açık bağlantı noktaları: TCP 1433, TCP 5022, TCP 59999.

Başvuru için, bu makalede aşağıdaki parametreler kullanılır, ancak gerektiğinde değiştirilebilir:

Ad Parametre
Düğüm1 AGNode1 (10.0.0.4)
Düğüm2 AGNode2 (10.0.0.5)
Küme adı AGWGAG (10.0.0.6)
Dinleyici AGListener (10.0.0.7)
DNS son eki ag.wgcluster.example.com
İş grubu adı AGWorkgroup

DNS soneki ayarlama

Bu adımda, her iki sunucu için de DNS son ekini yapılandırın. Örneğin, ag.wgcluster.example.com. Bu, bağlanmak istediğiniz nesnenin adını ağınızda AGNode1.ag.wgcluster.example.comgibi tam bir adres olarak kullanmanıza olanak tanır.

DNS sonekini yapılandırmak için şu adımları izleyin:

  1. İlk düğümünüzün RDP'sini açın ve Sunucu Yöneticisi açın.

  2. Yerel Sunucu'ya tıklayın ve ardından Bilgisayar adı'nın altında sanal makinenizin adını seçin.

  3. Bu bilgisayarı yeniden adlandırmak için altında Değiştir... öğesini seçin.

  4. Çalışma grubu adının adını gibi anlamlı AGWORKGROUPbir adla değiştirin:

    Çalışma grubu adını değiştirme

  5. DNS Soneki ve NetBIOS Bilgisayar Adı iletişim kutusunu açmak için Diğer... öğesini seçin.

  6. Bu bilgisayarın ag.wgcluster.example.comBirincil DNS soneki altına DNS sonekinizin adını yazın ve ardından Tamam'ı seçin:

    Ekran görüntüsü, değeri girebileceğiniz D N S Soneki ve NetBIOS Bilgisayar Adı iletişim kutusunu gösterir.

  7. Tam bilgisayar adının artık DNS sonekini gösterdiğini onaylayın ve değişikliklerinizi kaydetmek için Tamam'ı seçin:

    Tam bilgisayar adınızın nerede görüntülendiği ekran görüntüsü.

  8. İstendiğinde sunucuyu yeniden başlatın.

  9. Kullanılabilirlik grubu için kullanılacak diğer düğümlerde bu adımları yineleyin.

Konak dosyasını düzenleme

Active Directory olmadığından, Windows bağlantılarının kimliğini doğrulamanın bir yolu yoktur. Bu nedenle, konak dosyasını bir metin düzenleyicisiyle düzenleyerek güven atayın.

Konak dosyasını düzenlemek için şu adımları izleyin:

  1. Sanal makinenizde RDP'yi girin.

  2. adresine gitmek c:\windows\system32\drivers\etciçin Dosya Gezgini kullanın.

  3. Hosts dosyasına sağ tıklayın ve dosyayı Not Defteri (veya başka bir metin düzenleyicisi) ile açın.

  4. Dosyanın sonuna her düğüm, kullanılabilirlik grubu ve dinleyici için aşağıdaki biçimde IP Address, DNS Suffix #comment bir girdi ekleyin:

    10.0.0.4 AGNode1.ag.wgcluster.example.com #Availability group node
    10.0.0.5 AGNode2.ag.wgcluster.example.com #Availability group node
    10.0.0.6 AGWGAG.ag.wgcluster.example.com #Cluster IP
    10.0.0.7 AGListener.ag.wgcluster.example.com #Listener IP
    

    Ana bilgisayar dosyasına IP adresi, küme ve dinleyici için girdiler ekleme

İzinleri ayarlama

İzinleri yönetecek Active Directory olmadığından, yerleşik olmayan bir yerel yönetici hesabının kümeyi oluşturmasına el ile izin vermeniz gerekir.

Bunu yapmak için aşağıdaki PowerShell cmdlet'ini her düğümdeki bir yönetim PowerShell oturumunda çalıştırın:


new-itemproperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System -Name LocalAccountTokenFilterPolicy -Value 1

Yük devretme kümesini oluşturma

Bu adımda yük devretme kümesini oluşturacaksınız. Bu adımları bilmiyorsanız, bunları yük devretme kümesi öğreticisinden izleyebilirsiniz.

Öğretici ile bir çalışma grubu kümesi için yapılması gerekenler arasındaki önemli farklar:

  • Küme doğrulamasını çalıştırırken Depolama ve Depolama Alanları Doğrudan işaretini kaldırın.
  • Düğümleri kümeye eklerken tam adı ekleyin, örneğin:
    • AGNode1.ag.wgcluster.example.com
    • AGNode2.ag.wgcluster.example.com
  • Tüm uygun depolamayı kümeye ekle seçeneğinin işaretini kaldırın.

Küme oluşturulduktan sonra statik bir Küme IP adresi atayın. Bunu yapmak için aşağıdaki adımları izleyin:

  1. Düğümlerden birinde Yük Devretme Kümesi Yöneticisi'ni açın, kümeyi seçin, Küme Çekirdek Kaynakları'nın altında Ad: <KümeNam'a> sağ tıklayın ve özellikler'i seçin.

    Küme adı için başlatma özellikleri

  2. IP Adresleri'nin altındaki IP adresini seçin ve Düzenle'yi seçin.

  3. Statik Kullan'ı seçin, kümenin IP adresini belirtin ve ardından Tamam'ı seçin:

    Küme için statik IP adresi sağlama

  4. Ayarlarınızın doğru göründüğünü doğrulayın ve ardından kaydetmek için Tamam'ı seçin:

    Küme özelliklerini doğrulama

Bulut tanığı oluşturma

Bu adımda, bir bulut paylaşımı tanığı yapılandırın. Adımları bilmiyorsanız bkz . Yük Devretme Kümesi için Bulut Tanığı Dağıtma.

Kullanılabilirlik grubu özelliğini etkinleştirme

Bu adımda kullanılabilirlik grubu özelliğini etkinleştirin. Adımları bilmiyorsanız kullanılabilirlik grubu öğreticisine bakın.

Anahtar ve sertifika oluşturma

Bu adımda, şifrelenmiş uç noktada SQL oturum açma bilgilerinin kullandığı sertifikalar oluşturun. Sertifika yedeklemelerini tutmak için her düğümde gibi c:\certsbir klasör oluşturun.

Not

Sertifika için son kullanma tarihi belirtmezseniz, sertifikanın geçerlilik süresi oluşturma tarihinden itibaren bir yıl olur. Sertifikanın süresi dolarsa uç noktalar arasındaki bağlantı başarısız olur.

İlk düğümü yapılandırmak için şu adımları izleyin:

  1. SQL Server Management Studio'yu açın ve gibi AGNode1ilk düğümünüze bağlanın.

  2. Yeni Sorgu penceresi açın ve karmaşık ve güvenli bir parolaya güncelleştirdikten sonra aşağıdaki Transact-SQL (T-SQL) deyimini çalıştırın:

    USE master;  
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'PassWOrd123!';  
    GO
    
    --create a cert from the master key
    USE master;  
    CREATE CERTIFICATE AGNode1Cert   
       WITH SUBJECT = 'AGNode1 Certificate';  
    GO  
    
    --Backup the cert and transfer it to AGNode2
    BACKUP CERTIFICATE AGNode1Cert TO FILE = 'C:\certs\AGNode1Cert.crt';  
    GO  
    
  3. Ardından HADR uç noktasını oluşturun ve şu Transact-SQL (T-SQL) deyimini çalıştırarak kimlik doğrulaması için sertifikayı kullanın:

    --CREATE or ALTER the mirroring endpoint
    CREATE ENDPOINT hadr_endpoint  
       STATE = STARTED  
       AS TCP (  
          LISTENER_PORT=5022  
          , LISTENER_IP = ALL  
       )   
       FOR DATABASE_MIRRORING (   
          AUTHENTICATION = CERTIFICATE AGNode1Cert  
          , ENCRYPTION = REQUIRED ALGORITHM AES  
          , ROLE = ALL  
       );  
    GO  
    
  4. sertifikanızın bulunduğu dosya konumuna gitmek için Dosya Gezgini kullanın, örneğinc:\certs.

  5. Sertifikanın bir kopyasını (örneğin AGNode1Cert.crt, ilk düğümden) el ile alın ve ikinci düğümde aynı konuma aktarın.

İkinci düğümü yapılandırmak için şu adımları izleyin:

  1. ile ikinci düğüme BağlanSQL Server Management Studio, örneğinAGNode2.

  2. Yeni Sorgu penceresinde karmaşık ve güvenli bir parolaya güncelleştirdikten sonra aşağıdaki Transact-SQL (T-SQL) deyimini çalıştırın:

    USE master;  
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'PassWOrd123!';  
    GO 
    
    --create a cert from the master key
    USE master;  
    CREATE CERTIFICATE AGNode2Cert   
       WITH SUBJECT = 'AGNode2 Certificate';  
    GO  
    --Backup the cert and transfer it to AGNode1
    BACKUP CERTIFICATE AGNode2Cert TO FILE = 'C:\certs\AGNode2Cert.crt';  
    GO
    
  3. Ardından HADR uç noktasını oluşturun ve şu Transact-SQL (T-SQL) deyimini çalıştırarak kimlik doğrulaması için sertifikayı kullanın:

    --CREATE or ALTER the mirroring endpoint
    CREATE ENDPOINT hadr_endpoint  
       STATE = STARTED  
       AS TCP (  
          LISTENER_PORT=5022  
          , LISTENER_IP = ALL  
       )   
       FOR DATABASE_MIRRORING (   
          AUTHENTICATION = CERTIFICATE AGNode2Cert  
          , ENCRYPTION = REQUIRED ALGORITHM AES  
          , ROLE = ALL  
       );  
    GO  
    
  4. sertifikanızın bulunduğu dosya konumuna gitmek için Dosya Gezgini kullanın, örneğinc:\certs.

  5. İkinci düğümden sertifikanın AGNode2Cert.crtörneğinin bir kopyasını el ile alın ve ilk düğümde aynı konuma aktarın.

Kümede başka düğümler varsa, ilgili sertifika adlarını değiştirerek bu adımları orada da yineleyin.

Oturum açma bilgileri oluşturma

Sertifika kimlik doğrulaması, düğümler arasında verileri eşitlemek için kullanılır. Buna izin vermek için diğer düğüm için bir oturum açma hesabı oluşturun, oturum açma için bir kullanıcı oluşturun, yedeklenen sertifikayı kullanmak üzere oturum açma için bir sertifika oluşturun ve yansıtma uç noktasında bağlanma izni verin.

Bunu yapmak için ilk olarak ilk düğümde aşağıdaki Transact-SQL (T-SQL) sorgusunu çalıştırın, örneğin AGNode1:

--create a login for the AGNode2
USE master;  
CREATE LOGIN AGNode2_Login WITH PASSWORD = 'PassWord123!';  
GO  

--create a user from the login
CREATE USER AGNode2_User FOR LOGIN AGNode2_Login;  
GO  

--create a certificate that the login uses for authentication
CREATE CERTIFICATE AGNode2Cert  
   AUTHORIZATION AGNode2_User  
   FROM FILE = 'C:\certs\AGNode2Cert.crt'  
GO 

--grant connect for login
GRANT CONNECT ON ENDPOINT::hadr_endpoint TO [AGNode2_login];  
GO

Ardından, ikinci düğümde aşağıdaki Transact-SQL (T-SQL) sorgusunu çalıştırın, örneğin AGNode2:

--create a login for the AGNode1
USE master;  
CREATE LOGIN AGNode1_Login WITH PASSWORD = 'PassWord123!';  
GO  

--create a user from the login
CREATE USER AGNode1_User FOR LOGIN AGNode1_Login;  
GO  

--create a certificate that the login uses for authentication
CREATE CERTIFICATE AGNode1Cert  
   AUTHORIZATION AGNode1_User  
   FROM FILE = 'C:\certs\AGNode1Cert.crt'  
GO 

--grant connect for login
GRANT CONNECT ON ENDPOINT::hadr_endpoint TO [AGNode1_login];  
GO

Kümede başka düğümler varsa, ilgili sertifikayı ve kullanıcı adlarını değiştirerek bu adımları orada da yineleyin.

Kullanılabilirlik grubunu yapılandırma

Bu adımda, kullanılabilirlik grubunuzu yapılandırın ve veritabanlarınızı buna ekleyin. Şu anda bir dinleyici oluşturmayın. Adımları bilmiyorsanız kullanılabilirlik grubu öğreticisine bakın. Her şeyin olması gerektiği gibi çalıştığını doğrulamak için bir yük devretme ve yeniden çalışma başlattığınızı unutmayın.

Not

Eşitleme işlemi sırasında bir hata oluşursa, ilk düğümde küme kaynakları oluşturmak için sysadmin hakları vermeniz NT AUTHORITY\SYSTEM gerekebilir( örneğin AGNode1 geçici olarak).

Yük dengeleyici yapılandırma

Bu son adımda, Azure portalını veya PowerShell'i kullanarak yük dengeleyiciyi yapılandırın.

Ancak, Windows Küme GUI'sini kullanırken bazı sınırlamalar olabilir ve bu nedenle powershell kullanarak aşağıdaki örnek betikle bir istemci erişim noktası veya dinleyiciniz için ağ adı oluşturmanız gerekir:

Add-ClusterResource -Name "IPAddress1" -ResourceType "IP Address" -Group "WGAG" 
Get-ClusterResource -Name IPAddress1 | Set-ClusterParameter -Multiple @{"Network" = "Cluster Network 1";"Address" = "10.0.0.4";"SubnetMask" = "255.0.0.0";"EnableDHCP" = 0} 
Add-ClusterResource -Name "IPAddress2" -ResourceType "IP Address" -Group "WGAG" 
Get-ClusterResource -Name IPAddress2 | Set-ClusterParameter -Multiple @{"Network" = "Cluster Network 2";"Address" = "10.0.0.5";"SubnetMask" = "255.0.0.0";"EnableDHCP" = 0} 
Add-ClusterResource -Name "TestName" -Group "WGAG" -ResourceType "Network Name" 
Get-ClusterResource -Name "TestName" | Set-ClusterParameter -Multiple @{"DnsName" = "TestName";"RegisterAllProvidersIP" = 1} 
Set-ClusterResourceDependency -Resource TestName -Dependency "[IPAddress1] or [IPAddress2]" 
Start-ClusterResource -Name TestName -Verbose 

Sonraki adımlar

Kullanılabilirlik grubu dağıtıldıktan sonra Azure VM'lerinde SQL Server için HADR ayarlarını iyileştirmeyi göz önünde bulundurun.

Daha fazla bilgi edinmek için şu makalelere bakın: