首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes/Ingress /Cert Manager证书有名称空间吗?

Kubernetes/Ingress /Cert Manager证书有名称空间吗?
EN

Stack Overflow用户
提问于 2018-02-25 20:03:15
回答 1查看 1.3K关注 0票数 1

我正在尝试部署“证书管理器”(https://github.com/jetstack/cert-manager)项目,它是"kube-lego“的继任者。我发现证书与正在创建的证书不匹配,我想知道以前是否有人尝试过。

我正在创建一个带有“secretName -xxx-com”的tls命名空间,在ingress nginx日志中,我发现它试图搜索名称空间/monitoring-xxx-com,但没有找到它想要的东西。

我想知道这是不是因为ingress-nginx试图自动使用pod名称空间,而cert-manager正在创建没有名称空间的证书,因此这就是为什么证书永远找不到的原因。

代码语言:javascript
复制
error obtaining PEM from secret kube-system/monitoring-xxx-com: error 
retrieving secret kube-system/monitoring-xxx-com: secret kube-
system/monitoring-xxx-com was not found

在由“cert-manager”创建的证书中:

代码语言:javascript
复制
Issuer Ref:
  Kind:       ClusterIssuer
  Name:       letsencrypt-staging
Secret Name:  monitoring-xxx-com
EN

回答 1

Stack Overflow用户

发布于 2018-02-26 01:45:44

密钥和nginx入口控制器在不同的名称空间中,有一个选项可以设置来自另一个名称空间的证书。

https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/cli-arguments.md

代码语言:javascript
复制
--default-ssl-certificate string    Name of the secret
    that contains a SSL certificate to be used as default for a HTTPS catch-all server.
    Takes the form <namespace>/<secret name>.

要查找密钥的名称空间,请执行以下操作:

代码语言:javascript
复制
kubectl describe secrets/monitoring-xxx-com

使用部署模板中的默认-ssl-证书

代码语言:javascript
复制
spec: 
  template: 
    spec: 
      containers: 
        - args: 
            - /nginx-ingress-controller
            - "--default-backend-service=$(POD_NAMESPACE)/default-http-backend"
            - "--default-ssl-certificate=$(POD_NAMESPACE)/tls-certificate"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48973203

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档