Renovar los certificados de clúster de PostgreSQL¶
Preparaciones¶
Renovación del certificado¶
Antes de realizar cualquier acción en los nodos de clúster de PostgreSQL, por favor prepare nuevos certificados para cada uno de los nodos de clúster. Como recordatorio, los certificados deben cumplir con varias restricciones especificadas en los requisitos previos de clúster de PostgreSQL {target="_blank"}.
Si desea realizar el cambio a la ligera sin afectar a la producción, debe cumplir las siguientes condiciones:
- La autoridad de certificación no ha sido renovada desde la última generación de certificados de nodo PostgreSQL
- La autoridad de certificación no expirará durante el período de validez de los nuevos certificados
- Todavía puede generar y firmar certificados con la misma autoridad de certificación que se utilizó cuando se generaron los certificados de nodo PostgreSQL anteriores
- Los certificados de nodo PostgreSQL aún no han expirado
Si se cumplen estas condiciones, puede considerar la posibilidad de renovar los certificados a la vez sin interrumpir la producción.
Para regenerar certificados utilizando el openssl PKI indicado, opcionalmente, en la documentación de instalación del clúster PostgreSQL {target="_blank"}, debe reutilizar la clave de autoridad de certificación y luego volver a reproducir los comandos de generación de certificados.
Si no es posible renovar los certificados al instante y utiliza un PKI a través de openssl, le recomendamos que cree uno nuevo {target="_blank"}.
Elaboración de los certificados¶
Tendrá que enviar en /tmp/ el certificado de autoridad de certificación raíz con una extensión .crt a cada uno de los nodos PostgreSQL.
También tendrá que enviar /tmp/ el certificado y su clave privada asociada a cada uno de los nodos PostgreSQL. Si sólo tiene uno .p12 archivo disponible, ejecute los siguientes comandos para extraer el certificado (psql.crt) y la clave privada (psql.key):
1 2 | |
Por favor, reemplace en los comandos P12_CERT anteriores con el nombre de su archivo de certificado .p12.
Renovación del certificado¶
Warning
Si puede y desea actualizar los certificados en tiempo real sin interrumpir la producción, deberá:
- Renovar los certificados en cada nodo de forma secuencial
- Renovar certificados sólo en un nodo
REPLICA(ver cómo recuperar información del nodoLEADER) - Siempre tienen al menos dos nodos PostgreSQL operativo y trabajar en el tercero
- Para trabajar en el
LEADERel nodo, cambiar elLEADERa otro nodo
Para simplificar las siguientes acciones, por favor personalizar las variables en los comandos a continuación con sus valores (modificar la personalización para cada nodo PostgreSQL):
| Valor | Variable | Definición |
|---|---|---|
PSQL_CERT |
Certificado nuevo para el nodo PostgreSQL. | |
PSQL_KEY |
Clave asociada con el nuevo certificado de nodo PostgreSQL. | |
PSQL_CA |
Certificado de la autoridad de certificación raíz que se utilizó para generar el certificado de nodo PostgreSQL. |
Conecte a través de SSH como root al nodo PostgreSQL cuyos certificados desea actualizar y ejecute los siguientes comandos para reemplazar los certificados:
1 2 3 4 5 6 7 8 9 10 | |
Para finalizar los cambios de certificado, debe reiniciar el nodo PostgreSQL:
1 | |