Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/neo4j/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes 当存在两个仅在名称上不同的Istio VirtualService时,如何选择应使用哪个VirtualService?_Kubernetes_Istio - Fatal编程技术网

Kubernetes 当存在两个仅在名称上不同的Istio VirtualService时,如何选择应使用哪个VirtualService?

Kubernetes 当存在两个仅在名称上不同的Istio VirtualService时,如何选择应使用哪个VirtualService?,kubernetes,istio,Kubernetes,Istio,我有VirtualService和网关对向外部公开我的服务。VirtualService规范如下所示 apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: {{ .Values.domain }}-grpc spec: hosts: - {{ .Release.Namespace }}.{{ .Values.env }}.{{ .Values.corporation }}.cloud

我有VirtualService和网关对向外部公开我的服务。VirtualService规范如下所示

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: {{ .Values.domain }}-grpc
spec:
  hosts:
  - {{ .Release.Namespace }}.{{ .Values.env }}.{{ .Values.corporation }}.cloud
  gateways:
  - {{ .Values.domain }}
  http:
  - route:
    - destination:
        host: {{ .Values.domain }}
        port:
          number: 6565
但是,当我创建另一个与上面的VirtualService相同但名称不同的VirtualService时,新的VirtualService无法工作

我尝试实现的场景是,当创建新的VirtualService时,实际的流量将流经新的VirtualService。当新的VirtualService被删除时,实际流量应该流经原始VirtualService


是否有任何选项或方法来实现此场景?

VirtualService定义了如何将流量从主机路由到您的服务的规则。从这个意义上讲,流量不会“流经”虚拟服务。所以,如果它们是相同的,那么使用哪一个应该没有任何区别。

我的想法是,您不应该在同一个主机上有两个虚拟服务。如果这样做,将在路由中创建冲突

您可以参考分析文档了解更多信息:

如果两种虚拟服务都是相同的,我真的不明白这样做的目的。Istio会将流量发送到已配置的群集,这是您创建的第一个virtualserver配置。如果相同,您如何知道它不工作?