Add how to access minikube loadbalancer (#37)

* Add how to access minikube loadbalancer

* Update README.md

* Update README.md
This commit is contained in:
Young Bu Park 2019-10-09 16:42:41 -07:00 committed by GitHub
parent d7f3721400
commit 6557a464d8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 20 additions and 6 deletions

View File

@ -47,19 +47,26 @@ subtractapp-7bbdfd5649-r4pxk 2/2 Running 0 2m
dapr-api ClusterIP 10.103.71.22 <none> 80/TCP 135m dapr-api ClusterIP 10.103.71.22 <none> 80/TCP 135m
dapr-placement ClusterIP 10.103.53.127 <none> 80/TCP 135m dapr-placement ClusterIP 10.103.53.127 <none> 80/TCP 135m
dapr-sidecar-injector ClusterIP 10.104.220.35 <none> 443/TCP 135m dapr-sidecar-injector ClusterIP 10.104.220.35 <none> 443/TCP 135m
addapp-action ClusterIP 10.0.1.170 <none> 80/TCP,50001/TCP 2m addapp-dapr ClusterIP 10.0.1.170 <none> 80/TCP,50001/TCP 2m
calculator-front-end LoadBalancer 10.0.155.131 40.80.152.125 80:32633/TCP 3m calculator-front-end LoadBalancer 10.0.155.131 40.80.152.125 80:32633/TCP 3m
calculator-front-end-action ClusterIP 10.0.230.219 <none> 80/TCP,50001/TCP 3m calculator-front-end-dapr ClusterIP 10.0.230.219 <none> 80/TCP,50001/TCP 3m
divideapp-action ClusterIP 10.0.240.3 <none> 80/TCP,50001/TCP 1m divideapp-dapr ClusterIP 10.0.240.3 <none> 80/TCP,50001/TCP 1m
kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 33d kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 33d
multiplyapp-action ClusterIP 10.0.217.211 <none> 80/TCP,50001/TCP 1m multiplyapp-dapr ClusterIP 10.0.217.211 <none> 80/TCP,50001/TCP 1m
subtractapp-action ClusterIP 10.0.146.253 <none> 80/TCP,50001/TCP 2m subtractapp-dapr ClusterIP 10.0.146.253 <none> 80/TCP,50001/TCP 2m
``` ```
Each service ending in "-action" represents your services respective sidecars, while the `calculator-front-end` service represents the external load balancer for the React calculator front-end. Each service ending in "-dapr" represents your services respective sidecars, while the `calculator-front-end` service represents the external load balancer for the React calculator front-end.
> **Note:** Minikube users cannot see the external IP. Instead, you can use `minikube service [service_name]` to access loadbalancer without external IP.
7. Take the external IP address for `calculator-front-end` and drop it in your browser and voilà! You have a working distributed calculator! 7. Take the external IP address for `calculator-front-end` and drop it in your browser and voilà! You have a working distributed calculator!
**For Minikube users**, execute the below command to open calculator on your browser
```
$ minikube service calculator-front-end
```
![Calculator Screenshot](./img/calculator-screenshot.JPG) ![Calculator Screenshot](./img/calculator-screenshot.JPG)
8. Open your browser's console window (using F12 key) to see the logs produced as we use the calculator. Note that each time we click a button, we see logs that indicate state persistence: 8. Open your browser's console window (using F12 key) to see the logs produced as we use the calculator. Note that each time we click a button, we see logs that indicate state persistence:

View File

@ -111,10 +111,17 @@ Now that we've set up the Redis store, we can deploy our assets.
2. Run `kubectl apply -f .` which will deploy our publisher and two subscriber microservices. It will also apply the redis configuration we set up in the last step. 2. Run `kubectl apply -f .` which will deploy our publisher and two subscriber microservices. It will also apply the redis configuration we set up in the last step.
3. Run `kubectl get pods` to see each pod being provisioned. 3. Run `kubectl get pods` to see each pod being provisioned.
4. Run `kubectl get svc -w` to get the external IP exposed by our `react-form` microservice. This may take a minute. 4. Run `kubectl get svc -w` to get the external IP exposed by our `react-form` microservice. This may take a minute.
> **Note:** Minikube users cannot see the external IP. Instead, you can use `minikube service [service_name]` to access loadbalancer without external IP.
### Use the Sample ### Use the Sample
1. Copy the external IP from the last step into your browser and observe the same React form that we saw locally! 1. Copy the external IP from the last step into your browser and observe the same React form that we saw locally!
**For Minikube users**, execute the below command to open calculator on your browser
```
$ minikube service react-form
```
2. Create and submit messages of different types. 2. Create and submit messages of different types.
3. To see the logs generated from your subscribers, first run `kubectl get pods` to get the pod names for each subscriber. Then run `kubectl logs <POD NAME> <CONTAINER NAME>`. For example, I can see the logs for my `node-subscriber` service by running: 3. To see the logs generated from your subscribers, first run `kubectl get pods` to get the pod names for each subscriber. Then run `kubectl logs <POD NAME> <CONTAINER NAME>`. For example, I can see the logs for my `node-subscriber` service by running: