Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:Azure SQL Database
In dit artikel leert u hoe u een failovergroep configureert voor individuele en pooldatabases in Azure SQL Database met behulp van Azure Portal, Azure PowerShell en de Azure CLI.
Voor end-to-endscripts bekijkt u hoe u één database toevoegt aan een failovergroep met Azure PowerShell of de Azure CLI.
Vereiste voorwaarden
Houd rekening met de volgende vereisten voor het maken van uw failovergroep voor één database:
- Uw primaire database moet al worden gemaakt. Maak een individuele database om aan de slag te gaan.
- Als uw secundaire server al in een andere regio bestaat dan de primaire server, moeten de aanmeldings- en firewallinstellingen van de server overeenkomen met die van uw primaire server.
Failovergroep maken
U kunt uw failovergroep maken en er één database aan toevoegen met behulp van Azure Portal, PowerShell en de Azure CLI.
Belangrijk
Als u een secundaire database wilt verwijderen nadat deze is toegevoegd aan een failovergroep, verwijdert u deze uit de failovergroep voordat u de database verwijdert. Als u een secundaire database verwijdert voordat deze uit de failovergroep wordt verwijderd, kan dit onvoorspelbaar gedrag veroorzaken.
Voer de volgende stappen uit om uw failovergroep te maken en uw individuele database eraan toe te voegen met behulp van Azure Portal:
Als u de logische server kent die als host fungeert voor uw database, gaat u er rechtstreeks naartoe in Azure Portal. Als u de server wilt vinden, voert u de volgende stappen uit:
- Selecteer Azure SQL in het servicemenu. Als Azure SQL zich niet in de lijst bevindt, selecteert u Alle services en typt
Azure SQLu het zoekvak. (Optioneel) Selecteer de ster naast Azure SQL als favoriet en voeg deze toe als item in het servicemenu. - Zoek op de Azure SQL-pagina de database die u wilt toevoegen aan een failovergroep en selecteer deze om het deelvenster SQL-database te openen.
- Selecteer in het deelvenster Overzicht van de SQL-database de naam van de server onder Servernaam om het deelvenster SQL Server te openen.
- Selecteer Azure SQL in het servicemenu. Als Azure SQL zich niet in de lijst bevindt, selecteert u Alle services en typt
Selecteer failovergroepen onder Gegevensbeheer in het resourcemenu van de SQL-server. Selecteer + Groep toevoegen om de pagina Failovergroep te openen, waar u een nieuwe failovergroep kunt maken.
Op de pagina Failovergroep :
- Geef de naam van een failovergroep op.
- Kies een bestaande secundaire server of maak een nieuwe server door nieuw te selecteren onder Server. De secundaire server in de failovergroep moet zich in een andere regio bevinden dan de primaire server.
- Selecteer Database configureren om de pagina Databases voor failovergroep te openen.
Op de pagina Databases voor failovergroep :
- Kies de databases die u wilt toevoegen aan de failovergroep (#1 in de schermopname).
- (Optioneel) Kies Ja als u deze databases wilt aanwijzen als stand-byreplica's die alleen moeten worden gebruikt voor herstel na noodgevallen (#2 in de schermopname). Schakel het selectievakje in om te bevestigen dat u de replica gebruikt voor stand-by.
- Gebruik Selecteren om de databaseselectie op te slaan en terug te gaan naar de pagina Failovergroep (niet zichtbaar in de schermopname).
Gebruik Maken op de pagina Failovergroep maken om uw failovergroep te maken.
Geplande failover testen
Test de failover van uw failovergroep zonder gegevensverlies met behulp van Azure Portal of PowerShell.
Voer de volgende stappen uit om de failover van uw failovergroep te testen met behulp van Azure Portal:
Als u de logische server kent die als host fungeert voor uw database, gaat u er rechtstreeks naartoe in Azure Portal. Als u de server wilt vinden, voert u de volgende stappen uit:
- Selecteer Azure SQL in het servicemenu. Als Azure SQL zich niet in de lijst bevindt, selecteert u Alle services en typt
Azure SQLu het zoekvak. (Optioneel) Selecteer de ster naast Azure SQL als favoriet en voeg deze toe als item in het servicemenu. - Zoek op de azure SQL-pagina de database waarvoor u de failover wilt testen en selecteer deze om het deelvenster SQL-database te openen.
- Selecteer in het deelvenster Overzicht van de SQL-database de naam van de server onder Servernaam om het deelvenster SQL Server te openen.
- Selecteer Azure SQL in het servicemenu. Als Azure SQL zich niet in de lijst bevindt, selecteert u Alle services en typt
Selecteer failovergroepen onder Gegevensbeheer in het resourcemenu van de SQL-server en kies vervolgens een bestaande failovergroep om de pagina Failovergroep te openen.
Op de pagina Failovergroep :
- Controleer welke server primair is en welke server secundair is.
- Selecteer Failover op de opdrachtbalk om een failover-overschakeling uit te voeren voor uw failovergroep die uw database bevat.
- Selecteer Ja in de waarschuwing waarmee u wordt gewaarschuwd dat TDS-sessies worden verbroken.
Controleer welke server nu primair is en welke server secundair is. Zodra de failover is geslaagd, wisselen de twee servers rollen om, zodat de voormalige primaire wordt de secundaire.
(Optioneel) Selecteer Failover opnieuw om de servers terug te zetten naar de oorspronkelijke rollen.
Bekijk hoe u een elastische pool toevoegt aan een failovergroep met Azure PowerShell of de Azure CLI voor end-to-endscripts.
Vereiste voorwaarden
Houd rekening met de volgende vereisten voor het maken van uw failovergroep voor een pooldatabase:
- Uw primaire elastische pool moet al bestaan. Maak een elastische pool om aan de slag te gaan.
- Als uw secundaire server al bestaat, moeten de serveraanmeldings- en firewallinstellingen overeenkomen met die van uw primaire server.
Failovergroep maken
Maak de failovergroep voor uw elastische pool met behulp van Azure Portal, PowerShell of de Azure CLI.
Belangrijk
Als u een secundaire database wilt verwijderen nadat deze is toegevoegd aan een failovergroep, verwijdert u deze uit de failovergroep voordat u de database verwijdert. Als u een secundaire database verwijdert voordat deze uit de failovergroep wordt verwijderd, kan dit onvoorspelbaar gedrag veroorzaken.
Voer de volgende stappen uit om uw failovergroep te maken en uw elastische pool eraan toe te voegen met behulp van Azure Portal:
Ga naar de pagina Elastische SQL-pool maken in Azure Portal. Maak een elastische pool die:
- Heeft dezelfde naam als de elastische pool op de primaire server.
- Maakt gebruik van een secundaire server die u wilt gebruiken voor de failovergroep. De secundaire server moet zich in een andere regio bevinden dan de primaire server en de serveraanmelding en firewallinstellingen moeten overeenkomen met die van uw primaire server. Maak een nieuwe server als de secundaire server nog niet bestaat.
Als u de logische server kent die als host fungeert voor uw primaire elastische pool, gaat u er rechtstreeks naartoe in Azure Portal. Als u de server wilt vinden, voert u de volgende stappen uit:
- Selecteer Azure SQL in het servicemenu. Als Azure SQL zich niet in de lijst bevindt, selecteert u Alle services en typt
Azure SQLu het zoekvak. (Optioneel) Selecteer de ster naast Azure SQL als favoriet en voeg deze toe als item in het servicemenu. - Zoek op de Azure SQL-pagina de elastische pool die u wilt toevoegen aan de failovergroep en selecteer deze om het deelvenster elastische SQL-pool te openen.
- Selecteer in het deelvenster Overzicht van de elastische SQL-pool de naam van de server onder Servernaam om het deelvenster SQL Server te openen.
- Selecteer Azure SQL in het servicemenu. Als Azure SQL zich niet in de lijst bevindt, selecteert u Alle services en typt
Selecteer failovergroepen onder Gegevensbeheer in het resourcemenu van de SQL-server. Selecteer + Groep toevoegen om de pagina Failovergroep te openen, waar u een nieuwe failovergroep kunt maken.
Op de pagina Failovergroep :
- Geef de naam van een failovergroep op.
- Kies een bestaande secundaire server. De secundaire server in de failovergroep moet zich in een andere regio bevinden dan de primaire server en moet een elastische pool bevatten met dezelfde naam als de primaire server.
- Selecteer Database configureren om de pagina Databases voor failovergroep te openen.
Kies op de pagina Databases voor failovergroep de pooldatabases die u wilt toevoegen aan de failovergroep. Gebruik Selecteren om de databaseselectie op te slaan en terug te gaan naar de pagina Failovergroep .
Selecteer Maken op de pagina Failovergroep om uw failovergroep te maken. Als u de elastische pool toevoegt aan de failovergroep, wordt het geo-replicatieproces automatisch gestart.
Geplande failover testen
Test een failover van uw elastische pool zonder gegevensverlies met behulp van Azure Portal, PowerShell of de Azure CLI.
Voer een failovergroep uit naar de secundaire server en voer vervolgens een failback uit met behulp van Azure Portal.
Als u de logische server kent die als host fungeert voor uw primaire elastische pool, gaat u er rechtstreeks naartoe in Azure Portal. Als u de server wilt vinden, voert u de volgende stappen uit:
- Selecteer Azure SQL in het servicemenu. Als Azure SQL zich niet in de lijst bevindt, selecteert u Alle services en typt
Azure SQLu het zoekvak. (Optioneel) Selecteer de ster naast Azure SQL als favoriet en voeg deze toe als item in het servicemenu. - Zoek op de Azure SQL-pagina de elastische pool die u wilt toevoegen aan de failovergroep en selecteer deze om het deelvenster elastische SQL-pool te openen.
- Selecteer in het deelvenster Overzicht van de elastische SQL-pool de naam van de server onder Servernaam om het deelvenster SQL Server te openen.
- Selecteer Azure SQL in het servicemenu. Als Azure SQL zich niet in de lijst bevindt, selecteert u Alle services en typt
Selecteer failovergroepen onder Gegevensbeheer in het resourcemenu van de SQL-server en kies vervolgens een bestaande failovergroep om de pagina Failovergroep te openen.
Op de pagina Failovergroep :
- Controleer welke server primair is en welke server secundair is.
- Selecteer Failover op de opdrachtbalk om een failover-overschakeling uit te voeren voor uw failovergroep die uw database bevat.
- Selecteer Ja in de waarschuwing waarmee u wordt gewaarschuwd dat TDS-sessies worden verbroken.
Controleer welke server nu primair is en welke server secundair is. Zodra de failover is geslaagd, wisselen de twee servers rollen om, zodat de voormalige primaire wordt de secundaire.
(Optioneel) Selecteer Failover opnieuw om de servers terug te zetten naar de oorspronkelijke rollen.
Bestaande failovergroep wijzigen
U kunt databases toevoegen aan of verwijderen uit een bestaande failovergroep of configuratie-instellingen voor failovergroepen bewerken met behulp van Azure Portal, PowerShell en de Azure CLI.
Voer de volgende stappen uit om wijzigingen aan te brengen in een bestaande failovergroep met behulp van Azure Portal:
Als u de logische server kent die als host fungeert voor uw database of elastische pool, gaat u er rechtstreeks naartoe in Azure Portal. Als u de server wilt vinden, voert u de volgende stappen uit:
- Selecteer Azure SQL in het servicemenu. Als Azure SQL zich niet in de lijst bevindt, selecteert u Alle services en typt
Azure SQLu het zoekvak. (Optioneel) Selecteer de ster naast Azure SQL als favoriet en voeg deze toe als item in het servicemenu. - Zoek op de Azure SQL-pagina de database of elastische pool die u wilt wijzigen en selecteer deze om het deelvenster SQL-database of elastische SQL-pool te openen.
- Selecteer in het deelvenster Overzicht voor SQL-database of elastische SQL-pool de naam van de server onder Servernaam om het deelvenster SQL Server te openen.
- Selecteer Azure SQL in het servicemenu. Als Azure SQL zich niet in de lijst bevindt, selecteert u Alle services en typt
Selecteer failovergroepen onder Gegevensbeheer in het resourcemenu van de SQL-server en kies vervolgens een bestaande failovergroep om de pagina Failovergroep te openen.
Gebruik de opdrachtbalk op de pagina Failovergroep :
- Als u een database wilt toevoegen, selecteert u Databases toevoegen om het deelvenster Databases toevoegen aan failovergroep te openen en vouwt u #Databases uit om de lijst met databases op de primaire server weer te geven. Schakel het selectievakje in naast de database(s) die u wilt toevoegen aan de failovergroep en gebruik Vervolgens Selecteren om uw wijzigingen op te slaan en uw database(s) toe te voegen.
- Als u een database wilt verwijderen, selecteert u Databases verwijderen om het deelvenster Databases verwijderen uit failovergroep te openen en vouwt u #Databases uit om de databases in de failovergroep weer te geven. Schakel het selectievakje in naast de database(s) die u wilt verwijderen uit de failovergroep en gebruik Vervolgens Selecteren om uw wijzigingen op te slaan en uw database(s) te verwijderen.
- Als u het failoverbeleid wilt bewerken of een respijtperiode wilt configureren, selecteert u Configuratie bewerken om het deelvenster Failovergroepen bewerken te openen en uw instellingen te wijzigen. Gebruik Selecteren om uw wijzigingen op te slaan.
Private Link gebruiken
Met een privékoppeling kunt u een logische server koppelen aan een specifiek privé-IP-adres binnen het virtuele netwerk en subnet.
Ga als volgt te werk om een privékoppeling te gebruiken met uw failovergroep:
- Zorg ervoor dat uw primaire en secundaire servers zich in een gekoppelde regio bevinden.
- Maak het virtuele netwerk en subnet in elke regio om privé-eindpunten te hosten voor primaire en secundaire servers, zodat ze niet-overlapping VAN IP-adresruimten hebben. Bijvoorbeeld: het adresbereik van het primaire virtuele netwerk van 10.0.0.0/16 en het adresbereik van het secundaire virtuele netwerk van 10.0.0.1/16 overlappen. Raadpleeg de blog over het ontwerpen van virtuele Azure-netwerken voor meer informatie over adresbereiken van virtuele netwerken.
- Maak een privé-eindpunt en een privé Azure DNS-zone voor de primaire server.
- Maak ook een privé-eindpunt voor de secundaire server, maar kies er deze keer voor om de privé DNS-zone die voor de primaire server is gemaakt, opnieuw te gebruiken.
- Zodra de private link tot stand is gebracht, kunt u de failovergroep maken volgens de stappen die eerder in dit artikel zijn beschreven.
Listener-eindpunt zoeken
Nadat uw failovergroep is geconfigureerd, werkt u de verbindingsreeks voor uw toepassing bij zodat deze verwijst naar het eindpunt van de lees-/schrijflistener , zodat uw toepassing na een failover verbinding blijft maken met de database die primair is. Door het listener-eindpunt te gebruiken, hoeft u de verbindingsreeks niet handmatig bij te werken telkens wanneer uw failovergroep een failover-overschakeling uitvoert, omdat verkeer altijd naar de huidige primaire wordt doorgestuurd. U kunt ook alleen-lezen werkbelasting naar het alleen-lezen listener eindpunt verwijzen.
Als u het listener-eindpunt in Azure Portal wilt vinden, gaat u naar uw logische server in Azure Portal en selecteert u Failover-groepen onder Gegevensbeheer. Selecteer de failovergroep waarin u geïnteresseerd bent.
Schuif omlaag om de listener-eindpunten te vinden:
- Het eindpunt van de listener lezen/schrijven , in de vorm van
fog-name.database.windows.net, routeert verkeer naar de primaire database. - Het eindpunt van de alleen-lezen-listener , in de vorm van
fog-name.secondary.database.windows.net, routeert verkeer naar de secundaire database.
Databases schalen in een failovergroep
U kunt de primaire database omhoog of omlaag schalen naar een andere rekenkracht (binnen dezelfde servicelaag) zonder de verbinding met geo-secundaire databases te verbreken. Bij het opschalen raden we u aan eerst de geo-secundaire schaal op te schalen en vervolgens de primaire omhoog. Wanneer u omlaag schaalt, keert u de volgorde om: schaal eerst de primaire omlaag en schaal vervolgens de secundaire waarde omlaag. Wanneer u een database schaalt naar een andere servicelaag, wordt deze aanbeveling afgedwongen.
Deze reeks wordt specifiek aanbevolen om te voorkomen dat het probleem waarbij de geo-secundaire bij een lagere SKU overbelast raakt en opnieuw moet worden verzonden tijdens een upgrade- of downgradeproces. U kunt het probleem ook vermijden door het primaire kenmerk Alleen-lezen te maken, ten koste van alle lees-/schrijfworkloads ten opzichte van de primaire.
Opmerking
Als u een geo-secundaire database hebt gemaakt als onderdeel van een failovergroepsconfiguratie, wordt het afgeraden de geo-secundaire omlaag te schalen. Zo zorgt u ervoor dat uw gegevenslaag voldoende capaciteit heeft om uw normale workload te verwerken nadat een geo-failover is geactiveerd. Mogelijk kunt u geen geo-secundaire schaal schalen na een ongeplande failover wanneer de voormalige geo-primaire niet beschikbaar is vanwege een storing. Dit is een bekende beperking.
De primaire database in een failovergroep kan niet worden geschaald naar een hogere servicelaag (editie), tenzij de secundaire database eerst naar de hogere laag wordt geschaald. Als u bijvoorbeeld de primaire schaal omhoog wilt schalen van Algemeen naar Bedrijfskritiek, moet u eerst de geo-secundaire schaal naar Bedrijfskritiek schalen. Als u de primaire of geo-secundaire schaal probeert te schalen op een manier die deze regel schendt, krijgt u de volgende foutmelding:
The source database 'Primaryserver.DBName' cannot have higher edition than the target database 'Secondaryserver.DBName'. Upgrade the edition on the target before upgrading the source.
Verlies van kritieke gegevens voorkomen
Vanwege de hoge latentie van wide area networks maakt geo-replicatie gebruik van een asynchroon replicatiemechanisme. Asynchrone replicatie maakt de mogelijkheid van gegevensverlies onvermijdelijk als de primaire mislukt. Een toepassingsontwikkelaar kan de sp_wait_for_database_copy_sync opgeslagen procedure direct na het doorvoeren van de transactie aanroepen om kritieke transacties te beschermen tegen gegevensverlies. Het aanroepen van sp_wait_for_database_copy_sync blokkeert de oproepende thread tot de laatst doorgevoerde transactie is verzonden en gehard in het transactielogboek van de secundaire database. Er wordt echter niet gewacht totdat de verzonden transacties op de secundaire opnieuw worden afgespeeld.
sp_wait_for_database_copy_sync is gericht op een specifieke geo-replicatiekoppeling. Elke gebruiker met de verbindingsrechten voor de primaire database kan deze procedure aanroepen.
Opmerking
sp_wait_for_database_copy_sync voorkomt gegevensverlies na geo-failover voor specifieke transacties, maar garandeert geen volledige synchronisatie voor leestoegang. De vertraging die wordt veroorzaakt door een sp_wait_for_database_copy_sync procedure-aanroep kan aanzienlijk zijn en is afhankelijk van de grootte van het nog niet verzonden transactielogboek op de primaire op het moment van de oproep.
De secundaire regio wijzigen
Ter illustratie van de wijzigingsreeks gaan we ervan uit dat server A de primaire server is, server B de bestaande secundaire server is en server C de nieuwe secundaire is in de derde regio. Voer de volgende stappen uit om de overgang te maken:
- Maak extra secundaire databases van elke database op server A naar server C met behulp van actieve geo-replicatie. Elke database op server A heeft twee secundaire bestanden, één op server B en één op server C. Dit garandeert dat de primaire databases tijdens de overgang beveiligd blijven.
- Verwijder de failovergroep. Op dit moment beginnen aanmeldingspogingen met behulp van failovergroepeindpunten te mislukken.
- Maak de failovergroep opnieuw met dezelfde naam tussen servers A en C.
- Voeg alle primaire databases op server A toe aan de nieuwe failovergroep. Op dit moment mislukken aanmeldingspogingen.
- Server B verwijderen. Alle databases op B worden automatisch verwijderd.
De primaire regio wijzigen
Ter illustratie van de wijzigingsreeks gaan we ervan uit dat server A de primaire server is, server B de bestaande secundaire server is en server C de nieuwe primaire server in de derde regio is. Voer de volgende stappen uit om de overgang te maken:
- Voer een geplande geo-failover uit om de primaire server over te zetten naar B. Server A wordt de nieuwe secundaire server. De failover kan enkele minuten downtime tot gevolg hebben. De werkelijke tijd is afhankelijk van de grootte van de failovergroep.
- Maak extra secundaire databases van elke database op server B naar server C met behulp van actieve geo-replicatie. Elke database op server B heeft twee secundaire bestanden, één op server A en één op server C. Dit garandeert dat de primaire databases tijdens de overgang beveiligd blijven.
- Verwijder de failovergroep. Op dit moment beginnen aanmeldingspogingen met behulp van failovergroepeindpunten te mislukken.
- Maak de failovergroep opnieuw met dezelfde naam tussen servers B en C.
- Voeg alle primaire databases op B toe aan de nieuwe failovergroep. Op dit moment mislukken aanmeldingspogingen.
- Voer een geplande geo-failover van de failovergroep uit om over te schakelen tussen B en C. Server C wordt nu de primaire en B de secundaire. Alle secundaire databases op server A worden automatisch gekoppeld aan de primaries op C. Net als in stap 1 kan de failover leiden tot enkele minuten downtime.
- Server A verwijderen. Alle databases op A worden automatisch verwijderd.
Belangrijk
Wanneer de failovergroep wordt verwijderd, worden de DNS-records voor de listener-eindpunten ook verwijderd. Op dat moment is er een niet-nul waarschijnlijkheid dat iemand anders een failovergroep of een server-DNS-alias met dezelfde naam maakt. Omdat namen van failovergroepen en DNS-aliassen wereldwijd uniek moeten zijn, voorkomt u dat u dezelfde naam opnieuw gebruikt. Gebruik geen algemene namen van failovergroepen om dit risico te minimaliseren.
Failovergroepen en netwerkbeveiliging
Voor sommige toepassingen moeten de beveiligingsregels ervoor zorgen dat de netwerktoegang tot de gegevenslaag wordt beperkt tot een specifiek onderdeel of een specifiek onderdeel, zoals een VM, webservice, enzovoort. Deze vereiste biedt enkele uitdagingen voor het ontwerp van bedrijfscontinuïteit en het gebruik van failovergroepen. Houd rekening met de volgende opties bij het implementeren van dergelijke beperkte toegang.
Failovergroepen en service-eindpunten voor virtuele netwerken gebruiken
Als u service-eindpunten en regels voor virtuele netwerken gebruikt om de toegang tot uw database te beperken, moet u er rekening mee houden dat elk service-eindpunt van het virtuele netwerk slechts van toepassing is op slechts één Azure-regio. Met het eindpunt kunnen andere regio's geen communicatie van het subnet accepteren. Daarom kunnen alleen de clienttoepassingen die in dezelfde regio zijn geïmplementeerd, verbinding maken met de primaire database. Omdat een geo-failover resulteert in de SQL Database-clientsessies die worden omgeleid naar een server in een andere (secundaire) regio, kunnen deze sessies mislukken als deze afkomstig zijn van een client buiten die regio. Daarom kan het door Microsoft beheerde failoverbeleid niet worden ingeschakeld als de deelnemende servers zijn opgenomen in de regels voor het virtuele netwerk. Voer de volgende stappen uit om handmatig failoverbeleid te ondersteunen:
- Richt redundante kopieën van de front-endonderdelen van uw toepassing (webservice, virtuele machines enzovoort) in de secundaire regio in.
- Configureer regels voor virtuele netwerken afzonderlijk voor de primaire en secundaire server.
- Schakel front-endfailover in met behulp van een Traffic Manager-configuratie.
- Start een handmatige geo-failover wanneer de storing wordt gedetecteerd. Deze optie is geoptimaliseerd voor toepassingen die consistente latentie tussen de front-end en de gegevenslaag vereisen en ondersteuning biedt voor herstel wanneer front-end, gegevenslaag of beide worden beïnvloed door de storing.
Opmerking
Als u de alleen-lezen-listener gebruikt om een alleen-lezen workload te verdelen, moet u ervoor zorgen dat deze werkbelasting wordt uitgevoerd in een VIRTUELE machine of een andere resource in de secundaire regio, zodat deze verbinding kan maken met de secundaire database.
Failovergroepen en firewallregels gebruiken
Als voor uw bedrijfscontinuïteitsplan failover met failovergroepen is vereist, kunt u de toegang tot uw SQL Database beperken met behulp van openbare IP-firewallregels. Deze configuratie zorgt ervoor dat een geo-failover verbindingen van front-endonderdelen niet blokkeert en ervan uitgaat dat de toepassing de langere latentie tussen de front-end en de gegevenslaag kan tolereren.
Voer de volgende stappen uit om failovergroepfailover te ondersteunen:
- Maak een openbaar IP-adres.
- Maak een openbare load balancer en wijs het openbare IP-adres eraan toe.
- Maak een virtueel netwerk en de virtuele machines voor uw front-endonderdelen.
- Maak een netwerkbeveiligingsgroep en configureer binnenkomende verbindingen.
- Zorg ervoor dat de uitgaande verbindingen zijn geopend voor Azure SQL Database in een regio met behulp van een
Sql.<Region>servicetag. - Maak een SQL Database-firewallregel om inkomend verkeer toe te staan van het openbare IP-adres dat u in stap 1 maakt.
Zie uitgaande verbindingen van Load Balancer voor meer informatie over het configureren van uitgaande toegang en welk IP-adres moet worden gebruikt in de firewallregels.
Belangrijk
Als u bedrijfscontinuïteit wilt garanderen tijdens regionale storingen, moet u geografische redundantie garanderen voor zowel front-endonderdelen als databases.
Machtigingen
Machtigingen voor een failovergroep worden beheerd via op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC).
Schrijftoegang van Azure RBAC is nodig voor het maken en beheren van failovergroepen. De rol INzender voor SQL Server heeft alle benodigde machtigingen voor het beheren van failovergroepen.
De volgende tabel bevat specifieke machtigingsbereiken voor Azure SQL Database:
| Actie | Machtiging | Omvang |
|---|---|---|
| Failovergroep maken | Schrijftoegang van Azure RBAC | Primaire server Secundaire server Alle databases in failovergroep |
| Failovergroep bijwerken | Schrijftoegang van Azure RBAC | Failovergroep Alle databases op de huidige primaire server |
| Failovergroep | Schrijftoegang van Azure RBAC | Failovergroep op nieuwe server |
Beperkingen
Houd rekening met de volgende beperkingen:
- Failovergroepen kunnen alleen worden gemaakt tussen logische servers in dezelfde Microsoft Entra-tenant.
- Failovergroepen kunnen niet worden gemaakt tussen twee servers in dezelfde Azure-regio.
- Failovergroepen ondersteunen geo-replicatie van alle databases in de groep naar slechts één secundaire logische server in een andere regio.
- Namen van failovergroepen kunnen niet worden gewijzigd. U moet de groep verwijderen en opnieuw maken met een andere naam.
- De naam van de database wordt niet ondersteund voor databases in een failovergroep. U moet de failovergroep tijdelijk verwijderen om de naam van een database te kunnen wijzigen of de database te verwijderen uit de failovergroep.
- Het verwijderen van een failovergroep voor een enkele of pooldatabase stopt de replicatie niet en verwijdert de gerepliceerde database niet. U moet geo-replicatie handmatig stoppen en de database verwijderen van de secundaire server als u een individuele of pooldatabase weer wilt toevoegen aan een failovergroep nadat deze is verwijderd. Als u dit niet doet, kan dit resulteren in een fout die vergelijkbaar is met
The operation cannot be performed due to multiple errorswanneer u de database probeert toe te voegen aan de failovergroep. - Naam van failovergroep is onderhevig aan naamgevingsbeperkingen.
- Wanneer u een nieuwe failovergroep maakt of databases toevoegt aan een bestaande failovergroep, kunt u de databases alleen als stand-byreplica's aanwijzen wanneer u Azure Portal gebruikt: Azure PowerShell en de Azure CLI zijn momenteel niet beschikbaar.
- Azure Portal biedt geen ondersteuning voor het maken van failovergroepen in verschillende abonnementen. Gebruik in plaats daarvan PowerShell-cmdlets om failovergroepen programmatisch te beheren.
Failovergroepen programmatisch beheren
Failovergroepen kunnen ook programmatisch worden beheerd met behulp van Azure PowerShell, Azure CLI en REST API. In de volgende tabellen wordt de set opdrachten beschreven die beschikbaar zijn. Failovergroepen bevatten een set Azure Resource Manager-API's voor beheer, waaronder de Azure SQL Database REST API en Azure PowerShell-cmdlets. Deze API's vereisen het gebruik van resourcegroepen en ondersteunen op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC). Raadpleeg voor meer informatie over hoe u toegangsrollen kunt implementeren Azure rolgebaseerd toegangsbeheer (Azure RBAC).
| Cmdlet | Beschrijving |
|---|---|
| New-AzSqlDatabaseFailoverGroup | Met deze opdracht maakt u een failovergroep en registreert u deze op zowel primaire als secundaire servers |
| Add-AzSqlDatabaseToFailoverGroup | Een of meer databases toevoegen aan een failovergroep |
| Remove-AzSqlDatabaseFromFailoverGroup | Hiermee verwijdert u een of meer databases uit een failovergroep |
| Remove-AzSqlDatabaseFailoverGroup | Hiermee verwijdert u een failovergroep van de server |
| Get-AzSqlDatabaseFailoverGroup | Hiermee wordt de configuratie van een failovergroep opgehaald |
| Set-AzSqlDatabaseFailoverGroup | Wijzigt de configuratie van een failovergroep |
| Switch-AzSqlDatabaseFailoverGroup | Hiermee wordt een failover van een failovergroep naar de secundaire server geactiveerd |
Opmerking
Het is mogelijk om uw failovergroep tussen abonnementen te implementeren met behulp van de -PartnerSubscriptionId parameter in Azure Powershell vanaf Az.SQL 3.11.0. Raadpleeg het volgende voorbeeld voor meer informatie.