Подновяване на сертификатите на клъстера PostgreSQL¶
Подготовка¶
Подновяване на сертификата¶
Преди да извършите каквито и да е действия на възлите на клъстера PostgreSQL, подгответе нови сертификати за всеки от възлите на клъстера. Напомняме, че сертификатите трябва да отговарят на няколко ограничения, посочени в предварителните изисквания за клъстера PostgreSQL.
Ако искате да направите промяната по време на работа, без да засягате производствената среда, трябва да бъдат изпълнени следните условия:
- Сертифициращият орган не е бил подновяван след последното генериране на сертификатите на възлите PostgreSQL
- Сертифициращият орган няма да изтече по време на срока на валидност на новите сертификати
- Все още можете да генерирате и подписвате сертификати със същия сертифициращ орган, който е бил използван при генерирането на предишните сертификати на възлите PostgreSQL
- Сертификатите на възлите PostgreSQL все още не са изтекли
Ако тези условия са изпълнени, можете да обмислите подновяване на сертификатите по време на работа, без да прекъсвате производствената среда.
За да генерирате отново сертификатите с помощта на инфраструктурата PKI с openssl, описана по избор в документацията за инсталиране на клъстера PostgreSQL, трябва да използвате повторно ключа на сертифициращия орган и след това да изпълните отново командите за генериране на сертификати.
Ако не е възможно сертификатите да бъдат подновени по време на работа и използвате инфраструктура PKI чрез openssl, препоръчваме да създадете нова.
Подготовка на сертификатите¶
Трябва да изпратите в /tmp/ на всеки от възлите на PostgreSQL сертификата на главния сертифициращ орган с разширение .crt.
Трябва също да изпратите в /tmp/ на всеки от възлите на PostgreSQL сертификата и свързания с него частен ключ. Ако разполагате само с един файл .p12, изпълнете следните команди, за да извлечете сертификата (psql.crt) и частния ключ (psql.key):
1 2 | |
В предходните команди заменете P12_CERT с името на вашия файл със сертификат .p12.
Подновяване на сертификатите¶
Предупреждение!
Ако можете и желаете да извършите актуализиране на сертификатите по време на работа с минимално прекъсване на производствената среда (1 минута + излизане на потребителите), трябва да спазвате следното:
- Подновявайте сертификатите последователно на всеки възел
- Подновявайте сертификатите само на възел
REPLICA(вижте как да извлечете информация за възелаLEADER) - Винаги поддържайте поне два работещи възела на PostgreSQL и работете по третия
- За да работите по възела
LEADER, превключетеLEADERкъм друг възел; това действие ще доведе до излизане на потребителите и до недостъпност на платформата за около 1 минута
За да опростите следващите действия, персонализирайте променливите в командите по-долу със своите стойности (променяйте персонализацията за всеки възел на PostgreSQL):
| Стойност | Променлива | Дефиниция |
|---|---|---|
PSQL_CERT |
Нов сертификат на възела на PostgreSQL. | |
PSQL_KEY |
Ключ, свързан с новия сертификат на възела на PostgreSQL. | |
PSQL_CA |
Сертификат на главния сертифициращ орган, който е използван за генериране на сертификата на възела на PostgreSQL. |
Свържете се чрез SSH като root с възела на PostgreSQL, чиито сертификати искате да актуализирате, и изпълнете следните команди, за да замените сертификатите:
1 2 3 4 5 6 7 8 9 10 | |
За да финализирате промените в сертификатите, трябва да рестартирате възела на PostgreSQL:
1 | |