Share via


Hög tillgänglighet i Azure Cosmos DB for PostgreSQL

GÄLLER FÖR: Azure Cosmos DB for PostgreSQL (drivs av Citus-databastillägget till PostgreSQL)

Hög tillgänglighet (HA) minimerar databasavbrott genom att underhålla väntelägesrepliker för varje nod i ett kluster. Om en nod går ner växlar Azure Cosmos DB for PostgreSQL inkommande anslutningar från den misslyckade noden till vänteläget. Redundansväxling sker inom ett par minuter och upphöjda noder har alltid uppdaterade data via synkron strömmande replikering i PostgreSQL.

Alla primära noder i ett kluster etableras i en tillgänglighetszon för bättre svarstid mellan noderna. Med den önskade tillgänglighetszonen kan du placera alla klusternoder i samma tillgänglighetszon där programmet distribueras. Den här närheten kan förbättra prestanda ytterligare genom att minska svarstiden för appdatabaser. Väntelägesnoderna etableras i en annan tillgänglighetszon. Azure-portalen visar tillgänglighetszonen för varje primär nod i ett kluster. Du kan också kontrollera tillgänglighetszonen för varje nod i ett kluster med någon av de programmatiska metoderna, till exempel REST-API:er.

Även utan ha aktiverat har varje nod sin egen lokalt redundanta lagring (LRS) med tre synkrona repliker som underhålls av Azure Storage-tjänsten. Om det uppstår ett enskilt replikfel identifieras det av Azure Storage-tjänsten och återskapas transparent. Information om hållbarhet för LRS-lagring finns i mått på den här sidan.

När HA är aktiverat kör Azure Cosmos DB for PostgreSQL en väntelägesnod för varje primär nod i klustret. Den primära och dess vänteläge använder synkron PostgreSQL-replikering. Med den här replikeringen kan kunderna få förutsägbar stilleståndstid om en primär nod misslyckas. I ett nötskal identifierar vår tjänst ett fel på primära noder och redundansväxlar över till väntelägesnoder utan dataförlust.

För att dra nytta av HA på koordinatornoden måste databasprogram identifiera och försöka ta bort anslutningar och misslyckade transaktioner igen. Den nyligen befordrade koordinatorn är tillgänglig med samma anslutningssträng.

Tillstånd för hög tillgänglighet

Återställningen kan delas in i tre steg: identifiering, redundans och fullständig återställning. Azure Cosmos DB for PostgreSQL kör regelbundna hälsokontroller på varje nod och efter fyra misslyckade kontroller avgör den att en nod är nere. Azure Cosmos DB för PostgreSQL höjer sedan upp ett vänteläge till primär nodstatus (redundans) och skapar en ny standby-to-be. Direktuppspelningsreplikeringen börjar, vilket gör den nya noden uppdaterad. När alla data har replikerats har noden nått fullständig återställning.

Azure Cosmos DB for PostgreSQL visar statusen för redundansväxling på sidan Översikt för kluster i Azure-portalen.

  • Felfri: HA är aktiverat och noden replikeras helt till dess vänteläge.
  • Redundansväxling pågår: Ett fel upptäcktes på den primära noden och en redundansväxling till vänteläge initierades. Det här tillståndet övergår till Att skapa vänteläge när redundansväxlingen till väntelägesnoden har slutförts och vänteläget blir den nya primära.
  • Skapar vänteläge: Det tidigare vänteläget har befordrats till primärt och ett nytt vänteläge skapas för det. När den nya sekundära är klar övergår det här tillståndet till Replikering pågår.
  • Replikering pågår: Den nya väntelägesnoden etableras och datasynkronisering pågår. När alla data har replikerats till det nya vänteläget aktiveras synkron replikering mellan de primära noderna och väntelägesnoderna och nodernas tillstånd övergår tillbaka till Felfri.
  • Nej: HA är inte aktiverat på den här noden.

Nästa steg