Hoge beschikbaarheid in Azure Database for PostgreSQL - Enkele server

VAN TOEPASSING OP: Azure Database for PostgreSQL - enkele server

Belangrijk

Azure Database for PostgreSQL - Enkele server bevindt zich op het buitengebruikstellingspad. We raden u ten zeerste aan om een upgrade uit te voeren naar Azure Database for PostgreSQL - Flexible Server. Zie Wat gebeurt er met Azure Database for PostgreSQL Enkele server voor meer informatie over migreren naar Azure Database for PostgreSQL - Flexible Server.

De Azure Database for PostgreSQL - Single Server-service biedt een gegarandeerd hoge beschikbaarheid met de sla (Service Level Agreement) met financiële ondersteuning voor uptime. Azure Database for PostgreSQL biedt hoge beschikbaarheid tijdens geplande gebeurtenissen, zoals door de gebruiker geïnitieerde schaalbewerking, en ook wanneer ongeplande gebeurtenissen zoals onderliggende hardware, software of netwerkfouten optreden. Azure Database for PostgreSQL kan snel herstellen van de meest kritieke omstandigheden, waardoor er vrijwel geen downtime van toepassingen is bij het gebruik van deze service.

Azure Database for PostgreSQL is geschikt voor het uitvoeren van bedrijfskritieke databases waarvoor een hoge uptime is vereist. De service is gebouwd op Azure-architectuur en heeft inherente mogelijkheden voor hoge beschikbaarheid, redundantie en tolerantie om de downtime van databases te beperken door geplande en ongeplande storingen, zonder dat u extra onderdelen hoeft te configureren.

Onderdelen in Azure Database for PostgreSQL - Enkele server

Onderdeel Beschrijving
PostgreSQL-databaseserver Azure Database for PostgreSQL biedt beveiliging, isolatie, resourcebeveiliging en snel opnieuw opstarten voor databaseservers. Deze mogelijkheden vereenvoudigen bewerkingen zoals schalen en herstelbewerking van databaseservers na een storing in seconden.
Gegevenswijzigingen in de databaseserver vinden doorgaans plaats in de context van een databasetransactie. Alle databasewijzigingen worden synchroon vastgelegd in de vorm van write-ahead-logboeken (WAL) in Azure Storage, die is gekoppeld aan de databaseserver. Tijdens het controlepunt van de database worden gegevenspagina's uit het geheugen van de databaseserver ook leeggemaakt naar de opslag.
Externe opslag Alle fysieke PostgreSQL-gegevensbestanden en WAL-bestanden worden opgeslagen in Azure Storage, dat is ontworpen om drie kopieën van gegevens in een regio op te slaan om gegevensredundantie, beschikbaarheid en betrouwbaarheid te garanderen. De opslaglaag is ook onafhankelijk van de databaseserver. Deze kan binnen enkele seconden worden losgekoppeld van een mislukte databaseserver en opnieuw worden gekoppeld aan een nieuwe databaseserver. Daarnaast controleert Azure Storage continu op eventuele opslagfouten. Als een blokbeschadiging wordt gedetecteerd, wordt deze automatisch opgelost door een nieuwe opslagkopie te instantiëren.
Gateway De gateway fungeert als een databaseproxy en stuurt alle clientverbindingen naar de databaseserver.

Beperking van geplande downtime

Azure Database for PostgreSQL is ontworpen om hoge beschikbaarheid te bieden tijdens geplande downtimebewerkingen.

Schermopname van Elastisch schalen in Azure PostgreSQL.

  1. Schaal postgreSQL-databaseservers in seconden omhoog en omlaag.
  2. Gateway die fungeert als proxy om client te routeren, maakt verbinding met de juiste databaseserver.
  3. Omhoog schalen van opslag kan zonder uitvaltijd worden uitgevoerd. Externe opslag maakt snelle ontkoppeling/opnieuw koppelen mogelijk na de failover. Hier volgen enkele geplande onderhoudsscenario's:
Scenario Beschrijving
Rekenkracht omhoog/omlaag schalen Wanneer de gebruiker rekenkracht omhoog/omlaag schaalt, wordt een nieuwe databaseserver ingericht met behulp van de geschaalde rekenconfiguratie. In de oude databaseserver zijn actieve controlepunten toegestaan om te voltooien, clientverbindingen worden leeggemaakt, eventuele niet-doorgevoerde transacties worden geannuleerd en wordt het afgesloten. De opslag wordt vervolgens losgekoppeld van de oude databaseserver en gekoppeld aan de nieuwe databaseserver. Wanneer de clienttoepassing de verbinding opnieuw probeert uit te voeren of een nieuwe verbinding probeert te maken, stuurt de gateway de verbindingsaanvraag door naar de nieuwe databaseserver.
Opslag omhoog schalen Het omhoog schalen van de opslag is een onlinebewerking en onderbreekt de databaseserver niet.
Nieuwe software-implementatie (Azure) Nieuwe functies worden automatisch geïmplementeerd of opgeloste fouten als onderdeel van gepland onderhoud van de service. Raadpleeg de documentatie voor meer informatie en controleer ook uw portal.
Secundaire versie-upgrades In Azure Database for PostgreSQL worden databaseservers automatisch gepatcht naar de secundaire versie die wordt bepaald door Azure. Dit gebeurt als onderdeel van gepland onderhoud van de service. Dit zou een korte downtime in seconden veroorzaken en de databaseserver wordt automatisch opnieuw opgestart met de nieuwe secundaire versie. Raadpleeg de documentatie voor meer informatie en controleer ook uw portal.

Niet-geplande uitvaltijd beperken

Niet-geplande downtime kan optreden als gevolg van onvoorziene fouten, waaronder onderliggende hardwarestoringen, netwerkproblemen en softwarefouten. Als de databaseserver onverwacht niet beschikbaar is, wordt er binnen enkele seconden automatisch een nieuwe databaseserver ingericht. De externe opslag wordt automatisch gekoppeld aan de nieuwe databaseserver. PostgreSQL-engine voert de herstelbewerking uit met behulp van WAL- en databasebestanden en opent de databaseserver zodat clients verbinding kunnen maken. Niet-doorgevoerde transacties gaan verloren en moeten opnieuw worden geprobeerd door de toepassing. Hoewel een niet-geplande downtime niet kan worden vermeden, beperkt Azure Database for PostgreSQL de downtime door automatisch herstelbewerkingen uit te voeren op zowel databaseserver- als opslaglagen zonder menselijke tussenkomst.

Schermopname van hoge beschikbaarheid in Azure PostgreSQL.

  1. Azure PostgreSQL-servers met snelle schaalmogelijkheden.
  2. Gateway die fungeert als een proxy om clientverbindingen naar de juiste databaseserver te routeren.
  3. Azure Storage met drie kopieën voor betrouwbaarheid, beschikbaarheid en redundantie.
  4. Externe opslag maakt ook snel loskoppelen/opnieuw koppelen mogelijk na de serverfailover.

Niet-geplande downtime: Foutscenario's en serviceherstel

Hier volgen enkele foutscenario's en hoe Azure Database for PostgreSQL automatisch wordt hersteld:

Scenario Automatisch herstel
Databaseserverfout Als de databaseserver niet beschikbaar is vanwege een onderliggende hardwarefout, worden actieve verbindingen verbroken en worden alle actieve transacties afgebroken. Er wordt automatisch een nieuwe databaseserver geïmplementeerd en de externe gegevensopslag wordt gekoppeld aan de nieuwe databaseserver. Nadat het herstel van de database is voltooid, kunnen clients via de gateway verbinding maken met de nieuwe databaseserver.

De hersteltijd (RTO) is afhankelijk van verschillende factoren, waaronder de activiteit op het moment van fout, zoals een grote transactie en de hoeveelheid herstel die moet worden uitgevoerd tijdens het opstarten van de databaseserver.

Toepassingen die gebruikmaken van de PostgreSQL-databases moeten worden gebouwd op een manier waarop ze verbroken verbindingen en mislukte transacties detecteren en opnieuw proberen. Wanneer de toepassing opnieuw probeert, wordt de verbinding met de zojuist gemaakte databaseserver transparant door de gateway omgeleid.
Opslagfout Toepassingen zien geen gevolgen voor opslaggerelateerde problemen, zoals een schijffout of een beschadiging van een fysiek blok. Omdat de gegevens in drie kopieën worden opgeslagen, wordt de kopie van de gegevens geleverd door de overlevende opslag. Blokbeschadigingen worden automatisch gecorrigeerd. Als er een kopie van gegevens verloren gaat, wordt automatisch een nieuwe kopie van de gegevens gemaakt.
Rekenfout Rekenfouten zijn zeldzame gebeurtenissen. In het geval van een rekenfout wordt een nieuwe rekencontainer ingericht en wordt de opslag met gegevensbestanden eraan toegewezen. PostgreSQL-database-engine wordt vervolgens online gebracht op de nieuwe container en de gatewayservice zorgt voor transparante failover zonder dat er wijzigingen in de toepassing nodig zijn. Houd er ook rekening mee dat de rekenlaag ingebouwde tolerantie van de beschikbaarheidszone heeft en dat er een nieuwe berekening wordt gemaakt in een andere beschikbaarheidszone in het geval van een AZ-rekenfout.

Hier volgen enkele foutscenario's waarvoor gebruikersactie moet worden hersteld:

Scenario Herstelplan
Regiofout Het mislukken van een regio is een zeldzame gebeurtenis. Als u echter bescherming nodig hebt tegen een regiofout, kunt u een of meer leesreplica's configureren in andere regio's voor herstel na noodgevallen (DR). (Zie dit artikel over het maken en beheren van leesreplica's voor meer informatie). In het geval van een storing op regioniveau kunt u de leesreplica die is geconfigureerd op de andere regio handmatig promoveren als uw productiedatabaseserver.
Fout in beschikbaarheidszone Het mislukken van een beschikbaarheidszone is ook een zeldzame gebeurtenis. Als u echter bescherming nodig hebt tegen een fout in de beschikbaarheidszone, kunt u een of meer leesreplica's configureren of overwegen om onze flexibele serveraanbieding te gebruiken die zone-redundante hoge beschikbaarheid biedt.
Logische/gebruikersfouten Herstel van gebruikersfouten, zoals per ongeluk verwijderde tabellen of onjuist bijgewerkte gegevens, omvat het uitvoeren van een herstel naar een bepaald tijdstip (PITR) door de gegevens te herstellen en te herstellen tot de tijd voordat de fout is opgetreden.

Als u alleen een subset van databases of specifieke tabellen wilt herstellen in plaats van alle databases op de databaseserver, kunt u de databaseserver in een nieuw exemplaar herstellen, de tabel(s) exporteren via pg_dump en vervolgens pg_restore gebruiken om deze tabellen in uw database te herstellen.

Samenvatting

Azure Database for PostgreSQL biedt snel opnieuw opstarten van databaseservers, redundante opslag en efficiënte routering vanuit de gateway. Voor aanvullende gegevensbeveiliging kunt u back-ups configureren voor geo-replicatie en ook een of meer leesreplica's implementeren in andere regio's. Met inherente mogelijkheden voor hoge beschikbaarheid beschermt Azure Database for PostgreSQL uw databases tegen de meest voorkomende storingen en biedt een toonaangevende, financieel ondersteunde SLA van 99,99% van de uptime. Met al deze beschikbaarheids- en betrouwbaarheidsmogelijkheden kan Azure het ideale platform zijn om uw bedrijfskritieke toepassingen uit te voeren.

Volgende stappen