$ kubectl get gateway -n istio-system
如果 Istio 网关已正确配置,请继续下一步。
如果 Istio 网关未正确配置,请参考文档进行配置。
打开 Istio 配置文件(gateway.yaml),并添加以下部分:
apiVersion: v1 kind: Service metadata: name: istio-ingressgateway annotations: service.beta.kubernetes.io/aws-load-balancer-type: nlb service.beta.kubernetes.io/aws-load-balancer-ssl-cert: "arn:aws:acm:us-west-2:123456789012:certificate/abc12345-6789-abcd-efgh-ijklmnopqrst" service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http spec: selector: istio: ingressgateway ports: - name: http port: 80 targetPort: 8080 - name: https port: 443 targetPort: 8443 type: LoadBalancer
其中,"service.beta.kubernetes.io/aws-load-balancer-type" 标签指定负载均衡器的类型。在此示例中,它指定了 NLB。
在 Istio 配置文件中添加完上述代码后,请重新部署 Istio 网关。
请前往 AWS 控制台,并检查负载均衡器的设置是否与您的配置相匹配。
如果设置不正确,请进行适当的更改,并重新部署 Istio 网关。
使用 curl 命令测试您的服务是否正在从 Istio 网关接收请求:
$ curl -v https://{your_istio_gateway_url} -H 'Host: {your_service_host}
下一篇:ALBD服务器问题