Skip to content

Commit a40e5c4

Browse files
authored
Add Access the application and Run the load generator steps (#18)
Fixes #17
1 parent f181897 commit a40e5c4

2 files changed

Lines changed: 96 additions & 1 deletion

File tree

README.md

Lines changed: 57 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
# Skupper Online Boutique
44

5-
[![main](https://github.com/pwright/skupper-example-grpc/actions/workflows/main.yaml/badge.svg)](https://github.com/pwright/skupper-example-grpc/actions/workflows/main.yaml)
5+
[![main](https://github.com/AryanP123/skupper-example-grpc.git/actions/workflows/main.yaml/badge.svg)](https://github.com/AryanP123/skupper-example-grpc.git/actions/workflows/main.yaml)
66

77
#### A Cloud-Native gRPC microservice-based application deployed across multiple Kubernetes clusters using Skupper
88

@@ -23,6 +23,10 @@ across cloud providers, data centers, and edge sites.
2323
* [Step 4: Wait for Sites Ready](#step-4-wait-for-sites-ready)
2424
* [Step 5: Install the Skupper command-line tool](#step-5-install-the-skupper-command-line-tool)
2525
* [Step 6: Link your sites](#step-6-link-your-sites)
26+
* [Step 7: Access the Boutique Shop application](#step-7-access-the-boutique-shop-application)
27+
* [Step 8: Run the load generator](#step-8-run-the-load-generator)
28+
* [Step 9: Observe the load generator output](#step-9-observe-the-load-generator-output)
29+
* [Step 10: Stop the load generator](#step-10-stop-the-load-generator)
2630
* [Cleaning up](#cleaning-up)
2731
* [Summary](#summary)
2832
* [Next steps](#next-steps)
@@ -289,6 +293,57 @@ to use `scp` or a similar tool to transfer the token securely. By
289293
default, tokens expire after a single use or 15 minutes after
290294
being issued.
291295

296+
## Step 7: Access the Boutique Shop application
297+
298+
The web frontend for the Online Boutique application can be accessed
299+
via the frontend-external service. In the terminal for the **gRPC A**
300+
cluster, get the shop URL and open it in a browser.
301+
302+
_**gRPC A:**_
303+
304+
~~~ shell
305+
echo "http://$(kubectl get service frontend-external -n grpc-a -o=jsonpath='{.spec.clusterIP}')/"
306+
~~~
307+
308+
Open a browser and use the URL provided above to access the Online
309+
Boutique.
310+
311+
## Step 8: Run the load generator
312+
313+
The Online Boutique application has a load generator that creates
314+
realistic usage patterns on the website.
315+
316+
In the terminal for the **gRPC A** cluster, deploy the load
317+
generator from the project root directory.
318+
319+
_**gRPC A:**_
320+
321+
~~~ shell
322+
kubectl apply -f deployment-loadgenerator.yaml -n grpc-a
323+
~~~
324+
325+
## Step 9: Observe the load generator output
326+
327+
In the terminal for the **gRPC A** cluster, observe the output
328+
from the load generator.
329+
330+
_**gRPC A:**_
331+
332+
~~~ shell
333+
kubectl logs -f deploy/loadgenerator -n grpc-a
334+
~~~
335+
336+
## Step 10: Stop the load generator
337+
338+
In the terminal for the **gRPC A** cluster, stop the load
339+
generator.
340+
341+
_**gRPC A:**_
342+
343+
~~~ shell
344+
kubectl delete -f deployment-loadgenerator.yaml -n grpc-a
345+
~~~
346+
292347
## Cleaning up
293348

294349
To remove Skupper and the other resources from this exercise, use
@@ -297,6 +352,7 @@ the following commands.
297352
_**gRPC A:**_
298353

299354
~~~ shell
355+
kubectl delete -f deployment-loadgenerator.yaml -n grpc-a --ignore-not-found
300356
kubectl delete -f resources-a
301357
~~~
302358

skewer.yaml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,9 +94,48 @@ steps:
9494
Waiting for token status ...
9595
Token "grpc-b-cad4f72d-2917-49b9-ab66-cdaca4d6cf9c" has been redeemed
9696
You can now safely delete /run/user/1000/skewer/secret.token
97+
- title: Access the Boutique Shop application
98+
preamble: |
99+
The web frontend for the Online Boutique application can be accessed
100+
via the frontend-external service. In the terminal for the **gRPC A**
101+
cluster, get the shop URL and open it in a browser.
102+
commands:
103+
grpc-a:
104+
- run: |
105+
echo "http://$(kubectl get service frontend-external -n grpc-a -o=jsonpath='{.spec.clusterIP}')/"
106+
postamble: |
107+
Open a browser and use the URL provided above to access the Online
108+
Boutique.
109+
- title: Run the load generator
110+
preamble: |
111+
The Online Boutique application has a load generator that creates
112+
realistic usage patterns on the website.
113+
114+
In the terminal for the **gRPC A** cluster, deploy the load
115+
generator from the project root directory.
116+
commands:
117+
grpc-a:
118+
- run: kubectl apply -f deployment-loadgenerator.yaml -n grpc-a
119+
- title: Observe the load generator output
120+
preamble: |
121+
In the terminal for the **gRPC A** cluster, observe the output
122+
from the load generator.
123+
commands:
124+
grpc-a:
125+
- run: kubectl logs -f deploy/loadgenerator -n grpc-a
126+
apply: readme
127+
- title: Stop the load generator
128+
preamble: |
129+
In the terminal for the **gRPC A** cluster, stop the load
130+
generator.
131+
commands:
132+
grpc-a:
133+
- run: kubectl delete -f deployment-loadgenerator.yaml -n grpc-a
134+
apply: readme
97135
- standard: skupper/cleaning_up/kubernetes_cli
98136
commands:
99137
grpc-a:
138+
- run: kubectl delete -f deployment-loadgenerator.yaml -n grpc-a --ignore-not-found
100139
- run: kubectl delete -f resources-a
101140
grpc-b:
102141
- run: kubectl delete -f resources-b

0 commit comments

Comments
 (0)