我想配置*-pim.webapi.com和pim.webapi.com的路由策略。当将yaml应用于k8s时,它会显示两个主机是重复的。但我不认为它们是重复的,因为*-pim.webapi.com不能匹配pim.webapi.com。这是istio的bug还是我的错误?
VirtualService yaml是:
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: public-ingress
namespace: netops
spec:
hosts:
- "*-pim.webapi.com"
- "pim.webapi.com"
gateways:
- public-ingress
http:
- route:
- destination:
host: pim.default.svc.cluster.local错误消息是
admission webhook "pilot.validation.istio.io" denied the request: configuration is invalid: duplicate hosts in virtual service: *-pim.webapi.com & pim.webapi.com这个错误消息的源代码在这里是https://github.com/istio/istio/blob/master/pilot/pkg/model/validation.go#L1602。但是没有任何帮助来理解和解决我的问题。
发布于 2019-02-15 12:09:09
这看起来像是Istio中的一个bug。您引用的代码调用this function来确定主机是否匹配,它显然在您的情况下做了错误的事情。
我会尝试使用一个主机*pim.webapi.com,看看是否有效。我不确定它会不会,因为我认为通配符只能用于域名最左边部分的全值,即*.webapi.com,而不是*pim.webapi.com。
https://stackoverflow.com/questions/54701977
复制相似问题