To make sure traffic management is in place you're going to manage (minimum) these 3 CRDs:
- Gateway = resource describes how to route traffic from the outside world to your mesh-enabled services, typically used to expose your services to external traffic, such as incoming HTTP requests from outside the mesh.
# list gateways from all namespaces
kubectl get gateways.networking.istio.io -A
- VirtualService = resource that defines a set of routing rules for traffic sent to a Kubernetes service.
# list virtualservices from all namespaces
kubectl get virtualservices.networking.istio.io -A
- DestinationRule = resource that defines the policies that apply to traffic after it has been routed through VirtualService
# list destinationrules from all namespaces
kubectl get destinationrules.networking.istio.io -A
When a request comes into the
gateway, Istio will use the rules defined in the
virtualservice resource to determine which service to route the traffic to. Afterwards the
destinationrule applies the policies to traffic intended for the service after routing has occurred.
There're are many other Istio resources, to list them just
kubectl api-resources | grep -i istio and if you need to inspect what Istio resource are in the cluster, you can use
kubectl get istio-io -A.