我想在用于开发目的的私有VM上托管的单个节点K8s群集(污染节点--all)上设置Istio入口网关。由于我没有负载均衡器,因此istio-ingressgateway外部IP始终处于“挂起”模式(正常)。在这种配置下,我需要使用端口31380/31390而不是80/443。
绕过此行为的最佳实践是什么?我可以修补istio-ingressgateway的外部IP吗?使用其他类型(NodePort)初始化入口网关?使用本地LB或其他Ingress控制器重定向流量?
预先感谢您的反馈。 答:
答案 0 :(得分:3)
您可以将外部IP添加到您的服务定义中,例如将节点IP地址添加为externalIP。然后,一旦您点击node1_IP:443-它就会将您转发到IngressGateway。
赞:
kind: Service
apiVersion: v1
metadata:
name: my-service
spec:
selector:
app: MyApp
ports:
- name: http
protocol: TCP
port: 80
targetPort: 9376
externalIPs:
- node1_IP
- node2_IP
- node3_IP
在此处了解更多信息:https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
或者,您可以定义IngressGateway pod来使用hostNetwork。在这种情况下,它也可以使用80和443端口,但只能使用运行它的节点的IP。
答案 1 :(得分:0)
据我所知,Istio Ingressgateway无法使用hostNetwork。