使用ingress和traefik访问https后端



我正在尝试使用"Kubernetes Ingress with Traefik、CertManager、LetsEncrypt和HAProxy"进行证书管理。

我想做的是在部署在kubernetes上的应用程序中使用证书。

我的应用程序包含以下服务:

my-app1节点端口10.43.204.206 16686:31149/TCP

my-app2节点端口10.43.204.08 2746:30972/TCP

因此,对于没有证书的my-app1,我以http://{IP}:31149/app1的身份访问它。有了证书,我现在以https://my-dns.com/app1的身份访问它。为此,我使用此链接。我创建了以下入口资源:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: prod-ingress
namespace: my-ns
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
kubernetes.io/ingress.class: traefik
traefik.ingress.kubernetes.io/router.tls: "true"
spec:
tls:
- hosts:
- "my-dns.com"
secretName: prod-cert
rules:
- host: "my-dns.com"
http:
paths:
- path: /app1
pathType: Prefix
backend:
service:
name: my-app1
port:
number: 16686

但对于没有证书的my-app2,我以https://{IP}:30972/app2的身份访问它。因此,我已经为my-app2使用了https,但我也想为该服务使用证书。

知道怎么做吗?

所以问题是,我使用自签名证书部署应用程序。因此,我在访问仪表板时遇到了问题。

所以现在我在应用程序中禁用了自签名证书。现在我可以了访问域名为https://my-dns.com的仪表板。

最新更新