Orders
    ACME 颁发者使用Orders资源来管理已签名 TLS 证书的 ACME“订单”的生命周期。

    当创建引用 ACME 颁发者的证书资源时,cert-manager 将创建一个 Order 资源以获得签名证书。

    作为最终用户,您永远不需要手动创建Orders资源。Orders一旦创建,便无法更改。相反,必须创建一个新的 Order 资源。

    调试orders资源
    为了调试未颁发证书的原因,我们可以首先在遇到问题的证书资源上运行 :kubectl describe

    1. $ kubectl describe certificate example-com
    2. ...
    3. Events:
    4. Type Reason Age From Message
    5. ---- ------ ---- ---- -------
    6. Normal Generated 1m cert-manager Generated new private key
    7. Normal OrderCreated 1m cert-manager Created Order resource "example-com-1217431265"

    我们可以在这里看到证书控制器已经创建了一个 Order 资源来从 ACME 服务器请求一个新的证书。

    在调试颁发 ACME 证书的失败时,订单是有用的信息来源。通过按特定顺序运行,可以收集有关流程中失败的信息:kubectl describe order

    $ kubectl describe order example-com-1248919344
    
    ...
    Reason:
    State:         pending
    URL:           https://acme-v02.api.letsencrypt.org/acme/order/41123272/265506123
    Events:
      Type    Reason   Age   From          Message
      ----    ------   ----  ----          -------
      Normal  Created  1m    cert-manager  Created Challenge resource "example-com-1217431265-0" for domain "test1.example.com"
      Normal  Created  1m    cert-manager  Created Challenge resource "example-com-1217431265-1" for domain "test2.example.com"
    


    在这里我们可以看到cert-manager为了满足ACME订单获取签名证书的要求,创建了两个Challenge资源。

    然后您可以继续运行 以进一步调试订单的进度。kubectl describe challenge example-com-1217431265-0

    orders 成功后,您应该会看到如下所示的事件:

    $ kubectl describe order example-com-1248919344
    
    ...
    Reason:
    State:         valid
    URL:           https://acme-v02.api.letsencrypt.org/acme/order/41123272/265506123
    Events:
      Type    Reason      Age   From          Message
      ----    ------      ----  ----          -------
      Normal  Created     72s   cert-manager  Created Challenge resource "example-com-1217431265-0" for domain "test1.example.com"
      Normal  Created     72s   cert-manager  Created Challenge resource "example-com-1217431265-1" for domain "test2.example.com"
      Normal  OrderValid  4s    cert-manager  Order completed successfully
    

    如果Orders未成功完成,您可以通过运行kubectl describe challenges资源来调试订单的挑战。