没有LB的Istio ingressgateway

问题描述 投票:1回答:1

我想在私有虚拟机上托管的单个节点K8s集群(污点节点--all)上设置一个Istio ingressgateway,用于开发目的。由于我没有负载均衡器,因此istio-ingressgateway外部IP始终处于“待定”模式(这是正常的)。在这种配置中,我需要使用例如端口31380/31390而不是80/443。

绕过这种行为的最佳做法是什么?我可以修补istio-ingressgateway的外部IP吗?使用不同类型(NodePort)初始化ingressgateway?使用本地LB或其他Ingress控制器重定向流量?

提前感谢您的反馈。一个。

kubernetes istio
1个回答
3
投票

您可以将externalIP添加到服务定义中,例如添加节点IP地址作为externalIPs。然后一旦你点击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。

© www.soinside.com 2019 - 2024. All rights reserved.