【问题标题】:Let's Encrypt on Traefik with Helm让我们用 Helm 在 Traefik 上加密
【发布时间】:2019-02-21 19:22:59
【问题描述】:

我正在尝试将 Traefik 安装为我自己安装的 Kubernetes 集群的入口控制器。为方便起见,我尝试安装helm chart of Traefik,没有 acme 部分效果很好;这是我现在的变量 yml:

externalIP: xxx.xxx.xx.xxx
dashboard:
  enabled: true
  domain: traefik-ui.example.com
ssl:
  enabled: true
  enforced: true
acme:
  enabled: true
  challengeType: http-01
  email: example@gmail.com
  staging: true
  persistence.enabled: true
  logging: true

安装方式:

helm install --name traefik --namespace kube-traefik --values traefik-variables.yml stable/traefik

但是对于helm status traefik,我可以看到名为traefik-acmev1/PersistentVolumeClaim 处于待处理状态,并且从未分配过证书。

【问题讨论】:

    标签: kubernetes lets-encrypt traefik kubernetes-helm


    【解决方案1】:

    强烈建议您使用cert-manager,而不是 Traefik 中内置的 ACME 支持,至少目前是这样。它在处理您可能想要的多个 Traefik 副本方面要好得多。 Ingress-shim(这是 cert-manager 的默认部分)可以很好地处理 Traefik 支持的 Ingress。

    【讨论】:

    • 你还在 2018 年 10 月推荐还是内置的 ACME 支持成熟到可以推荐的地步了。
    • 内置的 ACME 支持本身并不成熟,问题是 K8s 上的 Traefik 没有简单的方法在多个 Traefik 实例之间共享 ACME 数据(您通常需要 HA)。 Cert-manager 没有这个问题。
    • 对于这个答案的未来读者,这是 Traefik 开发团队在他们的懈怠中提出的,他们说:“我们(Traefik 团队)建议相反。我们从不推荐使用 cert-manager”因此,由读者选择要注意的建议。
    • 再说一次,这不是意见问题。除非 1) 运行另一个 etcd 集群以用作 traefik K/V 存储或 2) 使用 ReadWriteMany PV 后端,否则您不能在运行多个副本的情况下使用 Traefik 的内置 ACME 支持。如果您可以接受仅限于单个副本,或者满足列出的两个要求之一,那么您可以使用内部支持。否则,使用 cert-manager。或者只使用 cert-manager。
    • @coderanger 可以包含一些配置代码作为示例吗?
    猜你喜欢
    • 1970-01-01
    • 2021-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-22
    • 1970-01-01
    • 2018-04-23
    • 1970-01-01
    相关资源
    最近更新 更多