How to access external service using an internal host name?


I have an external IBM MQ application and I want to access it from within the mesh being able to apply resilience features on top of it.

The way I thought to do it is:
-define a host for the external app: “external-mq”. I am doing it with a Service Entry that knows to map “external-mq” to an IP address or another external DNS.
-use the “external-mq” host name in consumer apps inside the mesh. So these apps inside the mesh don’t care and don’t know that this service is actually external. In practice I won’t have the “external” word in the host.
-create a virtual service that applies network resilience features for the “external-mq” host.
Is this scenario achievable in Istio? :smile:


I also opened an issue for this but I didnt receive yet a working solution: Service Entry not working · Issue #40190 · istio/istio · GitHub