如何创建我可以在 kubernetes 中使用的 tls 证书?
How to create tls certs which I can use in kubernetes?
我遇到了一个问题,我需要为 k8s 集群中的 Keycloak 提供证书才能使用 nginx ingress。添加它们的最简单方法是什么?
我是这样开始的:
kubectl create secret tls tls-keycloak-ingress --cert=localtest.me.crt --key=localtest.me.pem
然后通过秘密将它们包含在图表 yaml 中:
ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/use-regex: "true"
path: /auth/?(.*)
hosts:
- keycloak.localtest.me
tls:
- hosts:
- keycloak.localtest.me
secretName: tls-keycloak-ingress
但是我应该在主机上创建它们吗?或者以某种方式使用 kubectl?
通常通过在集群中添加 cert-manager 来解决。然后它使用提供的 LE 帐户跟踪所有入口对象 tls
部分和问题:
https://cert-manager.io/docs/tutorials/acme/ingress/
它不仅会颁发证书并将其存储到适当的秘密中,还会自动更新。
注意:如果您使用的是 helm3,请跳过 tiller 步骤。
我遇到了一个问题,我需要为 k8s 集群中的 Keycloak 提供证书才能使用 nginx ingress。添加它们的最简单方法是什么? 我是这样开始的:
kubectl create secret tls tls-keycloak-ingress --cert=localtest.me.crt --key=localtest.me.pem
然后通过秘密将它们包含在图表 yaml 中:
ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/use-regex: "true"
path: /auth/?(.*)
hosts:
- keycloak.localtest.me
tls:
- hosts:
- keycloak.localtest.me
secretName: tls-keycloak-ingress
但是我应该在主机上创建它们吗?或者以某种方式使用 kubectl?
通常通过在集群中添加 cert-manager 来解决。然后它使用提供的 LE 帐户跟踪所有入口对象 tls
部分和问题:
https://cert-manager.io/docs/tutorials/acme/ingress/
它不仅会颁发证书并将其存储到适当的秘密中,还会自动更新。
注意:如果您使用的是 helm3,请跳过 tiller 步骤。