Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Examples

This folder contains some examples of configurations for MSTG.

For each example, you can contact the frontend with one of the following commands once the containers are running:

curl "http://127.0.0.1:80/" # if you generated the architecture with IPv4
curl -6 "http://[::1]:80/" # if you generated the architecture with IPv6

After a request has been made, you can see the trace in Jaeger at http://localhost:16686/ if Jaeger has been included in the generated architecture.

Example 1 (1_2_entities.yaml)

2 services that are directly connected to each other.

Diagram first example

Screenshot first example

2 entities that are connected by 1 intermediary router.

Diagram second example

Screenshot second example

2 entities that are connected through 2 routers along the path.

Diagram third example

Screenshot third example

Same as example 3, but the frontend router contacts an additional service named checkout.

Diagram fourth example

Screenshot fourth example

Example 5 (5_shared_db.yaml)

Same as example 4, but the service db is contacted by both the frontend and checkout services.

Diagram fifth example

Screenshot fifth example

Same as example 2 (2_1_router_inline.yaml) except that some network parameters are fixed on the link connecting the services.

Example 7 (7_timers.yaml)

Same as example 2 (2_1_router_inline.yaml) except that some timers are configured to modify network parameters (impairments) over a period of time.

Example 8 (8_many_endpoints)

Same as example 2 (2_1_router_inline.yaml) except that frontend has 2 endpoints instead of one.

You can query the frontend over IPv4 with:

curl "http://127.0.0.1:80/" # for the first endpoint
curl "http://127.0.0.1:80/test" # for the second endpoint

Or over IPv6 with:

curl -6 "http://[::1]:80/" # for the first endpoint
curl -6 "http://[::1]:80/test" # for the second endpoint

Example 9 (9_otel_demo.yaml)

This example is a copy of the architecture of the demo of OpenTelemetry.

Example 10 (10_external.yaml)

Same as 2_1_router_inline.yaml using an external image for frontend.

Diagram tenth example

Example 11 (11_firewall.yaml)

2 services with a router and a firewall in between them.

Diagram eleventh example

Example 12 (12_switch.yaml)

2 services with a switch in between them.

Diagram twelfth example

Example 13 (13_switch_vlan.yaml)

Same as 12_switch.yaml but with VLAN.

2 switches inline.

Diagram fourteenth example

Diagram fifteenth example

Diagram sixteenth example