以下问题是关于预处理K3S设置的。
1] HTTP/S流量是如何到达K3S中的入口控制器的?
当我在HTTPS端口443上访问任何节点时,我会得到traefik入口控制器。这必须是";魔术;不过因为:
- 主机上没有进程在侦听443(根据lsof(
traefik
服务(LoadBalancer类型(上的实际nodePort
为30492
2]traefik配置位于入口控制器吊舱内的何处?当我进入我的traefik pod时,我在任何地方都找不到配置——/etc/traefik
甚至不存在。所有的事情都是通过API(从Ingress资源定义(完成的,而不是持久化的吗?
3] 在没有任何LoadBalancer类型的服务的情况下,是否可以进入?也就是说,我可以通过使用外部负载均衡器(如F5(来平衡节点和这些节点端口之间的流量,从而使用nodePort服务吗?
4] 最后,traefik控制器pods是如何实现的;知道";当一个节点关闭并停止向不再存在的pod发送/平衡流量时?
- 端口转发负责通过点击端口443将流量映射到traefik入口控制器,NodePort通常仅在30000-32767之间
有关端口转发的详细信息,请参阅本文档。
- 是的,入口不会公开任意端口或协议。向互联网公开HTTP和HTTPS以外的服务通常使用service类型的服务。Type=NodePort或Service。Type=LoadBalancer
有关入口的更多信息,请参阅本文档。
- Kubernetes有一个健康检查机制,可以从Kubernete服务中删除不健康的pod(cf ready probe(。由于不健康的pod没有Kubernetes端点,Traefik不会向它们转发流量。因此,Traefik健康检查不适用于kubernetesRD和kubernetes\ingress提供程序
有关健康检查的更多信息,请参阅本文档。