1.6 KiB
1.6 KiB
Plan: Agregar SSL al deployment de luminarrh
Contexto
La base de datos PostgreSQL de luminarrh ahora requiere conexión SSL obligatoria. El certificado SSL ya fue proporcionado. Hay que crear un Secret de Kubernetes con el certificado, montarlo en el pod y actualizar la connection string con los parámetros SSL.
Cambios
1. Crear nuevo archivo: 00a-ssl-secret.yaml
Crear un Kubernetes Secret con el certificado SSL:
- Tipo:
Opaque - Data: el certificado base64-encoded como
ca.crt - Namespace:
luminarrh
2. Modificar: 01-luminarrh-deployment.yaml
- Agregar un volume que monte el secret como archivo:
volumes: - name: ssl-cert secret: secretName: luminarrh-ssl-cert - Agregar volumeMount al container:
volumeMounts: - name: ssl-cert mountPath: /etc/ssl/certs/luminarrh-ca.crt subPath: ca.crt - Actualizar la connection string para incluir SSL:
Host=<<INTERNAL_IP_1>>;Port=5436;Database=sarh_db;Username=sarh2;Password=<<DB_PASSWORD_1>>;SslMode=require;SslRootCert=/etc/ssl/certs/luminarrh-ca.crt
3. No modificar:
00-ns-and-sa.yaml— no cambios02-luminarrh-svc.yaml— no cambios03-ingress.yaml— no cambios04-luminarrh-hpa.yaml— no cambios00-pullsecret.yaml— no cambios
Verificación
- Aplicar los cambios:
kubectl apply -f apps/luminarrh/ - Verificar que el secret se creó:
kubectl get secret luminarrh-ssl-cert -n luminarrh - Verificar que el pod levanta:
kubectl get pods -n luminarrh - Verificar que el certificado está montado:
kubectl exec <pod> -n luminarrh -- cat /etc/ssl/certs/luminarrh-ca.crt