Microservices with Istio, gRPC, Redis, BigQuery, Spring Boot, Spring Cloud and Stackdriver
JsonProcessor
)Guided one click installation from Google Cloud Shell. Complete stack (incl. all dashboards shown below + Istio fault simulation). No client tooling required.
java -jar src/queryservice/target/queryservice-1.0.0.jar \
--spring.profiles.active=JSON \
--input.json="$PWD"/products.json --exit
coolretailer.products
from GCSBigQuery Data Viewer
, BigQuery Job User
, Stackdriver Debugger Agent
, Cloud Trace Agent
, Context Graph Asserter
, Error Reporting Admin
, Logs Writer
, Monitoring Metric Writer
and install the private key as app-gac.json as kubernetes secret app-gac.
setup/istio-manifests
PROJECT_ID
, TAG_NAME
, REDIS_HOST
in setup/kubernetes-manifests/
and apply them$mvn spring-boot:run \
-DGOOGLE_APPLICATION_CREDENTIALS=path-to-key-file \
-DPROJECT_ID=coolretailer \
-DGOOGLE_CLOUD_PROJECT=coolretailer \
-Dspring-boot.run.arguments=--spring.redis.host=localhost
(If tunneling to the redis service is required)
gcloud container clusters get-credentials coolretailer2 --zone europe-west4-a --project coolretailer \
&& kubectl port-forward $(kubectl get pod --selector="app=redis-master,role=master,tier=backend" --output jsonpath='{.items[0].metadata.name}') 6379:6379
gcloud auth configure-docker -q &&\
docker run \
--network=host \
-v /home/kbhattacharya:/etc/app-gac \
-e GOOGLE_CLOUD_PROJECT=coolretailer \
-e PROJECT_ID=coolretailer \
-e GOOGLE_APPLICATION_CREDENTIALS=/etc/app-gac/app-gac.json \
-e --spring.sleuth.sampler.probability=1.0 \
-e --spring.application.name=ux-local \
-e --spring.cloud.gcp.trace.enabled=true \
-e --spring.cloud.gcp.logging.enabled=true \
-e --spring.cloud.gcp.project-id=coolretailer \
-it gcr.io/coolretailer/queryservice
src/ui/static/ui.*
and src/ui/static/lib
in a GCS bucket and provide allUsers
READER access.This is not an official Google product