繁体   English   中英

kubernetes中具有单个traefik入口控制器的多个客户的多个acme部分

[英]Multiple acme sections for multiple customers with single traefik ingress controller in kubernetes

情况:

我希望许多客户共享一组通用的公共IP来访问kubernetes集群。

完成集群中基于主机名的路由。 但是我想为我所有客户的域提供HTTPS。

我有一组边缘路由器节点,每个节点都有一个公共IP。 在这些节点上有一个配置为DaemonSet的Traefik入口控制器。

让我们假设可以有成千上万个具有数千个域的客户。

我的问题是,我想拥有多张acme部分。

从我的入口控制器清单中的ConfigMap中提取:

[acme]
  email = "ca@mycompany.com"
  storage = "/etc/traefik/acme.json"
  entryPoint = "https"    
  onHostRule = true
  caServer = "https://acme-v02.api.letsencrypt.org/directory"
[[acme.domains]]
  main = "mycustomer1.com"
[acme.httpChallenge]
  entryPoint = "http"

我理想的解决方案是采用一种方法将每个客户https配置拆分为单独的文件,每个文件都有自己的acme设置。

或者,甚至更好的是,可以通过入口资源来配置它:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress
namespace: garden
annotations:
    kubernetes.io/ingress.class: traefik

    #
    # LET'S ENCRYPT CONFIGURATION COULD BE HERE.
    # THAT WAY IT WOULD BE EASY TO CONFIGURE HTTPS FOR EACH CUSTOMER.
    #

spec:
rules:
    - host: mycustomer1.com
    http:
        paths:
        - path: /
            backend:
            serviceName: backend
            servicePort: 80

有什么办法可以做到这一点?

我建议尝试创建多种kind: Ingress为每个客户进行kind: Ingress管理。 您将可以为每个Ingress类使用特殊的configmap

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM