Hantera ett kluster
Starta, stoppa och starta om ett PostgreSQL-kluster, ändra dess beräkningsplan, instanser och lagring, ställ in poolning och PostgreSQL-parametrar, uppgradera huvudversionen och ta bort det.
Kräver: postgrescluster/write
Allt på den här sidan kräver postgrescluster/write på klustret — rollerna Owner, Contributor och
Databases Operator har den — utom där ett avsnitt säger något annat. Varje ändring, utom
stsh pg scale, startar en operation som klustrets flik Operations följer steg för steg; se
Operationer.
Starta, stoppa och starta om
Knapparna finns i klustrets sidhuvud:
- Stoppa och Starta om — medan klustret är Running.
- Starta — medan det är Stopped.
Stoppa stänger ner alla instanser och behåller volymerna och konfigurationen; inget kan ansluta förrän du startar det igen. Ändrar du konfigurationen för ett stoppat kluster förblir det stoppat. Starta tar tillbaka instanserna; med flera instanser kan det ta några minuter.
Starta om startar om instanserna en i taget, replikerna först och den primära sist, så ett kluster med fler än en instans fortsätter att svara; anslutningar till den primära bryts en gång. En ensam instans är kortvarigt otillgänglig. En instans som inte kan bli klar som den är — som har fastnat på en avbild den inte kan hämta eller i en kraschloop — skapas om i stället för att väntas in.
stsh pg stop orders-db
stsh pg start orders-db
stsh pg restart orders-dbByt beräkningsplan
- Välj en annan Beräkningsplan på fliken Konfiguration, avsnittet Körmiljö. Planer som boundaryn inte tillåter, eller som ingen nod kan köra, visas men kan inte väljas.
- Välj Spara. Byta beräkningsplan? visar planen du lämnar och den du byter till, och vad det kostar: med en ensam instans "Att tillämpa detta startar om databasen. Instansen blir kortvarigt otillgänglig."; med fler startas instanserna om i tur och ordning och anslutningar till den primära bryts en gång.
- Välj Byt plan.
Ett planbyte sätter varje instans CPU och minne och antalet instanser. Det rör inte datavolymen — låt den växa för sig, se Utöka lagringen — och lägger bara till en WAL-volym när klustret saknar en och den nya planen har en. Anslutningspoolning och PostgreSQL-parametrarna förblir som de är; se Härledda parametrar.
stsh pg update orders-db --set computePlan=largeSvaret på en uppdatering anger vad den kostar i restartImpact — none, restart eller
rolling — och listar i warnings de delar av ändringen som plattformen inte kunde genomföra, och
meddelandet om en uppgradering av huvudversionen.
Justera resurser individuellt
På fliken Konfiguration, avsnittet Databas, har Avancerade resursinställningar fälten CPU-begäran, CPU-gräns, Minnesbegäran och Minnesgräns för varje instans. En gräns måste vara minst lika stor som sin begäran. Portalen tar minne i hela GB; genom API:et kan det vara så lågt som 256Mi. PostgreSQL dimensionerar sitt minne efter gränsen, så håll minnesbegäran lika med gränsen: under den kan instansen avhysas just när den använder det minne den konfigurerats för, och avsnittet säger det.
Värden som inte motsvarar någon plan gör att klustret hamnar på Custom, som visas som Custom — … under Beräkningsplan. På Custom kan Instanser i Körmiljö redigeras. Väljer du en plan igen ersätts de individuella värdena med planens.
Ändra antalet instanser
Medan klustret följer en plan bestäms Instanser av planen: byt plan, eller justera resurserna
individuellt först. Med CLI:t, som kräver postgrescluster/scale i stället för
postgrescluster/write:
stsh pg scale orders-db --replicas 3
stsh pg scale orders-db # visar nuvarande antalEtt antal mellan 1 och 10 tas emot, och ett som skiljer sig från planens gör att klustret hamnar på Custom. Fler instanser avvisas när lagringsleverantören inte har plats för deras volymer. För att ta ner klustret till inga instanser stoppar du det.
Utöka lagringen
Höj Lagringsstorlek på fliken Konfiguration, avsnittet Databas, och välj Spara.
Volymerna växer på plats; databasen fortsätter att köra. Lagring kan bara ökas: portalen avvisar en
mindre storlek, och CLI:t och API:et behåller den nuvarande storleken och säger det i warnings.
Kan lagringsleverantören inte utöka volymerna behåller plattformen den nuvarande storleken, genomför resten av ändringen och säger varför. Så länge en tidigare utökning inte är klar tillämpas ingen ny storlek, och klustret tillämpar inte heller någon annan ändring förrän volymerna har vuxit — se Vad skälen betyder. Lagringsklassen kan inte ändras.
stsh pg update orders-db --set storageSize=50GiAnslutningspoolning
På fliken Konfiguration, avsnittet Databas, finns Aktivera PgBouncer,
PgBouncer-instanser och Poolningsläge under Anslutningspoolning (PgBouncer). Medan
klustret följer en beräkningsplan är reglaget skrivskyddat, och dess beskrivning lyder "Aktiverad av
beräkningsplanen <plan>" oavsett läge; på Custom kan det ändras.
Med CLI:t eller API:t kan poolningen ändras när som helst:
stsh pg update orders-db --set pgBouncerEnabled=true --set pgBouncerPoolMode=transaction --set pgBouncerInstances=2
stsh pg update orders-db --set pgBouncerEnabled=falseStänger du av poolningen tas poolern bort. Om poolern inte kan sättas upp eller tas bort genomförs resten av ändringen ändå, och en varning säger det. Hur program når poolern beskrivs i Via poolern.
Ange PostgreSQL-parametrar
Portalen redigerar inte PostgreSQL:s parametrar; det gör CLI:t och API:t, via
postgresqlParameters:
stsh pg update orders-db --set postgresqlParameters='{"work_mem":"16MB","log_min_duration_statement":"500ms"}'Dina värden läggs ovanpå dem som planen härlett, parameter för parameter; sätt en parameter till
null för att ta bort ditt värde. Plattformen avvisar ett värde som PostgreSQL skulle vägra vid
start, och en ändring av en parameter som bara får effekt vid omstart — till exempel
max_connections eller shared_buffers — startar om instanserna. Reglerna finns i
Parametrar du kan ange.
Övervakning och säkerhetskopiering
Övervakning & säkerhetskopiering på fliken Konfiguration, avsnittet Databas, innehåller Aktivera övervakning och inställningarna för säkerhetskopiering. Hur du slår på och av säkerhetskopiering beskrivs i Slå på säkerhetskopiering.
Uppgradera huvudversionen
Portalen visar PostgreSQL-version som låst. CLI:t och API:t tar emot en högre huvudversion, upp till 17:
stsh pg update orders-db --set postgresVersion=17Varning
En versionsuppgradering stoppar alla instanser, den primära inräknad, medan den pågår, och den går bara åt ett håll: klustret kan inte flyttas tillbaka till den gamla versionen. Ta en ögonblicksbild först — se Ta och återställ ögonblicksbilder.
Revisioner
Att se historiken kräver bara postgrescluster/read. Fliken Revisioner listar varje ändring av klustrets konfiguration, vem som gjorde den och — med
Visa ändringar — vad som ändrades. PostgreSQL-kluster erbjuder ingen återställning därifrån;
gör ändringen igen i stället.
Ta bort ett kluster
För att ta bort behöver du postgrescluster/delete, som ingår i postgrescluster/write: rollerna
Owner, Contributor och Databases Operator har den. Välj Ta bort på fliken Riskzon, skriv klustrets namn och
välj Ta bort permanent. Med CLI:t, som frågar först:
stsh pg delete orders-dbInstanserna, deras volymer, poolern och schemat för säkerhetskopiering försvinner med klustret, och datan likaså. Säkerhetskopior som redan finns i säkerhetskopieringslagret tas inte bort, men inget i portalen eller CLI:t kan återställa dem när klustret är borta.