cert-manager 正在使用 acme 响应程序创建新的入口,而不是修改现有的入口

Chr*_*ski 9 kubernetes cert-manager

我正在尝试使用 cert-manager 通过 LetsEncrypt 颁发证书。

我已按照此处的步骤进行操作http://docs.cert-manager.io/en/latest/getting-started/index.html

但是,我现有的入口没有被修改(我认为由于添加了.well-known/....

相反,我看到为此创建的入口,名称如下:cm-acme-http-solver-kgpz6?哪个比较令人困惑?

如果我获得该入口的 yaml,我会看到以下规则:

spec:
  rules:
  - host: example.com
    http:
      paths:
      - backend:
          serviceName: cm-acme-http-solver-2dd97
          servicePort: 8089
        path: /.well-known/acme-challenge/2T2D_XK1-zIJJ9_f2ANlwR-AcNTm3-WenOExNpmUytY
Run Code Online (Sandbox Code Playgroud)

这究竟是如何运作的?由于文档看起来相当稀疏。

小智 7

你看到的记录是为了挑战。需要成功配置证书。如果您使用“example.com”作为域,那么它将不会成功。要使其正常工作,您需要为有效主机名配置 DNS 记录,以便 LetsEncrypt 可以解析域并完成检查。

通常您甚至不会看到挑战入口资源。只要 DNS 和主机名配置正确,它通常会运行质询,然后自行删除。删除后,您创建的资源将加载到您的入口控制器中。

有一些入口控制器不支持每个主机名多个入口资源。他们将加载一个入口资源并忽略另一个入口资源,因此这是该问题的一种解决方法/修复。