一个是关于暴露内部服务的方式,我的理解是 Ingress 只是反向代理,本身并不能暴露服务,最终还是要通过 NodePort 或者 LoadBalancer 的方式来暴露运行 Ingress 控制器的 pod 上的端口才行,是这样的吗?
另一个是如果想监听主机的 80 和 443 端口,有除了修改设置,把 80 以上的端口都加进 NodePort 的端口范围,以及让防火墙转发 80 和 443 到 30000 以上的端口上,这两种以外的方法吗?
1
SKYNE 2022-12-06 18:40:57 +08:00 1
你可以看看官方文档: https://kubernetes.io/zh-cn/docs/concepts/services-networking/service/
k8s 跟传统的监听端口方式有很大区别,常用的暴露服务方式是:NodePort 、Ingress |
2
coderxy 2022-12-06 19:00:32 +08:00
ingress 你可以理解为就是一个 nginx ,是你对外提供访问的入口。 云厂商一般提供 lb ,通过 lb 对外提供 4/7 层的访问,lb 的本质是 nodeport 。
|
3
Transbill 2022-12-06 23:04:41 +08:00 via Android
还可以可以用 hostport 方式,ingresscontroller 启动的时候指定端口
|
4
winglight2016 2022-12-07 10:06:45 +08:00
哪怕只有一个 pod ,也不会使用 nodeport 呀,每开一个都要为这个外部 IP 付费的,用 ingress 才是唯一选择
|