默认情况下,Istio入口网关公开以下端口:
80:31380/TCP,443:31390/TCP,31400:31400/TCP
为什么会公开31400并将其映射到31400?我在文档或其他地方找不到对此的解释。
背景:我正在使用Istio 0.8.0遵循Install with Helm via helm template
指南。部署清单是根据https://github.com/istio/istio/tree/0.8.0/install/kubernetes/helm/istio构建的,给出了以下入口网关服务定义:
# Source: istio/charts/ingressgateway/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
name: istio-ingressgateway
namespace: istio-system
labels:
chart: ingressgateway-0.8.0
release: istio
heritage: Tiller
istio: ingressgateway
spec:
type: NodePort
selector:
istio: ingressgateway
ports:
-
name: http
nodePort: 31380
port: 80
-
name: https
nodePort: 31390
port: 443
-
name: tcp
nodePort: 31400
port: 31400
答案 0 :(得分:4)
的一部分由于testdata依赖性而重新添加了31400端口
这些更改增加了对Helm图表中多个入口/出口网关配置的支持。
新网关字段是一个数组,默认情况下具有一个配置(与以前一样),但允许用户添加更多配置以在安装图表时部署多个入口/出口网关。
请参见commit 05cba4e。
答案 1 :(得分:3)
这只是默认的安装选项。默认情况下,Istio将打开上面列出的一组NodePort,以便在使用Minikube之类的不支持LoadBalancer端口类型的环境时,使用这些端口访问入口网关。如果要在非Minikube环境中部署Istio,则可以省略NodePort。