Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
…actical into dev
  • Loading branch information
kreynoldsf5 committed May 2, 2024
2 parents 17a978b + 2d7a98e commit 980816d
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 18 deletions.
15 changes: 7 additions & 8 deletions labapp/app/markdown/manipulation.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,11 @@

<div href="/" class="d-flex align-items-center pb-3 mb-3 link-dark text-decoration-none border-bottom"></div>

Since web traffic has been traversing proxies, engineers have needed to alter HTTP content for increased observability ([XFF](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For)), performance ([cache-control](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control)), or other reasons ([JWT](https://en.wikipedia.org/wiki/JSON_Web_Token)).
Since web traffic has been traversing proxies, engineers have needed to alter HTTP content for increased observability (<a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Forwarded-For">XFF</a>), performance (<a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control">Cache-Control</a>), or core functionality (<a href="https://en.wikipedia.org/wiki/JSON_Web_Token">JWT</a>).
"Proxy Pass" functionality has been part of web servers since the early Apache days.
Adding, removing, and altering Headers are tablestakes for ADCs, CDNs, and software-based load balancers.
F5 XC App Connect enables this functionality granularly on routes or broadly on the load balancer.


<div style="height:25px"></div>

### **Exercise 1: Path Rewrite**
Expand Down Expand Up @@ -55,7 +54,7 @@ document.getElementById('requestBtn1').addEventListener('click', () => {
});
</script>

Since questions on this functionality are often asked on <strong><a href="https://community.f5.com/" target="_blank">F5 DevCentral</a></strong>, a hint might be warranted.
Questions on this functionality are often asked on <strong><a href="https://community.f5.com/" target="_blank">F5 DevCentral</a></strong>. Here's a hint.

<div id="hints">
<p>
Expand Down Expand Up @@ -86,11 +85,11 @@ Use the <strong><a href="https://docs.cloud.f5.com/docs/how-to/advanced-security
<ul class="list-group">
<li class="list-group-item">
<img src="/static/lb-icon.png" width="auto" height="50px"> &nbsp; &nbsp;
Insert a request header named <strong>X-MCN-src-site</strong> to identifies the UDF CE to the origin. <u>Do not use a static value</u>.
Insert a request header named <strong>X-MCN-src-site</strong> to identify the UDF CE to the origin. <u>Do not use a static value</u>.
</li>
<li class="list-group-item">
<img src="/static/lb-icon.png" width="auto" height="50px"> &nbsp; &nbsp;
Insert a request header named <strong>X-MCN-namespace</strong> to identifies the ephemeral namespace to the origin. <u>Do not use a static value</u>.
Insert a request header named <strong>X-MCN-namespace</strong> to identify the ephemeral namespace to the origin. <u>Do not use a static value</u>.
</li>
</ul>

Expand Down Expand Up @@ -139,9 +138,9 @@ document.getElementById('requestBtn2').addEventListener('click', () => {

#### **Test Criteria**

<div style="height:25px"></div>

<strong><u>This test will evaluate response headers.</u></strong>
<div class="alert alert-secondary" role="alert">
This test evaluates response headers.
</div>

```http
GET https://eph-ns.mcn-lab.f5demos.com/aws HTTP/1.1
Expand Down
2 changes: 1 addition & 1 deletion labapp/app/markdown/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ To complete lab exercises, you will run tests against the load balancer advertis
You will build this load balancer in the <strong><a href="/lb">first exercise</a></strong>.
All tests will be run from this lab app.

Each test will specify success criteria immediately prior to the <button id="null" class="btn btn-primary disabled">Test Load Balancer</button> button.
Each test will specify success criteria immediately before to the <button id="null" class="btn btn-primary disabled">Test Load Balancer</button> button.

Here are some examples to try.

Expand Down
11 changes: 8 additions & 3 deletions labapp/app/markdown/portability.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ The configuration built so far handles load balancing, routing, and content mani
XC refers to this object as a "load balancer" -- but it's really the holistic representation of an application whose service endpoints live across the distributed network.
The object is simple -- it doesn't yet include configuration for WAAP, API protection, or a service policy.

What seperate XC from traditional ADCs is the flexibility of defining <strong>where the object is advertised</strong>.
What seperates XC from traditional ADCs is flexibility in defining <strong>where a load balancer is advertised</strong>.

<div style="height:25px"></div>

Expand Down Expand Up @@ -67,9 +67,14 @@ document.getElementById('requestBtn1').addEventListener('click', () => {

### **Exercise 2: Find a Friend**

Do you have a friend working on the lab?
Ask them their <strong>ephemeral namespace</strong> to test advertisement from the UDF site (or test with the value already populated).
Do you have a friend working on the lab? Find thier <strong>ephemeral namespace</strong> (or use the one provided).

<ul class="list-group">
<li class="list-group-item">
<img src="/static/lb-icon.png" width="auto" height="50px"> &nbsp; &nbsp;
Test if your friend's load balancer is being advertised to the UDF site.
</li>
</ul>

<div style="height:25px"></div>

Expand Down
12 changes: 6 additions & 6 deletions labapp/app/markdown/route.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

Modern applications, and some classic ones, are often comprised of disparate services spread across sites.
MCN solutions must be able to make routing decisions based on characterstics of an HTTP request.
F5 XC App Connect is a distributed L7 proxy that provide intelligent routing, visibility, and strategic points of control.
F5 XC App Connect is a distributed L7 proxy that provides intelligent routing, visibility, and strategic points of control.

<div style="height:25px"></div>

Expand All @@ -19,15 +19,15 @@ Build routing rules and configure your load balancer to route traffic between th
<ul class="list-group">
<li class="list-group-item">
<img src="/static/origin-icon.png" width="auto" height="50px"> &nbsp; &nbsp;
Reuse the origin pools from the previous exercise
Reuse the origin pools from the previous exercise.
</li>
<li class="list-group-item">
<img src="/static/route-icon.png" width="auto" height="50px"> &nbsp; &nbsp;
Route requests to "<u>https://<i>eph-ns</i>.mcn-lab.f5demos.com/<strong>aws</strong></u>" to the AWS cloud app.
Route requests to <strong>https://<i>eph-ns</i>.mcn-lab.f5demos.com/<u>aws*</u></strong> to the AWS cloud app.
</li>
<li class="list-group-item">
<img src="/static/route-icon.png" width="auto" height="50px"> &nbsp; &nbsp;
Route requests to "<u>https://<i>eph-ns</i>.mcn-lab.f5demos.com/<strong>azure</strong></u>" to the Azure cloud app.
Route requests to <strong>https://<i>eph-ns</i>.mcn-lab.f5demos.com/<u>azure*</u></strong> to the Azure cloud app.
</li>
</ul>

Expand Down Expand Up @@ -77,11 +77,11 @@ Build rules to route traffic between the two cloud apps based on an arbitrary HT
<ul class="list-group">
<li class="list-group-item">
<img src="/static/route-icon.png" width="auto" height="50px"> &nbsp; &nbsp;
Route requests with an "<strong>X-MCN-Lab: aws</strong>" header to the AWS cloud app.
Route requests with an <strong>X-MCN-Lab: aws</strong> header to the AWS cloud app.
</li>
<li class="list-group-item">
<img src="/static/route-icon.png" width="auto" height="50px"> &nbsp; &nbsp;
Route requests with an "<strong>X-MCN-Lab: azure</strong>" header to the Azure cloud app.
Route requests with an <strong>X-MCN-Lab: azure</strong> header to the Azure cloud app.
</li>
</ul>

Expand Down

0 comments on commit 980816d

Please sign in to comment.