Giter VIP home page Giter VIP logo

grpc-istio-demo's Introduction

gRPC Istio Demo

Based on Istio 1.1.7

Deployment Diagram

How to start

  1. install minikube
  2. install pv & pvc (used by envoy.grpc_json_transcoder filter, mounting the proto_descriptor)
  3. install istio by using the istio's installer in this repo
  4. kubectl label namespace default istio-injection=enabled
  5. kubectl apply -f istio/idp.yaml
  6. kubectl apply -f istio/server.yaml
  7. kubectl apply -f istio/web-ui.yaml
  8. kubectl apply -f istio/gateway.yaml
  9. kubectl apply -f istio/envoyfilter*.yaml
  10. make create-istio-frontend-ingressgateway (used by the front-end application only which have no envoy.ext_authz applied)
  11. kubectl apply -f istio/frontend-gateway.yaml
  12. make run-auth-server
  13. make run-idp-example-app
  • Note: Since I'm using minikube, there is an IP address is hardcode 192.168.39.224 & port 31380 as well
  • Note: There is a domain xianchao.me point to my local machine with the network-interface IP address

Play & verify

  1. Set Http header Authorization Bearer IDToken before send any request
  2. Send http POST request to /demo-server/v1/sayhello & /demo-server/v1/emoji via curl or postman
  3. Send grpc-web request to /demo-server/proto.EmojiService/InsertEmojis via browser

Resources

You can learn more about this project from the following articles.

grpc-istio-demo's People

Contributors

dependabot[bot] avatar maxnilz avatar xianchaoyu avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

grpc-istio-demo's Issues

Cant read the docs

I would like to read the articles. Where can I see them? Link does not seem to work.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.