Based on Istio 1.1.7
- install minikube
- install pv & pvc (used by envoy.grpc_json_transcoder filter, mounting the proto_descriptor)
- install istio by using the istio's installer in this repo
- kubectl label namespace default istio-injection=enabled
- kubectl apply -f istio/idp.yaml
- kubectl apply -f istio/server.yaml
- kubectl apply -f istio/web-ui.yaml
- kubectl apply -f istio/gateway.yaml
- kubectl apply -f istio/envoyfilter*.yaml
- make create-istio-frontend-ingressgateway (used by the front-end application only which have no envoy.ext_authz applied)
- kubectl apply -f istio/frontend-gateway.yaml
- make run-auth-server
- make run-idp-example-app
- Note: Since I'm using minikube, there is an IP address is hardcode
192.168.39.224
& port31380
as well - Note: There is a domain
xianchao.me
point to my local machine with the network-interface IP address
- Set Http header
Authorization Bearer IDToken
before send any request - Send http POST request to
/demo-server/v1/sayhello
&/demo-server/v1/emoji
viacurl
orpostman
- Send grpc-web request to
/demo-server/proto.EmojiService/InsertEmojis
via browser
You can learn more about this project from the following articles.