kubernetes - Traefik 边缘路由器前面的负载均衡

标签 kubernetes openshift traefik kubernetes-ingress f5

查看 OpenShift HA 代理或 Traefik 项目:https://docs.traefik.io/ 。 我可以看到 Traefik 入口 Controller 被部署为 DaemonSet。 它允许使用虚拟主机将流量路由到正确的服务/端点。

假设我有一个包含多个节点的 Kubernetes 集群。 如何避免出现单点故障?

我的节点前面应该有一个负载均衡器(或 DNS 负载均衡)吗?

如果是,是否意味着:

  1. 负载均衡器会将流量发送到 k8s 集群的一个节点
  2. Traefik 会将请求发送到端点/pod 之一。这个 pod 可以位于不同的 k8s 节点中的什么位置?

这是否意味着会有一定程度的间接性?

我还想知道 F5 cluster mode feature 是否可以避免这种间接吗?

编辑:与 F5 Ingress resource 一起使用时

最佳答案

您可以为 traefik Pod 使用负载均衡器(来自 F5 的 BIG IP 或软件负载均衡器)。当客户端请求到来时,负载均衡器会将其发送到 traefik pod 之一。一旦请求进入 traefik pod,traefik 就会根据入口规则,通过从 kubernetes 端点 API 获取这些 pod 的 IP,将请求发送到 kubernetes 工作负载 pod 的 IP。您可以在 traefik 中为您的工作负载 pod 配置 L7 负载平衡。

使用软件反向代理(例如 nginx)并通过负载均衡器公开它会引入从负载均衡器到 nginx ingress pod 的额外网络跃点。

查看 F5 文档 BIG IP Controller 也可以用作入口 Controller ,我认为通过这种方式使用它可以避免额外的跃点。

关于kubernetes - Traefik 边缘路由器前面的负载均衡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60031377/

相关文章:

docker - Jira & Docker & Traefik 设置

docker - Kubernetes 和 docker 容器 PCI DSS 合规性

amazon-web-services - AWS EKS : Assign multiple Service Accounts to Deployment\Pod

shell - 如何单独过滤PersistentVolumeClaim yaml文件的事件?

centos - 即使在 CentOS 8 上将 CA 证书添加到信任库后也会出现证书错误

docker-compose - traefik - 将变量放入 docker 标签中

kubernetes - 如何将ClusterRole PolicyRule限制为命名空间?

security - 固定Docker套接字的选项

java - CloseableHttpClient 在 OpenShift tomcat pod 上返回 504

kubernetes 将 Traefik 2.x 的服务公开为 CRD 的入口