如何将新生成的SSL证书部署到在kubernetes集群下运行的应用程序?

问题描述 投票:0回答:2

需要将新生成的SSL证书部署到在kubernetes集群下运行的应用程序。

是否可以使用kubernetes仪表板更新证书?用于将新的SSL证书更新到(https)应用程序的kubectl或kubeadm命令是什么?

kubernetes ssl-certificate kubectl kubeadm
2个回答
0
投票

这取决于您如何在应用程序中使用SSL证书。如果使用Loadbalancer公开服务,则可以在云本身中设置SSL,例如:如果使用AWS,则可以使用AWS Certificate Manager创建SSL证书,并在AWS ELB中使用它。如果您的应用程序使用入口控制器或任何其他方法,则可以将SSL证书存储在K8s机密中。

apiVersion: v1
kind: Secret
metadata:
  name: testsecret-tls
  namespace: default
data:
  tls.crt: base64 encoded cert
  tls.key: base64 encoded key
type: kubernetes.io/tls

0
投票

@ Ramkumar

如果要查找kubectl命令,则可以使用以下命令:

kubectl -n ingress create secret tls default-ssl-certificate --key key.pem --cert cert.pem

一旦我们拥有要使用的证书的机密,我们需要在入口控制器的部署中更新容器规范,以包括default-ssl-certificate机密名称。

```
  apiVersion: extensions/v1beta1
  kind: Ingress
  metadata:
    annotations:
    kubernetes.io/ingress.class: nginx
    kubernetes.io/tls-acme: "true"
    name: ingress
  spec:
    rules:
     - host: yourhost.com 
    https:
      paths:
       - backend:
          serviceName: yourservicename
          servicePort: 443
         path: /
    tls:
       - hosts:
          - yourhost.com
         secretName: default-ssl-certificate
```
© www.soinside.com 2019 - 2024. All rights reserved.