Fornye sertifikatene til PostgreSQL-clusteret¶
Forberedelser¶
Fornyelse av sertifikatet¶
Før du utfører noen handlinger på nodene i PostgreSQL-clusteret, må du forberede nye sertifikater for hver av nodene i clusteret. Som en påminnelse: sertifikatene må oppfylle flere begrensninger som er angitt i forutsetningene for PostgreSQL-clusteret.
Hvis du vil gjøre endringen fortløpende uten å påvirke produksjonen, må du oppfylle følgende betingelser:
- Sertifiseringsinstansen er ikke fornyet siden sertifikatene til PostgreSQL-nodene sist ble generert
- Sertifiseringsinstansen utløper ikke i gyldighetsperioden til de nye sertifikatene
- Du kan fortsatt generere og signere sertifikater med den samme sertifiseringsinstansen som ble brukt da de forrige sertifikatene til PostgreSQL-nodene ble generert
- Sertifikatene til PostgreSQL-nodene er ennå ikke utløpt
Hvis disse betingelsene er oppfylt, kan du vurdere å fornye sertifikatene fortløpende uten å avbryte produksjonen.
For å generere sertifikatene på nytt med openssl-PKI-en som eventuelt er beskrevet i dokumentasjonen for installasjon av PostgreSQL-clusteret, må du gjenbruke nøkkelen til sertifiseringsinstansen og deretter kjøre kommandoene for å generere sertifikatene på nytt.
Hvis det ikke er mulig å fornye sertifikatene fortløpende, og du bruker en PKI via openssl, anbefaler vi at du oppretter en ny.
Forberede sertifikatene¶
Du må sende sertifikatet til rotsertifiseringsinstansen med filendelsen .crt til /tmp/ på hver av PostgreSQL-nodene.
Du må også sende sertifikatet og den tilhørende private nøkkelen til /tmp/ på hver av PostgreSQL-nodene. Hvis du bare har en .p12-fil tilgjengelig, kjører du følgende kommandoer for å hente ut sertifikatet (psql.crt) og den private nøkkelen (psql.key):
1 2 | |
Erstatt P12_CERT i kommandoene ovenfor med navnet på .p12-sertifikatfilen din.
Fornyelse av sertifikatet¶
Adadvarsel!
Hvis du kan og vil oppdatere sertifikatene fortløpende med minimal nedetid i produksjonen (1 minutt + utlogging av brukerne), må du:
- Fornye sertifikatene etter hverandre på hver node
- Bare fornye sertifikatene på en
REPLICA-node (se hvordan du henter informasjon omLEADER-noden) - Alltid ha minst to PostgreSQL-noder i drift og arbeide på den tredje
- For å arbeide på
LEADER-noden må du bytteLEADERtil en annen node; denne handlingen fører til at brukerne blir logget ut, og til at plattformen er utilgjengelig i omtrent 1 minutt
For å forenkle de følgende handlingene tilpasser du variablene i kommandoene nedenfor med verdiene dine (endre tilpasningen for hver PostgreSQL-node):
| Verdi | Variabel | Definisjon |
|---|---|---|
PSQL_CERT |
Nytt sertifikat for PostgreSQL-noden. | |
PSQL_KEY |
Nøkkel som hører til det nye sertifikatet for PostgreSQL-noden. | |
PSQL_CA |
Sertifikat fra rotsertifiseringsinstansen som ble brukt til å generere sertifikatet for PostgreSQL-noden. |
Koble til via SSH som root til PostgreSQL-noden du vil oppdatere sertifikatene på, og kjør følgende kommandoer for å erstatte sertifikatene:
1 2 3 4 5 6 7 8 9 10 | |
For å fullføre endringene av sertifikatene må du starte PostgreSQL-noden på nytt:
1 | |