Odnawianie certyfikatów clustera PostgreSQL¶
Przygotowania¶
Odnowienie certyfikatu¶
Przed wykonaniem jakichkolwiek działań na węzłach clustera PostgreSQL przygotuj nowe certyfikaty dla każdego z węzłów clustera. Przypominamy, że certyfikaty muszą spełniać kilka ograniczeń wskazanych w wymaganiach wstępnych clustera PostgreSQL.
Jeśli chcesz przeprowadzić zmianę w trakcie pracy, bez wpływu na produkcję, musisz spełnić następujące warunki:
- Urząd certyfikacji nie został odnowiony od ostatniego wygenerowania certyfikatów węzłów PostgreSQL
- Urząd certyfikacji nie wygaśnie w okresie ważności nowych certyfikatów
- Nadal możesz generować i podpisywać certyfikaty tym samym urzędem certyfikacji, który został użyty przy generowaniu poprzednich certyfikatów węzłów PostgreSQL
- Certyfikaty węzłów PostgreSQL jeszcze nie wygasły
Jeśli te warunki są spełnione, możesz rozważyć odnowienie certyfikatów w trakcie pracy, bez przerywania produkcji.
Aby ponownie wygenerować certyfikaty za pomocą PKI openssl opisanej opcjonalnie w dokumentacji instalacji clustera PostgreSQL, musisz ponownie użyć klucza urzędu certyfikacji, a następnie powtórzyć polecenia generowania certyfikatów.
Jeśli odnowienie certyfikatów w trakcie pracy nie jest możliwe, a używasz PKI za pośrednictwem openssl, zalecamy utworzenie nowej.
Przygotowanie certyfikatów¶
Certyfikat głównego urzędu certyfikacji z rozszerzeniem .crt musisz przesłać do /tmp/ na każdym z węzłów PostgreSQL.
Do /tmp/ na każdym z węzłów PostgreSQL musisz również przesłać certyfikat i powiązany z nim klucz prywatny. Jeśli masz dostępny tylko jeden plik .p12, wykonaj następujące polecenia, aby wyodrębnić certyfikat (psql.crt) i klucz prywatny (psql.key):
1 2 | |
W poprzednich poleceniach zamień P12_CERT na nazwę swojego pliku certyfikatu .p12.
Odnowienie certyfikatu¶
Ostrzeżenie!
Jeśli możesz i chcesz zaktualizować certyfikaty w trakcie pracy, z minimalną przerwą w produkcji (1 minuta + wylogowanie użytkowników), musisz:
- Odnawiać certyfikaty kolejno na każdym węźle
- Odnawiać certyfikaty wyłącznie na węźle
REPLICA(zobacz, jak odczytać informacje o węźleLEADER) - Zawsze utrzymywać co najmniej dwa węzły PostgreSQL sprawne i pracować na trzecim
- Aby pracować na węźle
LEADER, przełączLEADERna inny węzeł; ta operacja spowoduje wylogowanie użytkowników i niedostępność platformy na około 1 minutę
Aby uprościć kolejne działania, dostosuj zmienne w poniższych poleceniach do swoich wartości (dostosowanie zmień dla każdego węzła PostgreSQL):
| Wartość | Zmienna | Definicja |
|---|---|---|
PSQL_CERT |
Nowy certyfikat węzła PostgreSQL. | |
PSQL_KEY |
Klucz powiązany z nowym certyfikatem węzła PostgreSQL. | |
PSQL_CA |
Certyfikat głównego urzędu certyfikacji, który został użyty do wygenerowania certyfikatu węzła PostgreSQL. |
Połącz się przez SSH jako root z węzłem PostgreSQL, którego certyfikaty chcesz zaktualizować, i wykonaj następujące polecenia, aby zastąpić certyfikaty:
1 2 3 4 5 6 7 8 9 10 | |
Aby zakończyć zmianę certyfikatów, musisz ponownie uruchomić węzeł PostgreSQL:
1 | |