我在以下文件中定义的kubernetes中具有虚拟服务,
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: {{ .Chart.Name }}-vs
namespace: istio-system
spec:
hosts:
- {{ .Values.virtualservice.host }}
- {{ .Chart.Name }}.default.svc.cluster.local
gateways:
- {{ .Values.virtualservice.gateway }}
- mesh
http:
- route:
- destination:
host: {{ .Chart.Name }}.default.svc.cluster.local
port:
number: {{ .Values.service.port }}
corsPolicy:
allowOrigin:
- '*'
allowMethods:
- OPTIONS
- GET
- POST
- PUT
- DELETE
allowCredentials: true
allowHeaders:
- '*'
maxAge: "24h"
当我移植到它时,我的实际服务正常。这是一个仅提供HTTP服务的Java应用。
但是,当我尝试通过上述定义的虚拟服务使用HTTPS
击打它时,它失败了。静态页面加载正常。但是,如果遇到导致应用程序后端运行并访问其他服务的问题,则会失败。该应用实际上是Zuul代理,需要使用后端服务。
我不知道如何调试此问题或可能导致此问题的原因。
感谢
编辑
我注意到了一件奇怪的事。包括api-gw在内的所有服务都在8080端口上监听。它们都是Spring-boot
应用。
Fails
:
Succeeds
:
原因是什么?
感谢
我在kuVernetes中有一个虚拟服务,如以下文件apiVersion中所定义:networking.istio.io/v1alpha3种类:VirtualService元数据:名称:{{.Chart.Name}}-vs命名空间:istio-system ...
基于medium和监听器命令,我认为答案是端口冲突。