I have the following VirtualService whose hosts
mapping (backend
) is just the same as host
destination (backend
). I think it's redundant since we can access the K8S Service
directly.
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: backend
namespace: default
spec:
hosts:
- backend
http:
- route:
- destination:
host: backend
Is my understanding correct? If not, is it better practice to define VirtualService
for each Service
?
You are correct that your virtual service is redundant and not needed. It is, however, best practice to define virtual services for your services right from the start, especially if you plan to use istio traffic management features in the future. This is mentioned in the last paragraph of this section of the docs.