使用 Helm 使用 Traefik 配置 Lets Encrypt

Mit*_*ins 3 kubernetes lets-encrypt traefik kubernetes-helm

我正在使用 helm 将 taefik 部署到我的 kubernetes 集群。这是我目前所拥有的:

helm upgrade --install load-balancer --wait --set ssl.enabled=true,ssl.enforced=true,acme.enabled=true,acme.email=an@email.com stable/traefik
Run Code Online (Sandbox Code Playgroud)

我正在尝试配置letsencrypt。根据此文档- 您将域添加到 .toml 文件的底部。

查看 helm chart的代码,没有提供此类配置。

有没有其他方法可以做到这一点,或者我是否需要分叉图表来创建我自己的 .toml 文件变体?

Mit*_*ins 6

原来这是鸡和蛋的问题,描述在这里

对于 helm chart,如果acme.enabled设置为true,那么 Treafik 将自动为 Kubernetes 入口规则中配置的域生成和提供证书。这就是yaml 文件中这一onHostRule = true 的用途(参考上文)。

要在 Let's Encrypt 中使用 Traefik,我们必须在我们的 DNS 服务器中创建一个 A 记录,该记录指向我们的负载均衡器的 IP 地址。在 Traefik 启动并运行之前,我们无法做到这一点。但是,这个配置需要Traefik 启动之前存在。

唯一的解决方案(在此阶段)是在 A 记录配置传播后杀死第一个 Pod。