如何为kubernetes集群中的前端+后端服务器启用流量路由(traefik + k8s入口控制器)

时间:2018-05-01 13:35:43

标签: kubernetes traefik

我正在寻找配方如何配置traefik和kubernetes入口控制器以使用自定义前端和后端服务器。这些不是traefik中使用的前端和后端,而是我们想要将自己部署到k8s的应用服务器。为了澄清这里的想法,客户请求应如何:

客户端将调用http://a.b.c.com/app?params=bla首先,应将其重定向到我们的前端服务器进行身份验证,然后再调度到/ app后端服务器以提供他/她的请求。

我在考虑以下配置:

将traefik的入口点设置为443

[entryPoints]
 [entryPoints.http]
 address = ":80"
   [entryPoints.http.redirect]
    entryPoint = "https"
 [entryPoints.https]
 address = ":443"
  [entryPoints.https.tls]
    [[entryPoints.https.tls.certificates]]
    CertFile = "/ssl/server.crt"
    KeyFile = "/ssl/server.key"

这会将流量重定向到端口443.在入口控制器中,我可以定义路径/到我们在k8s上运行的前端服务器和/ app指向我们的后端服务器,例如

  rules:
  - host: "a.b.c.com"
    http:
      paths:
      - path: /
        backend:
          serviceName: frontend
          servicePort: 443
      - path: /app
        backend:
          serviceName: app
          servicePort: 8888

问题在于我不知道它是否会起作用,因为我定义了路径:/和/ app在入口控制器中,后来是前者的子路径。但是我想要的是将流量重定向到端口443上运行的前端应用服务器。然后(在它将验证用户之后)将流量重定向到后端服务器服务/应用路径。

有什么建议吗?

谢谢, 瓦伦丁。

0 个答案:

没有答案