This sample runs TCP Echo Server as an Istio service. TCP Echo Server allows you to connect to it over TCP and echoes back data sent to it along with a preconfigured prefix.
To run the TCP Echo Service sample:
-
Install Istio by following the istio install instructions.
-
Start the
tcp-echo-server
service inside the Istio service mesh:$ kubectl apply -f <(istioctl kube-inject -f tcp-echo.yaml) service/tcp-echo created deployment.extensions/tcp-echo created
-
Test by running the
nc
command from abusybox
container from within the cluster.$ kubectl run -i --rm --restart=Never dummy --image=busybox -- sh -c "echo world | nc tcp-echo 9000" hello world pod "dummy" deleted
As you observe, sending world on a TCP connection to the server results in the server prepending hello and echoing back with hello world.
-
To clean up, execute the following command:
$ kubectl delete -f tcp-echo.yaml service "tcp-echo" deleted deployment.extensions "tcp-echo" deleted