Ingress 服务暴露
Ingress 是K8s API 的标准资源类型之一,也是一种核心资源,它其实就是一级基于域名和URL路径,把用户的请求转发至指定Service资源的规则。
可以将集群外部的请求流量,转发到集群内部,从而实现服务暴露。
说白了,Ingress就是个nginx +一段go 脚本而已。
常用的Ingress 控制器实现:
- Ingress-nginx
- HAProxy
- Traefik : 这里使用这个作为服务暴露
traefik 官网地址: https://doc.traefik.io/traefik/
traefik 在k8s中部署
以下使用 traefik V2.3版本在k8s中进行部署,Traefikv2.0之后的版本在修改了很多bug之后也增加了新的特性,比如增加了TCP的支持,并且更换了新的WEB UI界面。
具体文档参考: https://github.com/huankai/blog-example/tree/master/kubernetes/traefik-v2.3-deploy
创建资源清单
- 创建 traefik-crd.yaml
在 Traefik v2.0 版本后,开始使用CRD
(Custom