-
-
[原创]学习Kubernetes笔记——暴露站点服务(Ingress)
-
发表于:
2022-12-31 14:50
23688
-
[原创]学习Kubernetes笔记——暴露站点服务(Ingress)
这是我踩坑最多的一个地方 QAQ
Kubernetes 暴露服务的方式目前只有三种:LoadBlancer Service
、NodePort Service
、Ingress
。
可以将 Ingress 配置为服务提供外部可访问的 URL、负载均衡流量、终止 SSL/TLS,以及提供基于名称的虚拟主机等能力。 Ingress 控制器通常负责通过负载均衡器来实现 Ingress,尽管它也可以配置边缘路由器或其他前端来帮助处理流量。
Ingress 不会公开任意端口或协议。将 HTTP 和 HTTPS 以外的服务公开到 Internet 时,通常使用 Service.Type=NodePort
或 Service.Type=LoadBalancer
类型的服务。
下面是一个将所有流量都发送到同一 Service 的简单 Ingress 示例:

- 端口管理。减少不必要端口暴露,便于管理。
所有的请求,通过Ingress对应的IP:PORT
进入,过滤/转发/负载均衡到相应的service/pod
。
-
NodePort
会在每个node上暴露对应的port,不便管理。
要用Ingress,必须安装在K8S中安装Ingress控制器
Ingress 控制器有非常非常多,这里采用的Ingress+Nginx,采用其他控制器可查阅官方文档
Ingress控制器的部署方式也有很多,可查阅NGINX Ingress Controller
接下来踩坑最多的地方来了
有条件的话,推荐执行官方YAML文件
1 |
kubectl apply - f https: / / raw.githubusercontent.com / kubernetes / ingress - nginx / controller - v1. 5.1 / deploy / static / provider / cloud / deploy.yaml
|
国内需要自己去找镜像,然后替换掉官方文件中的镜像
[注意]看雪招聘,专注安全领域的专业人才平台!
最后于 2022-12-31 15:21
被阿蒙i编辑
,原因: