应该要画个图说明这个事情,以自建的IDC机房的虚拟服务器为例子
1.用户—-入口公网IP—内部虚拟IP(通过keepalived实现–部署在两个服务器上)—-动态漂移—-(被激活的服务器)
2.被激活的服务器—-traefik controller—-ingress(转发rule)—实际的应用pod
虚拟IP 的构建需要的条件
需要两个 已经加入 k8s 的 node 部署 keepalived ,实现一个 指定IP 的 动态漂移
traefik controller的需要的条件
1.deploment 部署 ,必须指定部署到 前面 keepalived的 服务器 ,给这两个node打标签 ,traefik的yaml指定selector
2.hostNetwork =true ,采用宿主机的 网络 ,这样可以启用 宿主机的端口
3.k8s的比较低的版本,也需要执行 RBAC yaml,低版本的k8s 好像不支持 ingress route
ingress 创建是独立的,与traefik 无关,不分先后顺序
ingress可以随时更新,traefik会及时发现
注意地方
不同版本的kubernetes ,traefik ,组合起来 配置 都有 不同的要求,,应该说明这些问题的官网的体验差一点,就很难去找到这些差异性。。。坑子在这里。。。