Httpbin service

This sample runs httpbin as an Istio service. Httpbin is a well known HTTP testing service that can be used for experimenting with all kinds of Istio features.

To use it:

  1. Install Istio by following the istio install instructions.

  2. Start the httpbin service inside the Istio service mesh:

    If you have automatic sidecar injection enabled:

    kubectl apply -f httpbin.yaml
    

    Otherwise manually inject the sidecars before applying:

    kubectl apply -f <(istioctl kube-inject -f httpbin.yaml)
    

Because the httpbin service is not exposed outside of the cluster you cannot curl it directly, however you can verify that it is working correctly using a curl command against httpbin:8000 from inside the cluster using the public dockerqa/curl image from Docker hub:

kubectl run -i --rm --restart=Never dummy --image=dockerqa/curl:ubuntu-trusty --command -- curl --silent httpbin:8000/html
kubectl run -i --rm --restart=Never dummy --image=dockerqa/curl:ubuntu-trusty --command -- curl --silent --head httpbin:8000/status/500
time kubectl run -i --rm --restart=Never dummy --image=dockerqa/curl:ubuntu-trusty --command -- curl --silent httpbin:8000/delay/5

You can also test the httpbin service by starting the sleep service and calling httpbin from it.

A third option is to access the service from outside of the mesh through an Ingress Gateway. The Ingress Gateways task explains how to do it.