Hög tillgänglighet i Azure Database for PostgreSQL – enskild server

GÄLLER FÖR: Azure Database for PostgreSQL – enskild server

Viktigt!

Azure Database for PostgreSQL – enskild server är på väg att dras tillbaka. Vi rekommenderar starkt att du uppgraderar till Azure Database for PostgreSQL – flexibel server. Mer information om hur du migrerar till Azure Database for PostgreSQL – flexibel server finns i Vad händer med Azure Database for PostgreSQL – enskild server?.

Tjänsten Azure Database for PostgreSQL – enskild server ger en garanterad hög tillgänglighetsnivå med det ekonomiskt säkerhetskopierade serviceavtalet (SLA) för drifttid. Azure Database for PostgreSQL ger hög tillgänglighet under planerade händelser, till exempel användarinitierad skalningsberäkningsåtgärd, och även när oplanerade händelser som underliggande maskinvara, programvara eller nätverksfel inträffar. Azure Database for PostgreSQL kan snabbt återställas från de flesta kritiska omständigheter, vilket säkerställer praktiskt taget ingen programavbrottstid när du använder den här tjänsten.

Azure Database for PostgreSQL är lämpligt för att köra verksamhetskritiska databaser som kräver hög drifttid. Tjänsten bygger på Azure-arkitektur och har funktioner för hög tillgänglighet, redundans och återhämtning för att minska databasavbrott från planerade och oplanerade avbrott, utan att du behöver konfigurera några ytterligare komponenter.

Komponenter i Azure Database for PostgreSQL – enskild server

Komponent Beskrivning
PostgreSQL-databasserver Azure Database for PostgreSQL tillhandahåller säkerhet, isolering, resursskydd och snabb omstart för databasservrar. De här funktionerna underlättar åtgärder som skalning och återställning av databasservern efter ett avbrott på några sekunder.
Dataändringar på databasservern sker vanligtvis i samband med en databastransaktion. Alla databasändringar registreras synkront i form av loggar för framåtskrivning (WAL) på Azure Storage – som är kopplat till databasservern. Under databaskontrollpunktsprocessen töms även datasidor från databasserverminnet till lagringen.
Fjärrlagring Alla fysiska PostgreSQL-datafiler och WAL-filer lagras i Azure Storage, som är konstruerat för att lagra tre kopior av data i en region för att säkerställa dataredundans, tillgänglighet och tillförlitlighet. Lagringsskiktet är också oberoende av databasservern. Den kan kopplas från en misslyckad databasserver och kopplas tillbaka till en ny databasserver inom några sekunder. Dessutom övervakar Azure Storage kontinuerligt eventuella lagringsfel. Om en blockskada identifieras, åtgärdas den automatiskt genom instans av en ny lagringskopia.
Gateway Gatewayen fungerar som en databasproxy och dirigerar alla klientanslutningar till databasservern.

Planerad stilleståndstidsreducering

Azure Database for PostgreSQL är konstruerat för att ge hög tillgänglighet under planerade driftstopp.

Skärmbild av elastisk skalning i Azure PostgreSQL.

  1. Skala upp och ned PostgreSQL-databasservrar på några sekunder.
  2. Gateway som fungerar som en proxy för att dirigera klienten ansluter till rätt databasserver.
  3. Uppskalning av lagring kan utföras utan avbrott. Fjärrlagring möjliggör snabb frånkoppling/återkoppling efter redundansväxlingen. Här följer några scenarier för planerat underhåll:
Scenario Beskrivning
Upp-/nedskalning av beräkning När användaren utför upp- och nedskalningsåtgärden etableras en ny databasserver med hjälp av den skalbara beräkningskonfigurationen. I den gamla databasservern tillåts aktiva kontrollpunkter att slutföras, klientanslutningar töms, eventuella icke-utelämnade transaktioner avbryts och stängs sedan av. Lagringen kopplas sedan från den gamla databasservern och kopplas till den nya databasservern. När klientprogrammet försöker upprätta en ny anslutning dirigerar gatewayen anslutningsbegäran till den nya databasservern.
Skala upp lagring Att skala upp lagringen är en onlineåtgärd och avbryter inte databasservern.
Ny programvarudistribution (Azure) Nya funktioner för distribution eller felkorrigeringar sker automatiskt som en del av tjänstens planerade underhåll. Mer information finns i dokumentationen och kontrollera även portalen.
Delversionsuppgraderingar Azure Database for PostgreSQL korrigerar automatiskt databasservrar till den delversion som bestäms av Azure. Det sker som en del av tjänstens planerade underhåll. Detta skulle medföra en kort stilleståndstid i sekunder och databasservern startas automatiskt om med den nya delversionen. Mer information finns i dokumentationen och kontrollera även portalen.

Åtgärder för oplanerade driftstopp

Oplanerade driftstopp kan uppstå till följd av oförutsedda fel, inklusive underliggande maskinvarufel, nätverksproblem och programvarubuggar. Om databasservern avslutas oväntat etableras en ny databasserver automatiskt på några sekunder. Fjärrlagringen ansluts automatiskt till den nya databasservern. PostgreSQL-motorn utför återställningen med hjälp av WAL- och databasfiler och öppnar databasservern så att klienterna kan ansluta. Ogenomförda transaktioner går förlorade och de måste göras om av programmet. Det går inte att undvika en oplanerad stilleståndstid, men Azure Database for PostgreSQL minskar stilleståndstiden genom att automatiskt utföra återställningsåtgärder på både databasservern och lagringsskikten utan mänsklig inblandning.

Skärmbild av hög tillgänglighet i Azure PostgreSQL.

  1. Azure PostgreSQL-servrar med snabb skalningsfunktioner.
  2. Gateway som fungerar som en proxy för att dirigera klientanslutningar till rätt databasserver.
  3. Azure Storage med tre kopior för tillförlitlighet, tillgänglighet och redundans.
  4. Fjärrlagring möjliggör också snabb avkoppling/återanslutning efter serverredundansväxlingen.

Oplanerad stilleståndstid: Felscenarier och tjänståterställning

Här följer några felscenarier och hur Azure Database for PostgreSQL återställs automatiskt:

Scenario Automatisk återställning
Databasserverfel Om databasservern är nere på grund av ett underliggande maskinvarufel avbryts aktiva anslutningar och eventuella inflight-transaktioner avbryts. En ny databasserver distribueras automatiskt och fjärrdatalagringen kopplas till den nya databasservern. När databasåterställningen är klar kan klienterna ansluta till den nya databasservern via gatewayen.

Återställningstiden (RTO) är beroende av olika faktorer, inklusive aktiviteten vid tidpunkten för felet, till exempel stora transaktioner och hur mycket återställning som ska utföras under startprocessen för databasservern.

Program som använder PostgreSQL-databaserna måste byggas på ett sätt som identifierar och försöker igen avbrutna anslutningar och misslyckade transaktioner. När programmet försöker igen omdirigerar gatewayen transparent anslutningen till den nyligen skapade databasservern.
Lagringsfel Program ser ingen inverkan på lagringsrelaterade problem, till exempel ett diskfel eller en fysisk blockskada. Eftersom data lagras i tre kopior hanteras kopian av data av den kvarvarande lagringen. Blockfel korrigeras automatiskt. Om en kopia av data går förlorad skapas automatiskt en ny kopia av data.
Beräkningsfel Beräkningsfel är sällsynta händelser. I händelse av beräkningsfel etableras en ny beräkningscontainer och lagringen med datafiler mappas till den, postgreSQL-databasmotorn tas sedan online på den nya containern och gatewaytjänsten säkerställer transparent redundans utan programändringar. Observera också att beräkningslagret har inbyggd återhämtning i tillgänglighetszonen och att en ny beräkning spunnits upp i en annan tillgänglighetszon i händelse av AZ-beräkningsfel.

Här följer några felscenarier som kräver att användaråtgärden återställs:

Scenario Återhämtningsplan
Regionfel Fel i en region är en sällsynt händelse. Men om du behöver skydd mot ett regionfel kan du konfigurera en eller flera läsrepliker i andra regioner för haveriberedskap (DR). (Mer information finns i den här artikeln om hur du skapar och hanterar läsrepliker). I händelse av ett fel på regionnivå kan du manuellt höja upp den läsreplik som konfigurerats i den andra regionen så att den blir din produktionsdatabasserver.
Fel i tillgänglighetszon Fel i en tillgänglighetszon är också en sällsynt händelse. Men om du behöver skydd mot ett fel i tillgänglighetszonen kan du konfigurera en eller flera läsrepliker eller överväga att använda vårt erbjudande för flexibel server som ger zonredundant hög tillgänglighet.
Logiska/användarfel Återställning från användarfel, till exempel oavsiktligt borttagna tabeller eller felaktigt uppdaterade data, innebär att du utför en återställning till tidpunkt (PITR) genom att återställa och återställa data fram till den tid som precis innan felet inträffade.

Om du bara vill återställa en delmängd av databaser eller specifika tabeller i stället för alla databaser på databasservern kan du återställa databasservern i en ny instans, exportera tabellerna via pg_dump och sedan använda pg_restore för att återställa tabellerna till databasen.

Sammanfattning

Azure Database for PostgreSQL ger snabb omstart av databasservrar, redundant lagring och effektiv routning från gatewayen. För ytterligare dataskydd kan du konfigurera att säkerhetskopior ska geo-replikeras och även distribuera en eller flera läsrepliker i andra regioner. Med funktioner med hög tillgänglighet skyddar Azure Database for PostgreSQL dina databaser från de vanligaste avbrotten och erbjuder ett branschledande, ekonomibaserat serviceavtal på 99,99 % drifttid. Med alla dessa tillgänglighets- och tillförlitlighetsfunktioner kan Azure vara den perfekta plattformen för att köra verksamhetskritiska program.

Nästa steg