Een beschikbaarheidsgroep SQL Server 2016 implementeren in twee Azure Stack Hub omgevingen

In dit artikel wordt u stapsgewijs door een geautomatiseerde implementatie van een basiscluster met hoge beschikbare (HA) SQL Server 2016 Enterprise met een asynchrone dr-herstelsite (DR) in twee Azure Stack Hub omgevingen. Zie SQL Server Always On availability groups: a high-availability and disaster-recovery solution (Always On-beschikbaarheidsgroepen:een oplossing voor hoge beschikbaarheid en herstel na noodherstel) voor meer informatie over beschikbaarheid in 2016 en hoge beschikbaarheid.

In deze oplossing bouwt u een voorbeeldomgeving om:

  • Een implementatie in twee Azure Stack Hubs.
  • Gebruik Docker om afhankelijkheidsproblemen met Azure API-profielen te minimaliseren.
  • Implementeer een basiscluster met hoge SQL Server 2016 Enterprise met een noodherstelsite.

Tip

hybrid-pillars.png
Microsoft Azure Stack Hub is een extensie van Azure. Azure Stack Hub brengt de flexibiliteit en innovatie van cloud-computing naar uw on-premises omgeving, waardoor de enige hybride cloud wordt gebruikt waarmee u hybride apps overal kunt bouwen en implementeren.

Het artikel Ontwerpoverwegingen voor hybride apps bespreekt de pijlers van softwarekwaliteit (plaatsing, schaalbaarheid, beschikbaarheid, tolerantie, beheersbaarheid en beveiliging) voor het ontwerpen, implementeren en gebruiken van hybride apps. De ontwerpoverwegingen helpen bij het optimaliseren van het ontwerp van hybride apps, waardoor de uitdagingen in productieomgevingen worden geminimim hetzelfde.

Architectuur voor SQL Server 2016

SQL Server 2016 SQL HA-Azure Stack Hub

Vereisten voor SQL Server 2016

  • Twee verbonden Azure Stack Hub geïntegreerde systemen (Azure Stack Hub). Deze implementatie werkt niet op de Azure Stack Development Kit (ASDK). Zie het overzicht Azure Stack Hub meer informatie over Azure Stack.
  • Een tenantabonnement op elk Azure Stack Hub.
    • Noteer elke abonnements-id en het Azure Resource Manager eindpunt voor elke Azure Stack Hub.
  • Een Azure Active Directory (Azure AD)-service-principal die machtigingen heeft voor het tenantabonnement op elke Azure Stack Hub. Mogelijk moet u twee service-principals maken als de Azure Stack Hubs worden geïmplementeerd op verschillende Azure AD-tenants. Zie Create service Azure Stack Hub principals to give apps access to Azure Stack Hub resources (Service-principals maken om apps toegang te geven tot Azure Stack Hub resources).
    • Noteer de toepassings-id, het clientgeheim en de tenantnaam van elke service-principal (xxxxx.onmicrosoft.com).
  • SQL Server 2016 Enterprise is voor elk Azure Stack Hub Marketplace van de organisatie. Zie Marketplace-items downloaden naar Azure Stack Hub voor meer informatie over marketplace-syndicatie. Zorg ervoor dat uw organisatie over de juiste SQL beschikt.
  • Docker voor Windows geïnstalleerd op uw lokale computer.

De Docker-afbeelding op te halen

Docker-installatiepunten voor elke implementatie elimineren afhankelijkheidsproblemen tussen verschillende versies van Azure PowerShell.

  1. Zorg ervoor dat Docker voor Windows gebruik maakt van Windows containers.

  2. Voer het volgende script uit in een opdrachtprompt met verhoogde opdracht om de Docker-container met de implementatiescripts op te halen.

    docker pull intelligentedge/sqlserver2016-hadr:1.0.0
    

De beschikbaarheidsgroep implementeren

  1. Zodra de containerafbeelding is binnengehaald, start u de afbeelding.

    docker run -it intelligentedge/sqlserver2016-hadr:1.0.0 powershell
    
  2. Zodra de container is gestart, krijgt u een PowerShell-terminal met verhoogde bevoegdheid in de container. Wijzig de directories om naar het implementatiescript te gaan.

    cd .\SQLHADRDemo\
    
  3. Voer de implementatie uit. Geef waar nodig referenties en resourcenamen op. Ha verwijst naar de Azure Stack Hub waar het ha-cluster wordt geïmplementeerd. DR verwijst naar de Azure Stack Hub waar het cluster voor dr.s. wordt geïmplementeerd.

    > .\Deploy-AzureResourceGroup.ps1 `
    -AzureStackApplicationId_HA "applicationIDforHAServicePrincipal" `
    -AzureStackApplicationSercet_HA "clientSecretforHAServicePrincipal" `
    -AADTenantName_HA "hatenantname.onmicrosoft.com" `
    -AzureStackResourceGroup_HA "haresourcegroupname" `
    -AzureStackArmEndpoint_HA "https://management.haazurestack.com" `
    -AzureStackSubscriptionId_HA "haSubscriptionId" `
    -AzureStackApplicationId_DR "applicationIDforDRServicePrincipal" `
    -AzureStackApplicationSercet_DR "ClientSecretforDRServicePrincipal" `
    -AADTenantName_DR "drtenantname.onmicrosoft.com" `
    -AzureStackResourceGroup_DR "drresourcegroupname" `
    -AzureStackArmEndpoint_DR "https://management.drazurestack.com" `
    -AzureStackSubscriptionId_DR "drSubscriptionId"
    
  4. Typ om toe te staan dat de Y NuGet-provider wordt geïnstalleerd. De modules 2018-03-01-hybrid van het API-profiel worden dan geïnstalleerd.

  5. Wacht tot de implementatie van de resource is voltooid.

  6. Nadat de implementatie van de DR-resource is voltooid, sluit u de container.

    exit
    
  7. Inspecteer de implementatie door de resources in de portal van Azure Stack Hub te bekijken. Verbinding maken een van de SQL exemplaren in de ha-omgeving en inspecteer de beschikbaarheidsgroep via SQL Server Management Studio (SSMS).

    SQL Server 2016 SQL HA

Volgende stappen